Imladris production
Vous souhaitez réagir à ce message ? Créez un compte en quelques clics ou connectez-vous pour continuer.

Imladris production

Le forum français de création de cartes et de mods pour Bataille pour la Terre du Milieu
 
AccueilRechercherDernières imagesS'enregistrerConnexion
-34%
Le deal à ne pas rater :
-34% LG OLED55B3 – TV OLED 4K 55″ 2023 – 100Hz HDR 10+, ...
919 € 1399 €
Voir le deal

 

 RayFire ou comment détruire des structures...

Aller en bas 
AuteurMessage
Leithian...
Moddeur expert
Moddeur expert
Leithian...


Nombre de messages : 750
Age : 31
Location : @ Home ! =D
Add-On : Quelle question, bien sûr que non !
Date d'inscription : 03/03/2010

RayFire ou comment détruire des structures... Empty
MessageSujet: RayFire ou comment détruire des structures...   RayFire ou comment détruire des structures... Icon_minitimeJeu 2 Aoû - 16:18

Tutoriel RayFire - Adapté à BFME


Salut à tous !

ça faisait un moment que je ne vous avais pas pondu un truc marrant sur la 3D ( et pourtant j'ai pas mal de trucs à partager avec vous, mes ptits moddeurs adorés ^^)

Bref, avez-vous déjà réfléchi à comment EA avait fait pour démolir si bien les structures de BFME II ? Et surtout, un si grand nombre en si peu de temps ? Bon ok, si ils n'avaient fait que dégommer des objets à la main, peut-être que ça aurait pu le faire, mais BFME II ne se résume pas à ça et vous le savez très bien, il y a du code ini, des textures presque toutes faites à la main sous photoshop et 3dsmax, des fx, de l'interface et surtout de l'animation en pagaille...donc non, ils ne les ont pas démolis à la main. Mais avec RayFire ou un équivalent ( pas sûr qu'il existait à l'époque ) tout devient possible en terme de démolition =P Et vous verrez, la prise en main s'avère d'une simplicité bluffante ^^

Dans ce tutoriel, vous allez apprendre simplement à détruire un objet sur place. Pas de démolition par rapport à un béllier ou un projectile, car en effet, s'il fallait prévoir ne serais-ce que 8 démolitions/objet, soit une tous les 45°, vous auriez bien trop de models à intégrer et le jeu risquerait de ramer sévère, et je ne vous parle pas de l'ini...on ne fera donc qu'une seule démolition d'un model que je vous donnerai, vous pourrez en faire ce que bon vous semble. Je n'irai pas non plus vous expliquer ce qu'est le compositing, ça reste inutile pour ce que je vais vous montrer ( mais c'est un truc super chouette mine de rien ^^ ). Ne pas savoir ce que c'est ne vous empêchera pas de dégommer des objets, ni même de les mettre dans le jeu, disons que le compositing est plus réservé au montage vidéo ^^ Bon, si vous avez bien compris le but de ce tuto...passons à la suite sans plus attendre !


Ce qu'il va vous falloir pour bien suivre le tuto :

- 3DS Max 2010 64bits ou 32bits les fonctionnent, je vous laisse vous débrouiller pour le trouver et l'installer, le forum n'est pas prévu pour vous expliquer ça Smile
- RayFire & nVidia PhysX ( les deux sont des plugins pour 3DS Max 2010 ) : http://www.mediafire.com/?3gbmpybq9wt3m0g
- Un Pilier et ses textures : http://www.mediafire.com/?ebt5zatk4whvw5t

NB : Si vous rencontrez des problèmes pour exécuter RayFire, vérifiez bien que vous lancez 3dsMax en tant qu'administrateur à chaque fois. Vous pouvez modifier cette option pour qu'elle soit valable à chaque lancement, pour ce faire, faites clic droit sur le raccourci de l'application, puis propriétés..., et dans l'onglet "Compatibilité, cochez "Executer en tant qu'administrateur".

Voici ce que donne une destruction de mur, avec une animation de caméra, un soleil et une lumière, un sol, et je vous ai même mis les différentes passes de compositing pour arriver au résultat final ( qu'on ne peut pas vraiment obtenir dans BFME II, enfin pas en passant par du compositing )

Spoiler:
Spoiler:

Pour info : La diffuse est un rendu tout simple mais reste un rendu de la scène telle quelle est, l'occlusion ( ambiante ) a trait à toutes les ombres que génèrent les objets entre eux ( par exemple quand vous poser un stylo sur un table de chevet avec une lampe à côté, le stylo a une ombre portée due à la lampe, mais également due à son volume ), et enfin la ZDepth sert à la fois à gérer la mise au point ( flou ou non ) et la profondeur de champ ( couleurs vraies ou teintées par l'ambience générale de la scène ), la ZDepth vous permet de voir sur une échelle allant de 0 à 255 en niveaux de gris quels sont les objets proches et loins de vous ( les plus proches sont très clairs, les plus éloignés sont très sombres ). Bref, fin de la parenthèse sur le compositing et retour au tuto =D

I/ Mise en place des deux plugins


1) Installez tout d'abord le plugin nVidia PhysX pour 3dsMax en 32 bits ou en 64 bits ( selon votre version de 3dsMax installée )
2) Copiezle contenu du dossier "RayFire 1.5" dans votre répertoire où est installé 3dsMax ( par défaut : C:\Program Files\Autodesk\3ds Max 20XX )
3) Démarrez 3dsMax, cliquez sur "Standard Primitives" à droite, au dessus de Box, cylindre et autres... et sélectionnez "RayFire Tool", cliquez ensuite sur "Rayfire" puis "Open RayFire Tool Floater".
4) Comme SerailID mettez "8108256002048" pour vous authentifier.
5) Le Plugin est débloqué, vous pouvez désormais dégommer tout ce que vous voulez ^^

II/ Ouverture de 3DS Max 2010 et importation du model 3D
1) Décompressez l'archive avec Winrar
2) Dans 3dsMax, cliquez sur "Open>Open ( Opens an existing 3ds Max file )" comme indiqué ci-dessous :

Spoiler:

III/ Ouverture de Rayfire

Pour ouvrir l'interface, suivez les indications ci-dessous :

Spoiler:

Spoiler:

IV/ Ajout du model 3D dans RayFire

Sélectionnez le pilier, puis dans l'interface de RayFire, sélectionnez l'onglet "Objects", allez dans la fenêtre des "Impact Objects", puis cliquez sur "Add", ça ajoutera le pilier aux objets "destructibles". Vous devez normalement voir son nom s'afficher dans la fenêtre des "Impact Objects". Si ce n'est pas le cas, recommencez l'opération.

V/ Réglages pour afficher une nouvelle texture sur les nouvelles faces, plus exactement sur les fragments de l'objet à détruire

Créez un Multi-material
En ID 1 : mettez la texture de l'objet ( ici "Pillier_Diffuse.jpg" )
En ID 2 : mettez une nouvelle texture au choix ( ici "roches028.jpg" ), puis dans les paramètres de la "Bitmap", choisissez un "Mapping : Planar from Object XYZ", ce qui aura pour incident de placer la texture sur les faces correspondantes en fonction des normales de ces faces.

Pour rappel : Une normale est une droite passant au centre de chaque face ou d'un groupe de faces de façon perpendiculaire aux axes X et Y, cependant, si les faces forment un plan incliné ou un volume, la normale prendra en compte l'axe Z. En gros c'est ça l'idée. Sous 3dsMax, Gmax et RenX, vous avez la possibilité de mettre votre pivot en "Local", son axe Z ( le Bleu ) suivra alors la normale de l'objet sélectionné, ou agira sur toutes les normales des objets sélectionnés. Le Mode "Local" est très utile dans de nombreux cas, mais est à manipuler avec précautions car il est souvent la source de bugs de déplacement de pivots.

! CES REGLAGES SONT A FAIRE AVANT DE DETRUIRE L'OBJET !

Allez dans les paramètres de l'objet, à droite.
Mettez-vous en mode "polygon", faites CTRL+A, puis dans la section "Polygon : Material IDs", tapez 1 en face de "Set ID:" puis appuyez sur "Entrée"
Enfin, dans le material editor, cliquez-déplacez la boulasse avec votre multi-material sur l'objet ( ici c'est le pilier ).

Ce qui se passe, concrètement :

