Re: Blender game engine fracture

Posté par Redstar le 8/8/2019 10:01:17
Ok

Commençons d'abord par un truc simple. Tu vas créer un blend vierge.

Étape 1 - préparation du terrain:

Tu vas créer un plan, une boule (dans autre calque) et tu vas déformer le cube en rectangle pour faire un mur. Tu vas ensuite créer un empty en face du mur.

Dans la fenêtre "propriété", sous-onglet "physic", change le "static" de la boule et du mur en "rigid body", modifie le "radius" de la boule afin qu'il corresponde à sa taille et pour le mur, indique la "mass" à 100, le radius à 0.1 et active le "collision bound" en mode "box".

- La mass permet donc de mettre du poids à tes objets.
- Le radius est ta zone de collision, qui sera toujours une sphère.
- Le collision bound permet de transformer ce radius en une autre forme qui peut respecter ou non celle de l'objet. Assures-toi par contre que l'origine d'un objet ayant un "box" ou une forme prédéfinie soie toujours au centre de l'objet (sélectionner objet -> object -> transform -> origin to geometry).

Tu vas ensuite copier ton mur, et faire un loop-cut (ctrl + R) et augmenter la découpe via la molette de la souris, de sorte à avoir des cubes (pas trop quand même, je te dirai pourquoi après).

Ensuite, sélectionne l'un des coins supérieurs qui forme un cube et fait un separate -> selection (P). Reconstruis ce cube avec fill (F) en sélectionnant les 4 vertices afin d'avoir ses 6 faces plaine.

Utilise le modifier array plusieurs fois afin d'avoir la même forme que ton mur, mais séparé en petit cube, puis place cet ensemble dans un autre calque (le mur fragmenté uniquement). Applique les modifiers, pass en mode édit, fais un separate -> by loose part.

Cela te permet d'avoir des petits cube rapidement et facilement. Sélectionne tout tes nouveaux cubes et fais object -> make Links -> object data.

- Faire cela te permet de partager le mesh de tes petits cubes. Dans Blender, un objet est quelque chose qui existe, le mesh c'est la forme de ce quelque chose, son enveloppe physique.

Par exemple, un empty est un objet "virtuel", sans forme, tandis que le cube est un objet "réel", avec une forme.

Refais la même manipulation des array en partant du petit cube en plus petit cubes mais fragmentés.

Enfin, tu vas créer un groupe d'instance des deux murs fragmentés: sélectionnes ton premier mur fragmenté (tout ses cubes) puis object -> group -> create new group. Fais pareil pour les plus petits cubes.

Enfin, sur un autre calque, crée deux objets instancié de ce que tu viens de faire. Tu vas constater un empty mais constitué d'une enveloppe non modifiable.

En effet, un objet instancié te permet ainsi de concevoir un ensemble d'objet qui va représenter quelque chose de plus grand ou pour simplement te faciliter la vie quand tu dois faire une modification, qui se répercutera à toutes ses "copies".

Par exemple, tu va probablement concevoir des parties modulables dont une fenêtre, un encadrement de porte, un escalier, etc, et bien tout ça, tu peux grouper et ainsi avoir un building facilement.

Par contre, ne fais pas de groupe d'instance d'objet déjà instancié, car c'est comme si tu copiais un empty, copier du vide... reste du vide.

Fais-moi déjà tout ça puis préviens moi quand tu aura fini.

Cette contribution était de : http://blenderclan.tuxfamily.org/html/newbb/viewtopic.php?forum=1&topic_id=49201&post_id=578412