Blender : collections et scènes
Cas d'utilisation : je travaille depuis plusieurs années à la réalisation d'un village pour une histoire médievalo-fantastique qui ne verra sans doute jamais le jour. Quelques remarques dans la manière d'organiser les objets et d'utiliser les collections et les scènes.
Distributions des objets dans les collections
Le village est constitué de tout un tas d'objets : maisons, rues, lampadaires, muraille, arbres, qu'il faut organiser sous forme de collections pour ne pas s'y perdre. Il est aussi prévue que le village connaisse « deux époques », moderne et médiéval : quand on veut créer une scène qui prend place à notre époque, on lie la collection « village moderne » ; si la scène se passe au Moyen-Age, on lie la collection « village médieval ».
On peut dés lors distribuer les objets en fonction de leur appartenance à la version moderne ou médiévale du village. Un objet pouvant appartenir à plusieurs collections, les « deux villages » peuvent partager certains objets (la maison « m1 » par exemple).
- village moderne
- maisons modernes
- m1
- m2
- lampadaires
- rues goudronnées
- maisons modernes
- village médiéval
- maisons médiévales
- m1
- rues pavées
- étables
- maisons médiévales
Instances de collection
Que faire cependant si une structure complexe constituée de plusieurs objets doit être présente aux deux époques ? Prenons l'exemple d'un lieu de culte constitué de trois parties, stèle, piliers et torches rangés dans une collection dédiée :
- temple
- stèle
- pilliers
- torches
Une collection ne peut avoir plusieurs parents ; comment faire apparaître le temple dans les deux villages ? On peut passer par des instances de collections :
- temple
- stèle
- pilliers
- torches
- village moderne
- maisons modernes
- m1
- m2
- lampadaires
- rues goudronnées
- temple.001 instance
- maisons modernes
- village médieval
- maisons médieviales
- m1
- rues pavées
- étables
- temple.002 instance
- maisons médieviales
Ça commence un petit peu à se compliquer : il faut par exemple s'assurer que les deux instances du temple sont toujours au même endroit (en faire bouger une ne fera pas bouger l'autre).
Retour au partage d'objets entre collections
Là où ça devient encore plus compliqué c'est quand une structure représentée par une collection peut varier ; ici par exemple le temple va connaitre trois états : stèle + piliers + torches au début, uniquement la stèle au Moyen-Age puis stèle + piliers à l'époque actuelle. Impossible d'utiliser des instances pour ca et on en revient au collections multiples pour certains objets :
- temple
- stèle
- pilliers
- torches
- village moderne
- maisons modernes
- m1
- m2
- lampadaires
- rues goudronnées
- temple moderne
- stèle
- pilliers
- maisons modernes
- village médieval
- maisons médieviales
- m1
- rues pavées
- temple médiéval
- stèle
- maisons médieviales
Utilisation des scènes et des liens
Alors que le village devenait de plus en plus complexes, que d'innombrables objets se retrouvait dans toujours plus de collections différentes, le système que j'avais mis en place atteignait ses limites. Le problème vient du fait qu'on utilise les collections pour deux choses différentes :
- Organiser des objets.
- Définir des états ou des « vues ».
Elles peuvent faire les deux dans la plupart des cas mais dans le cas qui m'occupe ici les scènes.
- SCÈNE OBJETS
- temple
- stèle
- pilliers
- torches
- maisons communes
- m1
- temple
- SCÈNE MODERNE
- village moderne
- lampadaires
- rues goudronnées
- maisons modernes
- m1 linked
- m2
- temple moderne
- stèle linked
- pilliers linked
- village moderne
- SCÈNE MÉDIÉVALE
- village médiéval
- maisons médieviales
- m1 linked
- rues pavées
- temple médiéval
- stèle linked
- maisons médieviales
- village médiéval
Plusiseurs avantages de cette organisation par rapport à la précédente :
- L'outline est plus propre
- On passe d'un état à un autre du projet en changeant simplement de scène. En gardant tous dans la même scène comme auparavant, il faut activer / désactiver plusieurs collections.
- Énorme avantage des liens par rapport aux instances de collection : il s'agit de la même unique instance. Donc si on bouge quelque chose dans une scène A, la transformation sera repercutée dans la scène B.