En ayant mis ce multi-material sur votre objet, vous venez d'assigner à toutes les fces portant l'ID 1 la texture du pilier, car dans l'étape précédente, on a en quelque sorte verrouillé toutes les faces du pilier sur l'ID 1. On va maintenant voir comment forcer les nouvelles faces à récupérer la texture assignée à l'ID 2 ( ces faces appartiendront aux fragments ). Si on ne le fait pas, par défaut RayFire va aller assigner la seule texture qu'il a sous la main, c'est à dire la texture du pilier, et comme il y a des zones noires sur cette texture, ça sera tout simplement laid ( ce qu'on ne veut surtout pas ^^ ).

NB : on va assigner une seule texture aux faces des fragments. Cette texture doit impérativement "reboucler", ou se répéter si vous préférez. Second point délicat : si vous fragmentez un gros objet, mieux vaut avoir une belle texture avec une assez grosse définition ; à l'inverse un petit objet n'aura besoin que d'une toute petite texture. Tout ça, ça s'appelle de l'optimisation. Vous ne pouvez pas faire tourner 10000 unités dans BFME avec des textures haute-résolution et une fluidité parfaite, y a un moment où le moteur du jeu ne peut plus suivre, et à ce moment là ça rame.

Assigner l'ID de material 2 aux faces des fragments, comment faire ?

-Allez tout simplement dans l'interface de RayFire, puis dans "Fragmentation>Advanced Fragmentation Options", mettez la valeur "2" en face de "Material ID", c'est tout Wink

VI/ Paramètres de destruction, où cliquer

Pour pouvoir détruire correctement notre objet, il va nous falloir un support, un sol si vous préférez, on peut mettre tout ce qu'on veut ( une box, une sphere, un model 3D super détaillé...etc ) mais nous, nous allons faire comme si on animait une destruction pour BFME, don en théorie tous les objets se détruisent sur un sol "plat", après le jeu adapte ou non mais ça ne nous intéresse pas. Il nous faut donc un sol. Et ça tombe bien, 3ds Max dispose d'une grille au sol, on va donc la définir comme un "vrai sol" physique sur lequel le pilier va pouvoir s'écraser.
Pour ce faire, allez toujours dans l'onglet "Objects", et dans la fenêtre "Unyielding Objects", cochez "Home grid as ground".

Maintenant que le sol est défini, on va pouvoir passer aux paramètres de fragmentation de notre pilier.
-Allez dans l'onglet "Fragmentation"
-Puis dans la fenêtre "Fragmentation Options", vous avez tout ce qu'il vous faut pour détruire votre objet, à savoir :
-1-Fragmentation Type=la façon dont les fragment vont de dessiner sur l'objet ( incidence sur l'animation de destruction également )
-2-Iterations=nombre de fragments ( premier champ ) et nombre de fragments par fragment ( second champ ), ce sont deux facteurs, donc si vous mettez par exemple "2" et "5", le logiciel va comprendre "2 fois 5" ( = 10 donc )
-3-Chaos=dispersion des dessins des fragments
-4-Detalization=beaucoup ou peu de détail, à noter que détail signifie nombre de polygons...
-5-Noise Strength=ajoute un peu de "bruit" dans vs fragments, ils ne seront plus lisses si vous en mettez beaucoup

Je vous laisse bidouiller pour trouver comment détruire deux fragments entre eux suite à une collision Wink Mais sachez que ça devient vite très lourd pour BFME ^^ Vous voyez mon mur ? C'est juste une box à la base, mais il y a tellement d'impacts entre les fragments que je suis passé de 6 polys à 180 000...et BFME a du mal au-delà de 10 000 ^^"

VII/ Destruction du model 3D

-Allez maintenant dans l'onglet "Physics", puis dans la fenêtre "Physical Options", vous avez :

-1-Physical Engine=Moteur de physique ( qui gère la gravité, les forces et autres... ), par défaut c'est "Reactor", nous on va se mettre en "PhysX"
-2-Start Frame=départ de la destruction
-3-Time range=durée de la destruction, dépend du nombre d'objets qui entrent en action. En effet, simuler la chute d'un cube qui ne se casse pas c'est plus court qu'un cube qui se brise en mille morceaux Wink
-4-Collision Tolerance=les objets ont-ils le droit de se rentrer dedans ou non ? on va dire que non, mettez 0
-5-Substeps=étapes de collision, plus vous en mettez, plus l'animation sera détaillée, avec des rebonds sympas et tout et tout ^^
-6-Gravity=la gravité, ou plutôt un facteur de la gravité que vous pouvez régler via le panneau nVidia PhysiX directement dans 3dsMax ( mais si mais si, vous savez, le truc que vous avez fermé dès l'ouverture de 3dsMax parce-que vous vous êtes dit que ça ne servait à rien ^^ )
-7-Time Scale=permet de faire des ralentis ou des accélérés, laissez-le à 1
-8-Move TimeSlider during simulation=ça anime tout seul, cochez cette option si ce n'est pas déjà fait
-9-Simulate by dragging timeslider=vous oblige à bouger vous même le timeslider en bas pour voir l'animation
-10-Start simulation from timeslider=là où se trouve le timeslider l'animation sera visible ( en mode yoda ^^ ). Non sans déconner, en gros si vous placez votre timeslider au milieu, ça vous évitera de voir tout le début Smile

Pour VOIR l'animation, cliquez sur le bouton lecture
Pour CREER des clés d'animation et la garder, cliquez sur le bouton lecture avec une boule

Les deux autres vous les connaissez.

! IMPORTANT ! si jamais vous souhaitez forcer la fin d'une simulation/fragmentation/rendu, appuyez sur "ECHAP", ça vous évitera éventuellement de tout relancer.


Smile BONUS : comment faire s'écrouler une étagère avec tout plein de livres dessus Smile
- Le fichier max où tout est paramétré : http://www.mediafire.com/?ggr9z58rs521d36 ( le mesh est de moi, si vous le faites passer, pensez à me créditer Wink )
- Les paramètres de destruction ; en fait, on ne détruit pas vraiment l'étagère et les bouquins, mais on les fais juste tomber à terre, tout simplement, voyez comment ça s'entre-choque bien :

Spoiler:

Vous l'avez compris, on a donc à notre disposition un outil juste énorme qui nous permet soit de détruite un objet, soit de gérer la chute pure et simple d'un ou plusieurs objets, et dans les deux cas on peut gérer les collisions ( eh oui, la physique sert à quelque chose finalement lol )

Smile BONUS 2 : Comment assigner un raccourci clavier pour ouvrir RayFire dans 3dsMax ? Smile

1) Allez dans "Customize>Customize User Interface..."
2) Cliquez sur "All Commands>RayFire Tool"
3) Sélectionnez "Launch RayFire"
4) Enface de "Hotkey:" à droite, tapez "MAJ+R" ou "Shift+R" ( c'est la même chose )
5) Cliquez sur "Assign"
6) Enfin, cliquez sur "Save.." et enregisrtez cette "User Interface" ( UI ) sous l nom que vous voulez. La prochaine fois que vous ferez "Shift+R", ça ouvrira RayFire Wink Le fait d'enregistrer ce raccourci vous évite d'avoir à le refaire à chaque fois que vous démarrerez une nouvelle fenêtre 3sdMax.

Et pour finir, voici quelques exemples de destruction du pilier ( y a du compositing dedans c'est pas comme ça dans 3dsMax ^^ ) :

Spoiler:

Spoiler:

******************************************************************************************************************

Si vous avez des questions supplémentaires à poser à propos de ce tutoriel, veuillez les poser dans la section "Discussion" qui se trouve >ICI<

******************************************************************************************************************

Revenir en haut Aller en bas
https://vexod14.artstation.com
 
RayFire ou comment détruire des structures...
Revenir en haut 
Page 1 sur 1
 Sujets similaires
-
» l'IA. Comment elle marche? Comment la modifier? Comment rajouter une nouvelle faction?
» [Help BFM2 (no add)] gamedata.ini + data/ini/...factions/structures
» comment changé costume d'aragorn et comment depassé 15 unité pour une horde
» Mod resucitation des dragon ou faction dragon (dragon et goblins =unite et leur structures )
» Comment faire un mod

Permission de ce forum:Vous ne pouvez pas répondre aux sujets dans ce forum
Imladris production :: Graphisme, 3D, Gmax, 3DS Max :: Tutoriaux-
Sauter vers: