Le Pipeline
Le Pipeline désigne l'ensemble des outils du studio qui simplifient les étapes de fabrication
- Nomenclature
- Kitsu
- Introduction
- Kitsu Desktop
- Kitsu Desktop - Animatic Importer
- Kitsu Desktop - Breakdown Editor
- Kitsu Desktop - Batch Updater
- Kitsu Desktop - Tools FFMPEG
- FileTree
- Kitsu in App
- Cgru (Render Manager)
- Les scripts Harmony
- Les scripts Photoshop
- Les scripts AfterFX
- Syncnode
- Procédures
- KITSU _ Utilisation
- Pour les héros du pipeline
- Synchronisation
Nomenclature
Les fichiers - En Série
Il est important de bien prendre connaissance des nomenclatures !
Beaucoup de développement (Pipeline) se base principalement sur les noms de fichiers pour les automatisations. Le non respect des nomenclatures engendre une perte de temps pour tout le monde et ne fluidifie pas le travail.
Cette documentation a pour but d'avoir un document de référence. Les Codes et nomenclatures peuvent évoluer mais cela doit être fait de façon collégial.
Le _ (Underscore, tiret du 8 ou le tiret du bas) est le caractère clé utilisé pour séparer les informations dans les noms de fichier
Exemple :
Bon : ABR_201_DS_BG_NORTH-BEDROOM_01.psd
Mauvais : ABR_201_DS_BG_NORTH_BEDROOM_01.psd
le deuxième exemple est mauvais car le _ est utilisé dans la description du décor. Pour décrire ici un décor il faut utiliser le tiret (ou tiret du 6, petit tiret).
Les épisodes sont toujours créés dans Kitsu ou Harmony serveur avec en premiers les CODE-PROD_NUMERO_EPISODE
Le code prod peut être sur 2 ou 3 lettres
Exemple pour Abraca : ABR_106
Exemple pour Petit Poilu : PP_207
La centaine dans le numéro d'épisode nous indique la saison
Exemple Petit Poilu : PP_101 Saison 1 épisode 1
PP_201 Saison 2 épisode 1
Les main-pack sont toujours les épisodes 0
PP_100 est le main pack de la saison 1
PP_200 est le main pack de la saison 2
Les Fichiers
L'expérience montre qu'il semble indispensable d'utiliser l'anglais pour nommer les éléments, cela permet d'éviter d'utiliser des caractères spéciaux et facilite grandement la travail avec les studios étrangers. L'emploi des majuscules est aussi hautement recommandé.
Etapes | code STEP | Nom du fichier | Export (Pour les versions validées et facilement consultables) |
Script | SCR | ABR_101_SCR_THE-FROG-S-KISS-SCRIPT_V01.fdx ou doc(x) | |
Storyboard | STB | ABR_101_STB_THE-FROG-SKISS_01.sboard | |
Animatic | ANC | ABR_101_ANC_THE-FROG-SKISS_01.sboard | mp4 |
Design | DS | ABR_101_DS_BG_NORTH-BEDROOM_01.psd | png |
Les Assets
Il est important de comprendre que les asset ont un type et un statut de fabrication
CODE-PROD__NUMERO_EPISODE_TASK-TYPE_ASSET-TYPE_DESCRIPTION_VERSION
Exemple ABR_101_DS_BG_MOUNTAIN_01
Les Assets Type
Type | code |
Backgroud | BG |
Color Card | CC |
Characters | CH |
Props | PR |
Fx | FX |
Les Task Type
Type | code |
Recherche Graphique | RG |
Design | DS |
Clean | CL |
Rigging | RIG |
La nomenclature des fichiers des assets
FileSystem (Serveur) | Kitsu |
Plusieurs déclinaisons d'un asset | |
ABR_101_DS_BG_ANTIQUE-FOREST-01_01 | ABR_101_BG_ANTIQUE-FOREST-01 |
ABR_101_DS_BG_ANTIQUE-FOREST-02_01 | ABR_101_BG_ANTIQUE-FOREST-02 |
Une seul déclinaison d'un asset | |
ABR_101_DS_BG_MOUNTAIN_01 | ABR_101_BG_MOUNTAIN |
Les scènes ou shot
Les fichiers des shots
CODE-PROD_NUMERO_EPISODE_SCENE_ETAPE-DE-FABRICATION_VERSION
CODE | ETAPE DE FABRICATION |
ANC | Animatic |
LAY | Layout |
BA | Box Animation |
LYP | Layout Posing |
AN | Animation |
KP | Keyposing |
IB | Inbetween |
FX | Special effects |
CP | Compositing |
Si l'on prend comme exemple Abraca saison 1, Episode 1, scène 3, au compositing, en version 1.
ABR_101_003_CP_01.mov
Harmony
Pour faire des jointures faciles dans les scripts entre Harmony et Kitsu un certain nombre d’éléments doivent rester cohérents (sans respect de cela des développement supplémentaires sont à prévoir pour créer des tables de référence ; elles alourdiront le code et devront être maintenues)
Environnement = Nom de la production dans kitsu
Job = Nom épisode ex : ABR_107
Scene = identique et toujours sur 3 caractères ex 001 pour Abraca ou A01 pour Garfield
Les versions dans harmony sont gérées dans le advanced save. On y retrouve le code de step et la version
Du coup il est facile même avec harmony en mode serveur, d'avoir la bonne nomenclature
NB: avec l'utilisation de kitsu nous avons abandonné de noter l’état du shot ou asset harmony en effet cette info est dans kitsu.
Les fichiers - Long Métrage
NB: Oui une licorne en long métrage à plus de style ^^
Il est important de bien prendre connaissance des nomenclatures !
Beaucoup de développement (Pipeline) se base principalement sur les noms de fichiers pour les automatisations. Le non respect des nomenclatures engendre une perte de temps pour tout le monde et ne fluidifie pas le travail.
Cette documentation a pour but d'avoir un document de référence. Les Codes /nomenclatures peuvent évoluer mais cela doit être fait de façon collégial
Le _ (Underscore ou le tiret du bas...) est le caractère clé utilisé pour séparer les informations dans les noms de fichiers
Exemple :
Bon : PRI_DS_BG_DRAGON-NORTH-BEDROOM_01.psd
Mauvais : PRI_DS_BG_DRAGON_NORTH_BEDROOM_01.psd
le deuxième exemple est mauvais car le _ est utilisé dans la description du décor.
Les Fichiers
L'expérience montre qu'il semble indispensable d'utiliser l'anglais pour nommer les éléments, cela permet d'éviter d'utiliser des caractères spéciaux et facilite grandement la travail avec les studios étrangers
Etape | code STEP | Nom du fichier | Export (Pour les versions validées et facilement consultable) |
Script | SCR | PRI_PRINCESSE-DRAGON_01.fdx ou doc(x) | |
Storyboard | STB | PRI_PRINCESSE-DRAGON_01.sboard | |
Animatic | ANC | PRI_PRINCESSE-DRAGON_01.sboard | mp4 |
Les Assets
Il est important de comprendre que les assets ont un type et un statut de fabrication
CODE-PROD_TASK-TYPE_ASSET-TYPE_DESCRIPTION_VERSION
Exemple PRI_DS_BG_MOUNTAIN_01
Les Assets Type
Type | code |
Backgroud | BG |
Props | PRP |
Characters | CH |
Les Task Type
Type | code |
Rigging | RIG |
Design Research | DSR |
Concept | CCT |
Modeling | MOD |
La nomenclature des fichiers des assets
FileSystem (Serveur) | Kitsu |
Plusieurs déclinaisons d'un asset | |
PRI_DS_BG_ANTIQUE-FOREST-01_01 | PRI_BG_ANTIQUE-FOREST-01 |
PRI__DS_BG_ANTIQUE-FOREST-02_01 | PRI_BG_ANTIQUE-FOREST-02 |
Une seul déclinaison d'un asset | |
PRI_DS_BG_MOUNTAIN_01 | PRI_BG_MOUNTAIN |
Les scènes ou shots
Les fichiers des shots
CODE-PROD_SEQUENCE_SHOT_ETAPE-DE-FABRICATION_VERSION
CODE | ETAPE DE FABRICATION |
ANC | Animatic |
LAY | Layout |
LYP | Layout Posing |
ANI | Animation |
KP | Keyposing |
INB | Inbetween |
FX | Special effects |
CP | Compositing |
Exemple : Pour le shot 0003 de la séquence 001
PRI_001_0003_CP_01.mov
Harmony
Pour faire des jointures faciles dans les scripts entre Harmony et Kitsu un certain nombre d’éléments doivent rester cohérents (sans respect de cela des dev supplémentaires sont à prévoir pour créer des tables de référence ; elles alourdiront le code et devront être maintenues)
Environnement = Nom de la production dans kitsu
Job = Numero de séquence : 101
Shot = toujours sur 4 caractères ex 0001
Les versions dans harmony sont gérées dans le advanced save. On y retrouve le code de step et la version
Du coup il est facile même avec harmony en mode serveur d'avoir la bonne nomenclature
NB avec l'utilisation de kitsu nous avons abandonné de noter l’état du shot ou asset harmony en effect cette info est dans kitsu
Kitsu
Introduction
Kitsu est notre Production tracker
Nous disposons d'un client le kitsu Desktop qui est votre compagnon quotidien. ll se lance à chaque ouverture de session
Vous pouvez vous connecter à kitsu d'ici https://cgwire.madlab-animations.com
Vous devez impérativement vous connecter au kitsu desktop pour lancer vos applications métiers.
Kitsu Desktop
Par défaut Kitsu desktop se lance au démarrage de vos machines.
Si toutefois vous souhaitez le relancer une Icone est disponible sur le bureau et dans le menu démarrer de Windows
<---- C'est un petit renard roux :)
Application
Application vous permet de lancer vos logiciels métiers. Le menu n'affiche que les applications utilisées sur la production sur laquelle vous êtes affectés.
Important: vous pouvez toujours lancer vos applications par Windows MAIS !!!!! les fonctionnalités du pipeline comme le publish ou le submit ne fonctionneront plus dans les applications il vous sera donc impossible de lancer un calcul dans CGRU par exemple.
History
C'est l'historique de vos actions dans le logiciel. Si vous raté une notification vous la retrouverez ici :)
Publish
J'ai envie de dire que comme son nom l'indique .... Cette fonction permet de publier des fichiers dans Kitsu.
La seule contrainte pour que votre publish fonctionne est que la nomenclature soit respectée
Au lancement le système vous demande de sélectionner un fichier
Vous pouvez alors ajouter votre commentaire et choisir un statut en haut a droite.
Le bouton publish enverra alors votre travail sur kitsu avec votre commentaire et le statut.
BatchPublish
Comme son nom l'indique comme le publish, il permet d'envoyer des éléments pour validation rtk ou autre dans cgwire
A la différence qu'il offre un traitement par lot
Si vous êtres lead compositing et qu'après une bonne séance de review / validation du travail de vos équipes vous souhaitez publier les plans compo réalisés par vos équipes en une fois sur kitsu vous pouvez passer par ce menu
Vous ne pouvez pas mettre de commentaire mais vous pouvez évidement définir le statut ;)
Cgwire
Ouvre l'interface web de kitsu https://cgwire.madlab-animations.com
Start/ Stop
Kitsu desktop n'est autre qu'un serveur web qui permet l’interaction entre les applications métiers et kitsu serveur. Sauf si un de vos lead, un dev, un td vous demande d'utiliser les fonctions start et stop vous n'avez pas besoin de les utiliser elles n'ont vocation qu'à permettre du debug.
Kitsu Desktop - Animatic Importer
Comme son nom l'indique :) C'est un outil pour importer des animatic faits dans storyboard Pro vers Kitsu
Vous pouvez trouver cet outil dans
Il est installé dans le menu Tools du Kitsu desktop
L'outil est simple
Vous choisissez votre Production / Episode (Ou pas dans le cas d'un long metrage) le fichier storyboard de l animatic qui a été VALIDE
Les sbkp sont supporté mais l'import est plus long le sbkp doit etre décompressé par l'outil
Le working directory peu être c:/temp (Eviter les espaces serveurs)
Les options
Generate Thumbnails : Génère les thumbnails dans kitsu
Force Export : Force l'export des vidéos par ToonBoom storyboard (Utile si vous avez déjà lancé le même import dans kitsu=)
Ignor Task Statuses: Force le statut a OK dans Kitsu Ignore le statut de la colone Animatic
Les options Harmony ne sont pas encore dispo (en attente de l’éditeur)
L'outil dispose de deux sanity check
1) Il vérifie que le FrameRate est correct entre Kitsu et Storyboard (L'information doit être saisie à la création de la production dans Kitsu (Dans studio Production)
2) Too short
Ce sanity est non bloquant :) il vous dit juste que certains Shot semblent trop court (Inférieur ou = a 50 frames )
Kitsu Desktop - Breakdown Editor
L'outils a pour but de pouvoir aidé a concevoir les breakdown tout en garantissant la nomenclatures des assets et leur correct Référencement pour notre futur outils de box Anim
Le system support les Long métrages les short et évidement les séries
Le kitsu Breakdown éditor se lance par kitsu Desktop dans le menu tools
Interface général
Il est possible d'ajouter un asset Mainpack (All) ou un asset sur un épisode
Si vous disposé d'une référence existante elle peut être ajouter et ca preview sera envoyer dans cgwire dans les V2 cette référence sera renommé et ranger dans le serveur de production
MPV screen
Permet de choisir l 'ecran dans lequel souvre le player vidéo
Autosave
Active l'auto sauvgarde de votre breakdown
Reload Asset
Recharge la liste des asset a droite
Dans about vous trouvez tout les racourcis du logiciel
Fonctionnement
Dans la parti en haut a droite vous allez chosir votre projet et votre épisode (All pour un long métrage ou un short)
Deux cas de figure
1) Vous avez déja importé votre animatic def par le kitsu importer (Bravo c'est le meilleur process !)
Apres le choix de votre production toute les informations dans kitsu son chargé ainsi que les preview vidéo
dans le cas d'un long métrage le nombre de shot peu être important il y des informations de chargement en bas du logiciel :)
2) Vous n'avez pas encore votre animatic vous voulez commencer la breakdown
Dans se cas votre épisode doit avoir été créer dans kitsu
Attention : les information de timing des plans seront écrasé par animatic importer quand votre animatic sera def mais évidement la breakdown sera conservé et peu être compléter :)
Un foi votre épisode choisi vous remarquerez que le system vous a précharger les asset all (flèche rouge) et que les asset de l’épisode son vide le logiciel vous invite a choisir votre board
Une foi votre board importé cotre interface ressemble a celle la le note présente dans le board on été remonté dans le champs notes
Saisie
Passons au plus intéressant la saisie
La liste de vos assets sont chargés quand vous cliquez sur un asset il s'ajout dans la colonne correspondante une preview de l'asset est dispo quand vous laissé la sourie dessus
cliquez sur une ligne a éditez vous pouvez choisir plusieurs ligne quand la continuité des plans le nécessite
Les L'arbre des assets correspond aux colonnes
Deux grand mode d'édition
1) Par auto complétion
Quand vous cliquez sur une case et que vous commencer a saisir le system vous propose des asset par autocompletion la touche tab vous permet de valider l'autocomplétion la touche enter valide la cellule
2) Par sélection dans l'arbre des assets
Effectuer votre recherche l'abre se reduit sur les resultat un bouton est disponible pour effacer votre recherche
cette recherche a l'avantage de vous permettre de voir les previews d'un assset quand le nom est tres proche et que vous avez besoin d'un controle visuel
Pour ajouter un asset a la breakdown cliquer dessus
Important
- Le logiciel refuse toute référence saisi dans les celules qui n'existe pas dans la liste des assets
- le copier coller marche par ligne , mais il est possible de double cliquez sur une cellule et de copier son contenue (ctrl +a puis ctrl+c pour copier puis ctrl+v dans une autre cellule de la même colonnes
Export Excel
Voici une preview du excel
- Important le tableau est générer par openpyxl précisez bien cela a vos studio prestataire si il souhaite utilisé le excel comme source de donnée pour leur production tracker si il n'utilise pas kitsu
Astuce
Passer un asset d'un épisode a all J'ai un asset fait sur un épisode X attaché a cette épisode et je veut l'avoir dans les asset all : Editer votre asset dans kitsu revenez dans le logiciel et faite un reload des asset par tools ;)
Kitsu Desktop - Batch Updater
Il se trouve dans la Selection Tools de Kitsu Desktop
Il arrive que l'on soit obligés de mettre à jour un certain nombre de shot de Kitsu Exemple Pour la colone Fx Passé tous les shot a "no" sauf les shot qui nécessite des FX
Batch Updater répond à ce besoin
Créer votre CSV dans Excel,Libre Office ou Only Office (Une Colone sans titre avec les numéros de shot)
Pensez bien à enregistrer votre fichier au format CSV et non xls ou xlsx
Vous pouvez ensuite lancer l'outil, choisir la colonne et le nouveau statut pour les shots dans le csv
Kitsu Desktop - Tools FFMPEG
Nous avons mis dans le Kitsu desktop une batterie d'outils basée sur FFMPEG
1 ) H264 Encode
Prend n'importe quelle vidéo en input et la convertis en mp4 rapidement (Utilise les GPU nvidia sans GPU nvidia l'encodage passe par le CPU)
2) Movie to GiF
Permet de faire des git à partir d'une video (permet de s'envoyer sur riot des références d'anim)
3) Add Watermark
Il nous arrive de travailler avec des studios comme dreamwork / ou netflix qui nous demande un watermark sur les vidéos qui leur sont envoyées pour validation. Cet outil ajoute un watermark dynamique
Les fichiers de watermark sont à mettre dans $ROOT_PIPELINE\_config\watermark (C:\pipeline\_config\watermark) au format PNG transparent
La watermark apparaît de façon dynamique dans la média et non fix de façon permanente
4) Concate Movie
Cet outil permet de faire des bouts à bouts aussi appelés BAB :)
Permet d'ajouter ou retirer des fichiers de la liste
Permet de changer l'ordre dans la liste
Remet la liste en ordre Alphabétique
L'outil a la particularité de vérifier que les médias que vous ajoutez à la liste ont tous le même codec. comme les fichiers output sont normalisés dans le pipeline Normalement vous ne devez pas rencontrer cette erreur
FileTree
Le FileTree c'est le lien entre le pipeline et le serveur de fichier
La base de données de Kitzu s'appelle Zou.
Zou peut stocker les fichiers sur le serveur de fichiers
Project
Task
TaskType
Department
Shot
TemporalEntity
TemporalEntityType
AssetType
Sequence
Episode
Asset
Software
OutputType
Scene
Instance
Representation
Name, OutputFile, WorkingFile
Version, Revision
Les FileTree disponibles de base
Preview
FolderPath
Asset : <Project>/assets/<AssetType>/<Asset>/<TaskType>
Scene: <Project>/scenes/<Sequence>/<Scene>/<TaskType>
Sequence:<Project>/sequences/<Sequence>/<TaskType>
Shot:<Project>/shots/<Sequence>/<Shot>/<TaskType>
Style :Lowercase /UPERCASE
FilePath
Asset :<Project>_<AssetType>_<Asset>_<TaskType>
Scene: <Project>_<Scene>_<TaskType>
Shot: <Project>_<Sequence>_<TaskType>
Working
FolderPath
Asset :<Project>/assets/<AssetType>/<Asset>/<TaskType>/<Software>
Scene : <Project>/scenes/<Sequence>/<Scene>/<TaskType>/<Software>
Sequence :<Project>/sequences/<Sequence>/<TaskType>/<Software>
<Project>/shots/<Sequence>/<Shot>/<TaskType>/<Software>
Style :Lowercase /UPERCASE
FilePath
Asset : <Project>_<AssetType>_<Asset>_<TaskType>_<Name>_v<Version>
Scene: <Project>_<Scene>_<TaskType>_<Name>_v<Version>
Sequence : <Project>_<Sequence>_<TaskType>_<Name>_v<Version>
Shot : <Project>_<Sequence>_<Shot>_<TaskType>_<Name>_v<Version>
Working
FolderPath
Asset :<Project>/assets/<AssetType>/<Asset>/<TaskType>/<OutputType>
Instance : <Project>/<TemporalEntityType>/<Sequence>/<TemporalEntity>/<TaskType>/<OutputType>/<AssetType>/<Asset>/instance_<Instance.number>/<Representation>
Instance_asset:<Project>/assets/<TemporalEntityType>/<TemporalEntity>/<TaskType>/<OutputType>/<AssetType>/<Asset>/instance_<Instance.number>/<Representation>
<Project>/shots/<Sequence>/<Shot>/<TaskType>/<Software>
Style :Lowercase /UPERCASE
FilePath
Asset : <Project>_<AssetType>_<Asset>_<TaskType>_<Name>_v<Version>
Scene: <Project>_<Scene>_<TaskType>_<Name>_v<Version>
Sequence : <Project>_<Sequence>_<TaskType>_<Name>_v<Version>
Shot : <Project>_<Sequence>_<Shot>_<TaskType>_<Name>_v<Version>
Kitsu in App
Photoshop / Afterfx / Indesign / Ilustrator and co
Nous avons intégré dans la suite adobe un menu custom pour faire des publish directement sans repassé par le
kitsu desktop en bare des taches
Statut : Le statut de la Tache RTK / WIP / OK ect
Comment : votre commentaire
Publish : Envoi le statut et commentaire et la preview du fichier Adobe ouvert dans kitsu
Publish by Layer Group : Fonctionne comme le bouton publish a la différence qu'il va traité chaque groupe de calque pour fair une preview par groupe de calque dans kitsu 5se bouton est pour le moment disponible que sous photoshop
Wip : Met a jour la travail en cours dans kitsu
Add version : Fonctionne en mode asset manager Zou . Creer une nouvelle version d'un fichier. Cette fonction est utils dns la cas ou un artiste souhaite faire deux proposition au réalisateur. se bouton informera donc l'asset manager de la présence de plusieurs fichier. L'asset manager utilisera la dernière version validé dans kitsu
Nous avons aussi intégré un system de lancement de script
Les boutons représentant chaque script étant dynamique et changeante en fonction des Productions nous ne retravaillerons pas chaque script ici Mais un article avec la description des script existe ici pour Photoshop et ici pour AfterFX
MPV
MPV est notre player video de review
Pourquoi MPV ?
- il est gratuit
- il fait du frame par frame
- Il est scriptable :)
- il lis les plans bout a bout tout seul
Mpv vous pouvez le lancez par le menu application de Kistu desktop
Il a de chouette fonction que je vais essayer de vous détaillez
Espace lecture/pause
Flèche Gauche et Droite Frame précedente / Frames Suivantes
Flèche Haute et Basse Shot précedente / Frames Suivant
enter = plein écran
tab = Display overlay (Nom du shot, time code, frame )
ctrl+s = créer un screenshot qui v directement dans votre répertoire image
crrl+shift+S permet d'envoyer vos capture dans krita pour les anoté et les envoyer dans cgwire
ctrl+e fait un bab des fichier vidéo en cours de lectures
ctrl+z permet de zoomer dans votre shot vous devez maintenir ctrl pour faire le selection et refaire crtl+z pour sortir du zoom
crtl+p publish ! Permet d'envoyer votre valide ou votre rtk dans kitsu
PGUP et PGDWN Monte et baisse le son :)
Toonboom Harmony
Nous Avons désormais dans Toonboom Harmony un menu avec nos outils Vous pouvez l'ajouter par un clic droits dans la barre de menu de Harmony (Kitsu Desktop)
La menu apparaît en haut a Gauche
Vous y retrouverez bientôt tout nos outils harmony :D
Cgru (Render Manager)
Introduction
A la base CGRU / AFANASY est un projet open source de gestion des rendus.
Nous avons effectué pour Madlab ce que l'on appelle un Fork (Une version modifiée du logiciel open source)
Accessible à cette adresse: http://172.31.10.94:51000/
Comme cette solution est gratuite nous pouvons utiliser toutes les machines du parc en rendu. Notre seule limitation est finalement le nombre de licences de rendu sur certains logiciels
CGRU Desktop
C'est le client de CGRU serveur. C'est le logiciel local qui permet de lancer des calculs sur votre machine
Il se lance à chaque démarrage :
Important au premier démarrage sur une machine il crée cette machine dans la base de données de cgru serveur avec un statut start. Votre machine se retrouve donc dans le pool général de calcul et donc de fait prête à recevoir les calculs de n'importe quelle autre production.
Vous pouvez désactiver le fait de recevoir des calculs en cliquant sur show Interface puis en sélectionnant votre machine dans la liste (partie basse de l'interface) clic droit et choisir suspendre le rendu
Show interface
Vous permet d'ouvrir dans un navigateur l'interface web de gestion des rendus (http://172.31.10.94:51000/)
Show Output
Si vous n’êtes pas TD ou développeur cette console n'aura pas un grand intérêt. Elle permet juste de voir l'output en ligne de commande des derniers calculs ou tâches lancées.
L'interface de management des jobs
Les scripts Harmony
Scripts Harmony génériques
MADLAB_convert3DpathToSeparate.js :
fonctions : convert3DpathToSeparate
but : Permet de convertir une animation de position se trouvant en mode "3D Path" vers le mode "Separate".
Attention, cet outil ne transfère pas le lissage des courbes d'animation (bézier) l'animation deviendra linéaire, mais peut à nouveau être lissée.
MADLAB_EditLineThicknessOvertime.js :
fonctions : ML_Edit_Line_Thickness
but : D'après une sélection de nodes, applique une épaisseur de trait, ou une animation d'épaisseur de trait.
A l'inverse du script équivalent fourni par ToonBoom (TB_EditLineThicknessOvertime.js), celui-ci agit sur tous les enfants de la sélection (si la sélection comporte des groupes)
MADLAB_EnableZoomIndependentThickness.js :
fonctions : EnableZoomIndependentThickness
but : D'après une sélection de nodes, application des propriétés sur chacun des nodes 'read' enfants, dans l'onglet "Line Thickness", de la case "Zoom Independent Thickness".
Attention, celà n'a pas d'impact sur les nodes reads n'ayant pas leur propriété "Adjust Pencil Line Thickness" activée.
MADLAB_reArrangeNodeView.js :
fonctions :
reArrangeNodeView :
but : Déplace des éléments la nodeview (attention, cet outil est non générique, adapté à la production Abraca S1)
expandNodeView :
but : Déplace les éléments sélectionnés dans la nodeview (dilate leurs positions respectives)
condenseNodeView :
but : Déplace les éléments sélectionnés dans la nodeview (condense leurs positions respectives)
alignhorizontalNodeView :
but : Aligne horizontalement les éléments sélectionnés dans la nodeview
alignverticalNodeView :
but : Aligne verticalement les éléments sélectionnés dans la nodeview
snapToGrid :
but : Snap les éléments sélectionnés dans la nodeview sur une grille virtuelle
makePlaceOnZero :
but : Déplace les éléments sélectionnés dans la nodeview se trouvant aux coordonnées proches de 0,0
CreateCompositeFromSelection :
but : D'après une sélection de nodes tous connectés au même composite, ou tous non connectés, permet de la réunir en intercalant un composite supplémentaire.
SetCompoBitmapToPassTrought :
but : D'après une sélection de nodes composite, change leurs propriété "Mode" de "PassThrough" vers "As Bitmap" et inversement.
CreateCutterUnderSelection :
but : D'après une sélection de nodes, intercalle un node "Cutter" sous leur hiérarchie respective.
CreatePegParentFromSelection :
but : D'après une sélection de nodes "Peg" tous ayant le même Peg parent, intercale un nouveau node Peg au dessus de leur hiérarchie.
MADLAB_SaveNewVersions.js :
fonctions : ML_Save_CP, ML_Save_KP, ML_Save_LT, ML_Save_FX
but : Sauvegarde la scène en incrémentant son versionning avec la nomenclature dédiée aux départements respectifs.
MADLAB_selectionTools.js :
fonctions : ML_SelectChildren
but : D'après une sélection de groupe, sélectionne l'ensemble des nodes contenus de manière récursive.
MADLAB_createED.js :
fonctions : ML_createEDparLot
but : Sur une sélection de nodes de type "read", remplace les zones non exposées de la timeline par un drawing vide nommé "ed".
MADLAB_duplicateDraw.js :
fonctions : ML_duplicateDrawing
but : Sur une sélection de nodes de type "read", duplique le drawing de la frame actuelle et le nomme avec la nomenclature suivante : sceneJob + "_" + sceneName + "_" + CurrentFrame
Scripts Harmony non génériques
Les outils de cette liste ont été développés en adéquation avec la hiérarchie de dossiers des productions "Abraca Saison 1" et "Garfield Original Saison 1" ou avec des éléments de leurs rig respectifs.
Ils ne sont donc pas exploitables tels quels sur une autre production, mais leur code source peut servir de base pour les adapter à une nouvelle production.
MADLAB_AnimationOutput.js :
fonctions : SetAnmOutputPath
but : Définir les paramètres d'un Write Node destiné au rendu de preview des équipes du département Animation.
MADLAB_SetRENDERNODEoutputPath.js :
fonctions : SetOutputPath
but : Définir les paramètres d'un Write Node destiné au rendu des équipes du département Compositing.
MADLAB_importBG.js :
fonctions : ML_ImportBackgroundJPG
but : Importe automatiquement le décor de preview correspondant à la scène ouverte.
fonctions : ML_ImportBackgroundPSD
but : Importe automatiquement le décor définitif (dans son format Export) correspondant à la scène ouverte.
Deux fonctionnements sont à noter : L'outil peut être lancé avec ou sans sélection.
Si aucune sélection de nodes n'est faite, l'outil importe lui-même le fichier PSD, puis range les nodes dans un groupe et distribue les modes de fusion et opacités référencés dans le nom des calques du PSD dit 'd'export'.
Si un sélection de nodes est faite, l'outil n'importe pas le PSD et suppose que cette étape a déjà été faites manuellement (via le bouton harmony "Import Images") et que les nodes correspondants aux calques ont été sélectionnés, puis range les nodes dans un groupe et distribue les modes de fusion et opacités référencés dans le nom des calques du PSD dit 'd'export'.
MADLAB_disablePickers.js :
fonctions : ML_disableAllPickers, ML_disableSelectionPickers, ML_disableAllSwtichers, ML_disableSelectionSwitchers, ML_TotalDisablePickers
but : Destiné aux rigs Abraca S1 fournis par Dreamwall. Permet d'alléger la scène ouverte en désactivant certains modules du rig : les Pickers et les Switchers. Lancer l'outil une nouvelle fois après désactivation rétablie l'activation.
MADLAB_CharLineThickness.js
fonctions : ML_CharLineThickness
but : Réduit l'épaisseur de trait d'un personnage à 3,3 :
Recherche les groupes présents dans la scène avec la nomenclature des Personnages (présence dans le nom de "ABR_" et de "_CH_")
Application des propriétés sur chacun de ses nodes 'read' enfants, dans l'onglet "Line Thickness", des cases "Adjust Pencil Line Thickness" et "Zoom Independent Thickness", et définition de la valeur "Proportional" à "3.3".
MADLAB_renderThumbnail.js
fonctions : renderThumbnail
but : Génère un aperçu JPG du plan via le node Display "Rendu_Final" à l'endroit de la destination du write node parallèle.
MADLAB_GarfieldTools.js :
fonctions : ML_setOutputAndSave_KP, ML_setOutputAndSave_IB, ML_setOutputAndSave_FX, ML_setOutputAndSave_CP, ML_setOutputWithoutSave
but : Définit les paramètres d'un Write Node destiné au rendu des départements respectifs et sauvegarde la scène en incrémentant son versionning.
MADLAB_Garfield_importBG.js :
fonctions : ML_GO_ImportBGPSD
but : Importe automatiquement le décor définitif (dans son format Export) correspondant à la scène ouverte.
Deux fonctionnements sont à noter : L'outil peut être lancé avec ou sans sélection.
Si aucune sélection de nodes n'est faite, l'outil importe lui-même le fichier PSD, puis range les nodes dans un groupe et distribue les modes de fusion et opacités référencés dans le nom des calques du PSD dit 'd'export'.
Si un sélection de nodes est faite, l'outil n'importe pas le PSD et suppose que cette étape a déjà été faites manuellement (via le bouton harmony "Import Images") et que les nodes correspondants aux calques ont été sélectionnés, puis range les nodes dans un groupe et distribue les modes de fusion et opacités référencés dans le nom des calques du PSD dit 'd'export'.
Les scripts Photoshop
Le panel Madlab
Sous Photoshop nos scripts sont intégrés dans un panel Adobe
Les scripts Photoshop sont tous prévus pour fonctionner avec la même structure interne de PSD.
La voici :
Il faut donc, au sommet de la hiérarchie de calques, un groupe nommé "PLAN",
contenant autant de dossiers que le fichier traite de plans, ceux-ci nommés par leur numéro de plan (ici les plans 344, 345 et 346, ou par exemple aussi : 001, 001A, 098 ...)
Ceux-ci contiennent eux-même un calque ou dossier nommé "posing" ainsi que des indications (au minimum un texte titre) et surtout un groupe nommé "CADRE".
Ce groupe CADRE doit contenir le cadre dit "sécu" (ici en noir) et le cadre classique (ici en rouge).
Le calque du cadre "sécu" doit être nommé en commençant par "cadre secu".
Le calque du cadre classique doit être nommé en commençant par "cadre" et ne pas comporter le mot-clé "sécu".
Ensuite le contenu "illustratif" peut commencer.
Certains mots-clés ne doivent pas être utilisés dans les noms de calques/groupes:
"PLAN", "CADRE"
Par exemple "Plante" est à exclure. Préférez "_Plante".
De même pour "Cadre Porte". Préférez "Cadr_Porte"
LB : Aperçu
Ce Script est destiné au département Layout afin de soumettre le fichier à validation.
Il permet de générer un aperçu (généralement au format JPG) de chacun des cadrages traités par le fichier PSD.
BG : Aperçu
Ce Script est destiné au département Décor couleur afin de soumettre le fichier à validation.
Il permet de générer un aperçu (généralement au format JPG) avec et sans posing.
BG : Export Layers
Ce Script est destiné au département Décor couleur afin de faire un export multi-couches destiné au compositing.
Avec cet outil, un fichier (généralement PNG) est généré par Calque ou Groupe se trouvant à la racine.
BG : Export Layers Harmony
Ce Script est destiné au département Décor couleur afin de faire un export multi-couches destiné au compositing.
Avec cet outil, un fichier PSD (et non sauvegardé) avec chacun des Calque ou Groupe se trouvant à la racine fusionné et placé dans un groupe afin d'être supporté par Harmony 15.
Après utilisation le fichier est source est dupliqué virtuellement, et il convient de vérifier la concordance avec le fichier source.
Pour celà, il faut masquer/afficher le groupe nommé "REF". S'il n'y a pas concordance, le PSD source comporte une erreur de conception.
En général il s'agit souvent d'un calque ou groupe soumis à mode de fusion qui se trouve à l'intérieur d'un groupe présent à la racine.
Seuls les calques et groupes avec mode de fusion placé à la racine du fichier photoshop auront leur mode de fusion retransmis dans l'export final.
Si il y a concordance, il convient de sauvegarder le fichier PSD avec la nomenclature "Export".
Ne pas oublier de laisser chacun des calques et groupes affichés dans le PSD d'export, sinon il ne seront pas importés proprement par ToonBoom Harmony.
Les scripts AfterFX
Syncnode
Présentation
Les syncnode son des noeud de synchronisation
L'idée du projet était que les gents passe moin leur temps a gérer les transfers et échange de donnée entre les studio et les prestas
Pour facilité la mise en oeuvre tout est fournis sous forme de machine virtuel a installé sur chaque site
Le system est entièrement sécurisé tout les transfers son crypté et surtout les syncnode son en circuit fermé chaque syncnode connais les autre syncnode d'une même boucle et n’accepte les connexions que de ces dernières il est néanmoins possible d'ajouter des ip fix pour les administrateurs. Mais il ne vous sera pas possible de lancé des transfer de chez vous sans VPN
Le système est capable de parallélisé les Transfers pour augmenté la vitesse de transmission et exploité pleinement la bande passante
Un systeme de Pre et Post transfer permet de notifier un Production tracker de la bonne livraison des données (Shotgun / ftrack)
La doc d'installation est ici https://docs.google.com/document/d/1sEJbCzNssFH7KYzH7qcGg4nfylKfEGf5LYRupAeYXew/edit
L'interface
1) Explorer
Explorer fonctionne comme un FTP et vous permet d'envoyer des données de votre syncnode vers un syncnode distant
2) Harmo-Bee
Harmo-bee permet de synchronisé deux serveur Harmony en mode database Vous selectcionnez les scènes que vous souhaitez envoyer ou recevoir
3) Status
Vous permet de voir l'état de l'ensemble des transfers
4) Netdata
Netdata permet d'avoir des information sur l'utilisation de la bade passante des espace disque ect
4) Syncthing
C'est un system de synchronisation peer a peer qui peu contenir plus de deux peer on peu facilement snchronisé une bank d'anim de shot de décord au travert de plusieurs studio
6) Admin
Si vous voyez se menu vous etre admin de votre syncnode :)
6) Logout
C'est un system de synchronisation peer a peer qui peu contenir plus de deux peer on peu facilement synchronisé une bank d'anim de shot de décors au travers de plusieurs studio
Netdata
Le système netdata relève tout les constante du system
Il nous permet d'avoir des information important comme :
- Espace disque
- Load (charge du système cpu/ram)
- Bande passante
Nous pouvons fixé des alertes mail sur toute les métric
Syncthing
Syncthing permet de synchonisé de facon simple des dossier ou en mode multidirectionnel (Lecture / écriture des deux coté ou unidirectionnel un serveur A envoi a un serveur B mais le serveur A refuse toute modification du serveur B
C'est outils est vraiment réservé aux banques que l'on souhaite partagé entre studio
C'est la cas dans la capture si dessus.
01_Pre-Production est partagé entre les deux site
pp_02Production_2XX ne font que dans le sence Dreamwal madlab
Il est possible de voir les élément pas encore synchronisé
Explorer
Explorer permet des sélectionné des dossier ou des fichier a envoyé un a un studio
L'utilisation est très simple la parti de gauche représente les données local la parti de droite les dossier a envoyer
1) Les fichier locaux sur votre server
2) les fichier que vous souhaitez envoyer
3 )Liste de selection de la production(Si il y a plusieur prod en cours)
4) Transfer to site Le bouton pour envoyer les donnée et choisir le site de destination
L'interface vous propose que les sites capable de recevoir vos données
Une foi le site sélectionné une pop-up vous indique le nombre de fichier envoyer
La page status vous permet alors de vois les transfers en cours et ceux terminé
Une petit vidéo en accélérer pour la démo