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

Forum WTeam

Le site des moddeurs 100% francophone.
 
AccueilPortailGalerieRechercherDernières imagesS'enregistrerConnexion
Le deal à ne pas rater :
Display One Piece Card Game Japon OP-08 – Two Legends : où la ...
Voir le deal

 

 [3DSMAX - Intermédiaire] Les COLLISIONS.

Aller en bas 
3 participants
AuteurMessage
Mohawk
Maître ArchipelModeur
Maître ArchipelModeur
Mohawk


Masculin Nombre de messages : 1895
Age : 59
Date d'inscription : 27/10/2006

[3DSMAX - Intermédiaire] Les COLLISIONS. Empty
MessageSujet: [3DSMAX - Intermédiaire] Les COLLISIONS.   [3DSMAX - Intermédiaire] Les COLLISIONS. Icon_minitimeSam 17 Fév 2007, 10:47

Générer les Collisions sous 3DS Max.
_______________________________________________________________________


Nous allons voir dans ce tutorial, la façon de générer les collisions grâce à 3DSMax et surtout au Plug-In de Niftools. Les collisions vous permettent de définir les interactions entre votre modèle et les autres objets au sein du jeu, grâce au Havok.

Il est important de bien comprendre que les collisions sont vitales, un modèle sans collision n’est qu’un objet fantomatique qui n’aura aucune influence sur rien dans le jeu. Une forteresse magnifique sans collision ne représente qu’une image, une illusion qui ne sera prise en compte par aucun acteur du jeu.

La réalité physique de votre objet dépend essentiellement des collisions. C’est également les collisions qui détermineront sa nature physique, sa résistance, et même les sons qui y seront associés.

Par contre vos collisions doivent être optimisées au maximum, elles consomment énormément de ressources processeurs et peuvent donc très rapidement faire chuter votre FPS. Vous devez donc optimiser la forme de votre modèle au mieux, moins vous aurez de verticales et plus votre modèle sera fluide. Il vous faudra donc en permanence chercher le meilleur compromis entre l’efficacité et la pertinence.

Nota : cette méthode n’est pas appropriée aux collisions pour les armes et encore moins aux créatures, en réalité elle ne concerne réellement que les objets statiques ou non.

De quoi allons nous avoir besoin ?

Commencez par télécharger le Plug-In de NifTools et déplacer le dans votre répertoire :

  • 3DSMax\plugin\
  • Un modèle achevé, qui sera présent dans le jeu.
  • Un modèle simplifié, qui deviendra vos collisions.
  • Nifskope , vous ne pensiez quand même pas vous en passer Clin d'oeil


Configurer le Plug-In.

Ouvrez ensuite 3DSMax, puis cliquez sur « Utilities » puis sur « Configure Button Sets ».

[3DSMAX - Intermédiaire] Les COLLISIONS. Plugin001zt9

Sélectionnez ensuite « Nifprops » et déplacez le sur le bouton « Asset Browser »

[3DSMAX - Intermédiaire] Les COLLISIONS. Plugin002ii2

Voilà vous avez maintenant un accès direct au Plug-In.

[3DSMAX - Intermédiaire] Les COLLISIONS. Plugin003ia7

Le Modèle Simplifié.

Il est souvent tentant pour générer ce dernier de faire une copie de votre modèle original et d’utiliser la fonction « Optimize » pour réduire le nombre de verticales. Ceci peut être une solution si votre modèle de base est simple et que vous ne dépassez pas le millier de verticales. Par contre dès l’instant où vous avec constitué un modèle complexe, cette méthode est à bannir, votre FPS va chuter à vitesse grand V.

Il ne vous reste plus dans ce cas qu’à constituer un nouveau modèle qui épousera simplement les formes générales de votre modèle. Pensez bien au fait que le modèle simplifié n’apparaîtra pas dans le jeu, mais que c’est lui qui déterminera la « forme physique » de votre modèle. Ainsi, il convient d’être précis dans toutes les zones qui seront soumises à une interaction avec des acteurs. Ainsi par exemple les escaliers, les murs, les sols, etc…

