Aller au contenu

Ré-éditer une scène assemblée

Tutoriel vidéo — bientôt disponible

Assemble n'est pas une porte à sens unique. Dès que les nœuds d'un slot existent dans la Node View, OSA cesse de les créer et se met à les éditer sur place.

Nouveau et existant

Chaque composant de l'Inspector porte une marque disant lequel des deux il est :

Marque Signifie
+ nouveau — ce nœud n'existe pas encore ; Assemble le créera
(carré) existant — ce nœud est dans la Node View ; Assemble l'éditera
gris le composant est décoché, donc rien ne se passe dans un cas comme dans l'autre

L'arbre ne peint qu'un seul de ces états — existant — et laisse toutes les autres lignes sans marque. Une marque sur chaque ligne est une texture, pas un signal ; c'est l'Inspector qui donne la réponse par composant.

C'est une forme, pas une couleur

Les marques sont dessinées dans la couleur propre du libellé, si bien que la lecture survit à un changement de thème et à un lecteur daltonien. La différence, c'est + contre un carré, pas violet contre cyan.

Ce que veut dire « édité sur place »

Pour un slot marqué existant, Assemble ne crée pas un second nœud et ne déplace pas le premier. Il :

  • renomme le nœud si vous avez renommé le slot,
  • réécrit les attributs que vous avez changés — mode de composite, alignement, blend mode, valeurs d'effets, couleur et titre du backdrop,
  • laisse la position du nœud dans la Node View tranquille,
  • et remarque le slot comme existant ensuite, si bien que l'Assemble suivant est encore une mise à jour et non un doublon.

Ce dernier point est ce qui rend Assemble sûr à répétition. C'est le rythme normal de travail : assembler, regarder dans Harmony, revenir, changer quelque chose, réassembler.

Un nœud qui prétend exister mais ne sait pas dire est rapporté comme unaddressable et laissé tranquille, parce que le reconstruire vous en donnerait deux. Voir Assembler.

L'arbre n'est pas « Top »

C'est la partie qui surprend, et c'est tout l'enjeu de la section précédente.

Pour les nouveaux nœuds, la racine de l'arbre de staging signifie Top — le niveau supérieur de la Node View. C'est le défaut, et pour une scène que vous construisez à partir de rien c'est la seule lecture sensée.

Pour les nœuds existants, la racine de l'arbre est une adresse. Une ligne de niveau 0 venue de la scène représente la racine de la chaîne qui a été importée — le nœud le plus externe de ce que vous avez ramené — et tout ce qui est en dessous est la position réelle de cette chaîne dans Harmony, pas une copie à Top.

La même indentation signifie donc deux choses différentes selon l'origine de la ligne, et la marque vous dit laquelle :

Une ligne de niveau 0 qui est… Se trouve à
nouvelle (+) Top
existante (▪) là où sa chaîne vit réellement dans la scène

Où atterrissent les nouveaux enfants

Attachez quelque chose de nouveau à un slot existant et c'est créé dans le contexte de ce slot dans Harmony — pas à Top.

OSA résout ce contexte en une ancre, dans cet ordre de priorité :

GROUP  >  PEG  >  COMP  >  DRAWING

Group vient en premier pour une raison mesurée : quand le peg avait la priorité, un nouvel enfant d'un super node P+G naissait hors du groupe. Le groupe est le contexte des enfants — exactement comme sur le chemin de création, où cocher Group met les enfants dedans.

Donc :

  • ajoutez un drawing sous un hero=P-G-C existant et il apparaît dans hero-G, câblé dans hero-C ;
  • ajoutez un effet et il atterrit sur la chaîne de ce slot, dans la bande que le Wide Bus lui a réservée.

Rien ne part vers Top au seul motif que la ligne est indentée sous une ligne de niveau 0 de votre arbre.

Déplacer des choses

Ce que vous déplacez Ce qui se passe à l'Assemble
Une nouvelle ligne, n'importe où elle est créée à sa nouvelle place ; rien à reconnecter
Une ligne existante dans sa chaîne les pegs sont reconnectés pour correspondre à la nouvelle parenté
La racine d'une chaîne importée toute la chaîne est reconnectée sous sa nouvelle position
Rien — vous n'ajoutez que de nouvelles lignes les nouveaux nœuds vont à la position propre de la chaîne, là où elle est connectée

La dernière ligne est celle à retenir : si vous ne déplacez pas la chaîne importée, y ajouter ne la déplace pas non plus. Les nouvelles pièces s'insèrent dans la chaîne là où la chaîne est déjà.

Le chemin virtuel

Le champ Path de l'Inspector montre l'adresse à laquelle un slot se résout, et il se lit comme les chemins de la Node View elle-même :

Top/ParentGroup-G/SelfGroup-G/Element-C

La règle de ce qui y apparaît :

  • les ancêtres ne contribuent que s'ils sont des groups — un peg ou un backdrop au milieu n'ajoute pas de niveau, car ni l'un ni l'autre n'en crée dans Harmony ;
  • le slot lui-même contribue son group (s'il en a un), puis son comp ou son drawing ;
  • les pegs, backdrops et effets n'apparaissent jamais — ils sont dans le niveau, pas un niveau à eux.

Un slot sans fichier derrière lui affiche New Node (Memory) à la place. Ce n'est pas une erreur — cela veut dire que cette ligne n'a pas encore d'adresse, parce qu'elle n'a jamais été assemblée.

Reprendre une scène

Magnetize Scene lit la Node View existante à travers vos magnets et met en staging ce qu'il trouve — c'est ainsi que vous rouvrez une scène assemblée hier, ou construite par quelqu'un d'autre, et que vous continuez de l'éditer sous forme de slots.

Tout ce qu'il ramène arrive marqué existant, avec son adresse, si bien que les règles de cette page s'appliquent dès la première pression.