Votre modèle simplifié peut parfaitement se superposer au modèle de base, c’est d’ailleurs préférable. Mais comme il doit également être optimisé, ne vous préoccuper de le faire avec précision que là où un acteur peut entrer en contact avec lui. Ainsi inutile de détailler le milieu d’une haute tour qui demeurera inaccessible, un simple cylindre ou mieux un simple cube suffit.

Si vous avez créer un modèle vraiment très grand, vous pouvez parfaitement séparer vos collisions en plusieurs « groupes », ceci sera nettement plus efficace. Notez que cette séparation n’est utile que si votre modèle dépasse des limites d’une cellule (soit environ 57 mètres). Vous devrez en ce cas procéder à plusieurs exportations de collision (une par groupe en fait). Vous regrouperez tout ceci à l’aide de NifSkope en les plaçant au sein d’un NiListShape (je détaillerai ce point plus tard)

Cette étape est vraiment IMPORTANTE, prenez le temps qu’il faut pour que votre modèle soit le plus optimisé possible. Inutile de créer un superbe modèle, avec des collisions catastrophiques votre modèle sera inutilisable Ingame.


Dernière édition par le Sam 17 Fév 2007, 12:10, édité 1 fois
Revenir en haut Aller en bas
Mohawk
Maître ArchipelModeur
Maître ArchipelModeur
Mohawk


Masculin Nombre de messages : 1895
Age : 59
Date d'inscription : 27/10/2006

[3DSMAX - Intermédiaire] Les COLLISIONS. Empty
MessageSujet: Re: [3DSMAX - Intermédiaire] Les COLLISIONS.   [3DSMAX - Intermédiaire] Les COLLISIONS. Icon_minitimeSam 17 Fév 2007, 11:46

Création du Modèle de Collisions.

Maintenant que vous avez achevé votre modèle simplifié, assurez vous que les origines de vos deux modèles (le simplifié et le « normal ») soient identiques.

1- Commencez par sélectionner votre modèle simplifié, puis cliquez sur votre bouton « Nifprops »

2- Cochez ensuite la case « Is Collision Mesh » afin d’indiquer que ce modèle doit bien être transformer en « collision » lors de l’exportation. Vous ne noterez aucun changement notable au sein de 3DS puisque cette modification ne sera prise en compte qu’au sein du Nif.
[3DSMAX - Intermédiaire] Les COLLISIONS. Collision001sd1

3- Sélectionnez ensuite la nature de votre objet au sein du menu déroulant intitulé « Material ». C’est de ce choix que dépendra la nature de l’objet, sa résistance, les sons qui seront joués, etc… Si votre modèle possède plusieurs matériaux, vous ne pouvez ici n’en choisir qu’un, sélectionner donc le plus important, le plus notable.

[3DSMAX - Intermédiaire] Les COLLISIONS. Collision002ax1

Voici ci-dessous la liste des divers matériaux disponible :
    0: Stone - -> Pierre
    1: Cloth - -> Tissu
    2: Dirt - -> Saleté
    3: Glass - -> Verre
    4: Grass - -> Herbe
    5: Metal - -> Métal
    6: Organic - -> Organique
    7: Skin - -> Peau
    8: Water - -> Eau
    9: Wood - -> Bois
    10: Heavy Stone - -> Grosse Pierre
    11: Heavy Metal - -> Gros Métal
    12: Heavy Wood - -> Gros Bois
    13: Chain - - > Chaînes
    14: Snow - -> Neige
    15: Stone Stairs - -> Escaliers en Pierre
    16: Cloth Stairs - -> Escaliers en Tissu
    17: Dirt Stairs - -> Escaliers de Saleté
    18: Glass Stairs - -> Escaliers de Verre
    19: Grass Stairs - -> Escaliers d'Herbe
    20: Metal Stairs - -> Escaliers Métallique
    21: Organic Stairs - -> Escaliers Organique
    22: Skin Stairs - -> Escalier en Peau
    23: Water Stairs - -> Escaliers d'Eau
    24: Wood Stairs - -> Escaliers en Bois
    25: Heavy Stone Stairs - -> Grand Escaliers en Pierre
    26: Heavy Metal Stairs - -> Grand Escaliers Métallique
    27: Heavy Wood Stairs - -> Grand Escaliers en Bois
    28: Chain Stairs - -> Escaliers en Chaînes
    29: Snow Stairs - -> Escaliers en Neige
    30: Elevator - -> Ascenseur


4- Il vous reste encore à sélectionner le “layer” (la couche) de vos collisions. Il s’agit en fait ici, de la manière dont l’objet sera utilisé par le Havok. Il détermine la couleur des boîtes de collision dans le Construction Set.


    0 : OL_UNIDENTIFIED .................... Unidentified (white)
    1 : OL_STATIC ............................. Static (red)
    2 : OL_ANIM_STATIC ..................... AnimStatic (magenta)
    3 : OL_TRANSPARENT .................... Transparent (light pink)
    4 : OL_CLUTTER ........................... Clutter (light blue)
    5 : OL_WEAPON ............................ Weapon (orange)
    6 : OL_PROJECTILE ....................... Projectile (light orange)
    7 : OL_SPELL ................................ Spell (cyan)
    8 : OL_BIPED ................................ Biped (green) Seems to apply to all creatures/NPCs
    9 : OL_TREES ............................... Trees (light brown)
    10 : OL_PROPS ............................ Props (magenta)
    11 : OL_WATER ............................ Water (cyan)
    12 : OL_TRIGGER ......................... Trigger (light grey)
    13 : OL_TERRAIN .......................... Terrain (light yellow)
    14 : OL_TRAP ............................... Trap (light grey)
    15 : OL_NONCOLLIDABLE ............... NonCollidable (white)
    16 : OL_CLOUD_TRAP .................... CloudTrap (greenish grey)
    17 : OL_GROUND ........................... Ground (none)
    18 : OL_PORTAL ............................ Portal (green)
    19 : OL_STAIRS ............................. Stairs (white)
    20 : OL_CHAR_CONTROLLER ........... CharController (yellow)
    21 : OL_AVOID_BOX ...................... AvoidBox (dark yellow)
    22 : OL_UNKNOWN1 ....................... ? (white)
    23 : OL_UNKNOWN2 ....................... ? (white)
    24 : OL_CAMERA_PICK ................... CameraPick (white)
    25 : OL_ITEM_PICK ........................ ItemPick (white)
    26 : OL_LINE_OF_SIGHT .................. LineOfSight (white)
    27 : OL_PATH_PICK ........................ PathPick (white)
    28 : OL_CUSTOM_PICK_1 ................ CustomPick1 (white)
    29 : OL_CUSTOM_PICK_2 ................ CustomPick2 (white)
    30 : OL_SPELL_EXPLOSION .............. SpellExplosion (white)
    31 : OL_DROPPING_PICK ................ DroppingPick (white)
    32 : OL_OTHER .............................. Other (white)
    33 : OL_HEAD ................................ Head
    34 : OL_BODY ............................... Body
    35 : OL_SPINE1 ............................. Spine1
    36 : OL_SPINE2 ............................. Spine2
    37 : OL_L_UPPER_ARM .................... LUpperArm
    38 : OL_L_FOREARM ....................... LForeArm
    39 : OL_L_HAND ............................ LHand
    40 : OL_L_THIGH .......................... LThigh
    41 : OL_L_CALF ............................ LCalf
    42 : OL_L_FOOT ........................... LFoot
    43 : OL_R_UPPER_ARM .................. RUpperArm
    44 : OL_R_FOREARM ..................... RForeArm
    45 : OL_R_HAND ........................... RHand
    46 : OL_R_THIGH ......................... RThigh
    47 : OL_R_CALF ........................... RCalf
    48 : OL_R_FOOT .......................... RFoot
    49 : OL_TAIL ............................... Tail
    50 : OL_SIDE_WEAPON .................. SideWeapon
    51 : OL_SHEILD ............................ Shield
    52 : OL_QUIVER ........................... Quiver
    53 : OL_BACK_WEAPON ................. BackWeapon
    54 : OL_BACK_WEAPON2 ............... BackWeapon (?)
    55 : OL_PONYTAIL ....................... PonyTail
    56 : OL_WING ............................. Wing
    57 : OL_NULL .............................. Null



[3DSMAX - Intermédiaire] Les COLLISIONS. Collision003hz0

Les Paramètres Avancés.
.
Généralement vous n’aurez pas besoin de modifier les paramètres qui suivent, il est néanmoins intéressant de connaître leur signification et leur utilité pour des situations particulières.

[3DSMAX - Intermédiaire] Les COLLISIONS. Collision004xk4

    Center : Le centre de gravité, en coordonnée X, Y, Z. Logiquement vous n’avez aucune raison de modifier ces paramètres car vous décalerez vos collisions par rapport à votre objet dans le jeu. Je ne vois aucune situation où ceci peut être utile, mais au moins vous savez à quoi ça sert.

    Mass : La masse. Se comporte globalement comme on s'y attend, excepté le fait qu'elle n'affecte pas la vitesse de chute des corps. Ceci étant contrôlé par l'attribut Linear / Angular Damping.

    Friction & Restitution : Ces propriétés affectent la vitesse de la… perte de vitesse des objets lorsqu'ils entrent en contact ou glissent contre un autre objet (l).

    Linear / Angular Damping : Une force appliquée dans le sens opposé à la direction du mouvement de l'objet. La puissance de cette force est spécifiée par un nombre entier de maximum 100. En modifiant cette valeur sur le squelette des personnages, il a été possible de changer la vitesse à laquelle le corps chute.

    Penetration Depth : Indique tout simplement la profondeur en unité à laquelle un projectile lancé contre l’objet pénètrera. Avec une valeur de 0, le projectile ricoche simplement.

    Motion System & Quality Type : Ce qu'il y a de plus important à connaître à propos de ces propriétés, ce sont ces deux combinaisons : MS - 7; QT - 1 : donnera un objet statique (ex : architecture) ; MS-3; QT- 4 : donnera un objet déplaçable (ex : armes, vêtements, etc).


Motion System
0: Keyframed
1: Box
2: Sphere
3: Sphere
4: Box .............. pour un objet déplaçable
5: Box
6: Keyframed
7: Keyframed ..... pour les statiques et les objets animés.
8: Box
9+: Keyframed?

Motion Quality
0 MO_QUAL_MOVING Moving
1 MO_QUAL_FIXED Fixed ................... pour un objet statique.
2 MO_QUAL_KEYFRAMED Keyframed
3 MO_QUAL_MOVING2 Moving(?)
4 MO_QUAL_MOVING3 Moving(?) ........ pour un objet déplaçable.
5 MO_QUAL_CRITICAL Critical
6 MO_QUAL_BULLET Bullet
7 MO_QUAL_USER User
8 MO_QUAL_NULL Null



Avant de modifier ces paramêtres, il est préférable d'ouvrir plusieurs objets similaires avec NifSkope et d'étudier les paramètres indiqués, ceci vous évitera d'avoir des objets ayant des réactions aberrantes au sein du jeu.


Dernière édition par le Jeu 08 Mar 2007, 18:29, édité 5 fois
Revenir en haut Aller en bas
Mohawk
Maître ArchipelModeur
Maître ArchipelModeur
Mohawk


Masculin Nombre de messages : 1895
Age : 59
Date d'inscription : 27/10/2006

[3DSMAX - Intermédiaire] Les COLLISIONS. Empty
MessageSujet: Re: [3DSMAX - Intermédiaire] Les COLLISIONS.   [3DSMAX - Intermédiaire] Les COLLISIONS. Icon_minitimeSam 17 Fév 2007, 12:09

Exporter le Nif.

Voilà nous en avons presque fini, avec ce tutorial tout bête, il ne nous reste plus qu’à transformer nos modèles en un joli fichier nif, qui sera utilisable dans le jeu.

1- Commencez par sélectionner « Export Files » et choisissez l’option NetImmerse/Gamebryo.

[3DSMAX - Intermédiaire] Les COLLISIONS. Collision005vo4

2- Dans la boite de dialogue qui s’affiche vérifiez bien que vous avez coché, la case « Collision » car sinon elles ne seront pas importées, ce qui serait quand même regrettable vue que c’est le but de cette opération.

[3DSMAX - Intermédiaire] Les COLLISIONS. Collision006rj9

3- Pensez également à vérifier que vous avez coché la case « Generate Strips » afin que les faces de vos collisions soient transformées en triangle, ce point est également indispensable, car bien que vos collisions soient créées et qu’elles apparaissent sous NifSkope, elles seront inutilisées par le jeu.

[3DSMAX - Intermédiaire] Les COLLISIONS. Collision007lc6

Il ne vous reste plus qu’à admirer votre œuvre avec NifSkope, avant de la tester Ingame.

[3DSMAX - Intermédiaire] Les COLLISIONS. Collision008vf9.th [3DSMAX - Intermédiaire] Les COLLISIONS. Collision009hj9.th

La couleur de vos collisions dépendent du choix du « layer » que vous avez faîtes. Néanmoins si dans NifSkope vous voyez autant de traits rouge que ce que j'ai dans mon exemple, je peux vous assurez que ça va ramer Clin d'oeil Suivez toujours l'adage "faîtes ce que je dis, pas ce que je fais" Content
Revenir en haut Aller en bas
Mohawk
Maître ArchipelModeur
Maître ArchipelModeur
Mohawk


Masculin Nombre de messages : 1895
Age : 59
Date d'inscription : 27/10/2006

[3DSMAX - Intermédiaire] Les COLLISIONS. Empty
MessageSujet: Re: [3DSMAX - Intermédiaire] Les COLLISIONS.   [3DSMAX - Intermédiaire] Les COLLISIONS. Icon_minitimeLun 19 Fév 2007, 19:02

ADDITION POUR les UTILISATEURS de 3DSMax9.
_____________________________________________________________________


Il semble y avoir un bug avec la version du Plug-In de Niftools qui empêche ce dernier de fonctionner normalement. Le symptome est facile à identifier, aucun nom de jeu n'apparaisse lorsque vous tenter d'exporter un fichier au format nif.

Voici comment corriger ce problème :

Il vous suffit de copier le fichier intitulé :

MaxNifTools.Ini

dans le répertoire :

C:\Documents and Settings\[Me]\Local Settings\Application Data\Autodesk\3dsmax\9 - 32bit\enu\plugcfg

ha oui [me] est bien entendu remplacé par votre nom, enfin celui que vous avez donné à votre session... avant d'avoir des questions à la noix...

Il est possible bien évidemment que votre répertoire ne soit pas tout à fait conçu comme celui-ci, mais vous devriez trouver quelque chose d'approchant.

Ne disposant pas de 3DSMax 9 je n'ai pas testé cette résolution, mais à priori elle fonctionne.
Revenir en haut Aller en bas
Mohawk
Maître ArchipelModeur
Maître ArchipelModeur
Mohawk


Masculin Nombre de messages : 1895
Age : 59
Date d'inscription : 27/10/2006

[3DSMAX - Intermédiaire] Les COLLISIONS. Empty
MessageSujet: Re: [3DSMAX - Intermédiaire] Les COLLISIONS.   [3DSMAX - Intermédiaire] Les COLLISIONS. Icon_minitimeVen 16 Mar 2007, 23:28

Comment Exporter des Collisions Multiples avec 3DSMax.
_______________________________________________________________________

Ce qu’il vous faut :
  • 3DSMax 8
  • Plug-In Niftoools 0.2.9 &+



1- Réalisez votre modèle avec toutes ses composantes comme d’habitude, puis réalisez un modèle simplifié de collision (MSC) pour chacun des matériaux utilisés dans votre modèle.

2- Combinez (par l'intermédiaire de la fonction Attach) tous vos MSC pour lesquels vous souhaitez utiliser les mêmes propriétés de Havok; ceci n'est probablement pas nécessaire, mais simplifie les choses.

3- Assurez-vous que vous ayez établis les propriétés de Havok pour tous vos MSC avec l'outil de NifProps. Chacun d’entre eux doit avoir ses propres paramètres havok (aucun doublon).

- A la fin de cette étape, vous avez UN ensemble de modèles conventionnels et UN ensemble de modèles simplifiés de collision pour CHACUN des Matériaux utilisés.

4- Utiliser la fonction « Grouper » pour composer UN groupe avec tous les modèles n’étant pas des collisions.

5- Utiliser la fonction « Grouper » pour composer UN groupe pour CHACUN des modèles de collisions. Chacun d’entre eux doit être constitué d’un seul modèle.

6- Exportez alors le modèle, en vous assurant que l’option « Remove Extra Bones » ne soit pas cochée.

[3DSMAX - Intermédiaire] Les COLLISIONS. Collisionmulti01zc7

Notes :
- Ceci a uniquement été testé avec des « statics ».
- le bloc « bhkListShape » doit encore être inséré manuellement au sein de NifSkope afin que chaque MSC résolve le problème de pénétration des flèches.
Revenir en haut Aller en bas
arm15
Compagnon ArchipelModeur
Compagnon ArchipelModeur
arm15


Masculin Nombre de messages : 972
Age : 65
Date d'inscription : 24/11/2006

[3DSMAX - Intermédiaire] Les COLLISIONS. Empty
MessageSujet: Re: [3DSMAX - Intermédiaire] Les COLLISIONS.   [3DSMAX - Intermédiaire] Les COLLISIONS. Icon_minitimeLun 19 Mar 2007, 18:54

Ca me parait trés intéréssant ! Je n'ai que la version 7 de 3ds mais je pense que çela doit fonctionner aussi .

Tu dis aussi qu 'il faut la version 0.2.9 de NifSsope mais tu utilises dans ton exemple la version 0.2.8 , donc je suppose que l' on peux utiliser les deux ....

Je vais tester tout ça et vous en tenir informer ....
Revenir en haut Aller en bas
Meseira
Compagnon ArchipelModeur
Compagnon ArchipelModeur
Meseira


Masculin Nombre de messages : 509
Age : 42
Date d'inscription : 01/04/2007

[3DSMAX - Intermédiaire] Les COLLISIONS. Empty
MessageSujet: Re: [3DSMAX - Intermédiaire] Les COLLISIONS.   [3DSMAX - Intermédiaire] Les COLLISIONS. Icon_minitimeMer 30 Mai 2007, 23:04

Pour faire des lianes sur les rochers tropicaux, je voulais faire une collision multiple... mais je n'y arrive pas Triste En suivant le tuto de Mohawk, il n'y a toujours qu'un seul membre du groupe qui a la collision voulu.

J'ai essayé avec 2 meshes tout bêtes (un cube et un cylindre), j'ai fait deux groupes (un pour les objets, l'autre pour les collisions). Pour le groupe des objets de collisions, les deux MSC sont en static, l'un en Wood, l'autre en Stone. Seul le cube en pierre a une boîte de collision... pourquoi?

PS: j'utilise le plugin 0.2.8 pour 3ds.
Revenir en haut Aller en bas
http://perso.orange.fr/meseira/
Contenu sponsorisé





[3DSMAX - Intermédiaire] Les COLLISIONS. Empty
MessageSujet: Re: [3DSMAX - Intermédiaire] Les COLLISIONS.   [3DSMAX - Intermédiaire] Les COLLISIONS. Icon_minitime

Revenir en haut Aller en bas
 
[3DSMAX - Intermédiaire] Les COLLISIONS.
Revenir en haut 
Page 1 sur 1
 Sujets similaires
-
» [Intermédiaire] Les Textures Transparentes.
» [Blender] Les Collisions (ancien)
» [Blender] Les collisions avec Nifscript 2.5.1
» [Collisions] Plantes.
» [3dsmax] Faire une épée

Permission de ce forum:Vous ne pouvez pas répondre aux sujets dans ce forum
Forum WTeam :: Public :: Tutos TESCS2 Oblivion :: La 3D.-
Sauter vers: