Le Pipeline

Le Pipeline désigne l'ensemble des outils du studio qui simplifient les étapes de fabrication

Nomenclature

Nomenclature

Les fichiers - En Série

 

Licorne.png

 

 

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) pdf
Storyboard STB ABR_101_STB_THE-FROG-SKISS_01.sboard pdf
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.

 

Nomenclature

Les fichiers - Long Métrage

 

licorne-personnage-vice-versa-001.jpg

 

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) pdf
Storyboard STB PRI_PRINCESSE-DRAGON_01.sboard pdf
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

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

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 

Menu

Le menu est accessible par clic droit dans la barre des tâches sur l'icone du petit renard

<---- 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

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

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


 




Les menu dans le Détail

Add asset



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

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

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

 

Kitsu

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

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


Kitsu in App

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 :)









 

 

Kitsu in App

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)

FC6B8B2B-BC64-4739-BC3F-097D8334FFDB.GIF

La menu apparaît en haut a Gauche

Vous y retrouverez bientôt tout nos outils harmony :D

 

 

Cgru (Render Manager)

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 (Render Manager)

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




Menu

 



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.

 

Cgru (Render Manager)

L'interface de management des jobs

Les scripts Harmony

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

 

Les scripts Harmony

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

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

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

Syncnode

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

 

 

Syncnode

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

Syncnode

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é 

Syncnode

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

 

319BA506-0391-4DC5-B456-C98130CD0CA2.GIF

Syncnode

Harmo-Bee

Syncnode

Status

Syncnode

Admin

Procédures

Procédures

Import d'un Animatique dans Harmony

 

Cette procédure ne disposant pas de vérification (Sanity) je vous conseille vivement de la mettre en oeuvre après le Kitsu Animatic importer

 

Ouvrez votre storyboard avec Toonboom Storyoard

Rendez vous dans la menu File Export et choisir To harmony

Le Scene name Patter est %3s

Le dossier de destination doit etre vide. Nous n'avons pas besoin de conservé cet export sur le serveur

Comme vous pouvez le voir il y a différent onglet dans la parti basse de cette capture voila les setting

 

Une foi cette export obtenue 

Vous allez Obtenir un fichier IEcontent.dat

 

 

 

Lancer le control center d'harmony allé dans le Menu Admin et la Fonction import

 

Important : Si votre episode n'existe pas encore dans la liste de job vous devez le créer avant dans lancer l'import

 

Dans Package Directory Vous devez choisir le dossier ou vus avez exportez votre IEcontent.dat

Dans Destination vous devez choisir l'épisode dans la database



Vérifiez bien que le SceneTo Import na nom de Scène reprend bien notre convention de nomage 001,002 pour une série

Vous pouvez cliquez sur import

Vérifiez bien que le nombre de scene importé est cohérent avec le board

Dernière étape

Lancé le kitsu Desktop shell

Et lancé cette commande : 

controlcenter_17 -runStageScript c:\pipeline\Extension\Toonboom\Harmony\ani_version.js -env DevAndTest -job TEST201

Evidement adapté votre environement et le nom du job :)

Cette commande va traité tout les scènes de  l'épisode et correctement paramétré  leur version (ANI_01) puisque cela est la version 1 de l'animatique que nous importons :)



Vous pouvez appuyer sur la touche enter pour reprendre la main dans le shell quand vous consattez que toutes les scene on été traité

 

KITSU _ Utilisation

 

Kitsu est notre production tracker. C'est à la fois votre road-book, votre todo list et votre moyen d'informer toute la chaine de votre avancement.

Son adresse est : https://cgwire.madlab-animations.com/

Vous pouvez vous y connecter avec votre login et votre mot de passe habituel. Quand votre mdp change, il change ici comme sur tous les autres accès que vous utilisez.

Pour rappel votre login est : prenom.nom (un underscore "_" pour les prénoms composés)

Lorsque vous entrez dans Kitsu vous arrivez dans vos tâches. C'est votre ToDo List.

Les informations qui s'y trouvent sont celles qui vous ont été attribué. 

Pour chaque tâche, étape ou version vous devez remplir son statut. 

Voici la liste des statuts disponibles. Suivant votre profil vous aurez accès ou non aux différents statuts :

 

Voici l'ordre et la logique des statuts suivants vos profils :

STATUTS : 

TODO : 1er statut, le To Do est automatique, cela signifie que la tâche est à faire.

WIP : signifie Work in Progress et donc que la tâche est en cours. C'est vous qui activez ce statut quand vous êtes sur la tâche. Peu importe la version, vous mettez WIP quand vous commencé une tâche jusqu'à sa soumission.

WFA LEAD : signifie Wait for Approval Lead, soit que vous avez terminé votre tâche et que vous attendez les commentaires de votre lead. C'est le statut que vous utilisez quand vous soumettez votre travail au travers du Kitsu Desktop. Peu importe que vous ayez ou non un lead (ex au rig), vous devez utiliser ce statut lorsque vous avez terminé votre tâche.

WFA REAL : signifie que la tâche est en attente du commentaire du réalisateur. Quand vous avez un lead c'est votre lead qui doit mettre ce statut quand il soumet l'intégralité des tâches au réalisateur.

RTK LEAD : signifie que votre tâche a été regardé et mise en correction. vous devez donc suivre les directives et reprendre votre tâche avec un statut WIP, avant de re-soumettre en WFA LEAD.

RTK REAL : signifie que votre tâche a été regardé et mise en correction par le réalisateur. Vous devez voir avec votre lead   les directives pour reprendre votre tâche avec un statut WIP pour ensuite re-soumettre en WFA LEAD

OK LEAD : Votre tâche est validé par le lead. Elle va donc passer à l'étape suivante. Votre action sur cette phase est terminée. Votre tâche peut avoir ce statut dans l'attente de la soumission finale WFA REAL. 

OK COM : Votre tâche est validé mais il y a un commentaire que vous devez suivre. Cela peut être une note d'information (ex : ajout de frame pour poignée) ou bien une demande de correction à prendre en compte à l'étape suivante (ex petite retake sur un KP à faire à l'animation).

OK : votre tâche est validée. En principe cette tâche ne nécessite pas de validation ou de supervision (ex l'animatic est remonté dans Kitsu).

OK REUT : Cette tâche est une réutilisation qui ne nécessite pas de nouvelle action. Personne ne doit y être assigné, la tâche est considérée comme validée. 

VALIDATED : C'est la validation finale du réalisateur. Elle intervient sur les étapes soumises à l'acceptation de celui-ci. La tâche passe à la phase suivante. 

STAND BY : signifie que la tâche est bloquée, en attente, suite à un problème technique ou autre.

OUT : la tâche est annulée. Il n'y a plus d'action à attendre sur celle-ci.

NO : signifie que cette étape/phase n'est pas concernée. Par exemple dans les assets, une étape de Rig sur un décor.

 

  

 

 

 

Pour les héros du pipeline

Pour les héros du pipeline

CGRU - Nouvelle Prod / New Soft

Data

- Donné les droit a renderman sur la prod
- Modifier le fichier \\deploy\softwares\pipeline\_config\windows\launch_srv\Render.yml et y ajouter la prod
-Release pipeline pour la ci/cd
- Reboot des renders


NewSoft

- Ajouter le soft et ca version dans \\deploy\softwares\pipeline\cgru.2.3.1\config_afjob.json (Attention a la syntax)
- Release pipeline pour la ci/cd



Synchronisation

Synchronisation

Unisson file sync

 

Je part du principe que vous avez ssh sur votre serveur linux ou windows Si jamais ca ne serait pas le cas:

Executer les commandes suiventes en power shell avec des droits admin pour installer le serveur ssh et le client ssh

Add-WindowsCapability -Online -Name OpenSSH.Server~~~~0.0.1.0
Add-WindowsCapability -Online -Name OpenSSH.Client~~~~0.0.1.0

# Have ssh agent start automatically
Get-Service ssh-agent | Set-Service -StartupType Automatic

# Start ssh agent now
Start-Service ssh-agent

# Should work successfully
Get-Service ssh-agent

Une doc https://www.it-connect.fr/installer-et-configurer-openssh-server-sur-windows-server-2019/

 

on va donc utiliser unison v2.53.7

Les version (v2.53.7) de unisson utiliser son ici https://github.com/bcpierce00/unison/releases/tag/v2.53.7

Les build ubuntu matche sur des bases redhat pas de pb

Sous linux

extraire le tgz et copier les 3 binaire du dossier bin dans /usr/bin

Sous windows

Personellement j'ai déja un dossier bin dans le patch a la racine de c:\bin
j'ai copier dans bin le dossier de unisson et ajouter son dossier bin dans le path

Ca donne ca (Mais vous installer ca comme vous voulez)



Du moment que quand vous tapper unison dans un cmd  ou un terminal et que ca marche :) les reste m'importe peu ^^
Je travail avec le compte usabatch  de hamony sous linux mais windows est un peu plus permissif ;)

Donc pour verifier que ca marche sous linux ou sous windows taper unison 

Vous devriez avoir se genre de retour:

 


Coté Firewall quand vous etre serveur

Vous devez créer un Alias /Service type Host avec les ip des studios client de vos données

Vous devez natté un port TCP externe (Celui que vous souhaiter ) 22125  vers le port 22 de votre machine qui gére votre serveur ssh et vérifier qui est la source

Exemple

Evidement si vous filtrez les port en sortie (Se qui est fortement recommander en 2024)  vous devez authoriser la machine qui execute unisson a se connecter sur les port TCP distant et les ip des studio partenaire

Je suis client d'un dossier

Commade commune au 2 Operating System

Généter une cle ssh dans l'utilisateur que vous souhaiter utilier (Il doit avoir acces au data de prod)

ssh-keygen -t rsa -b 4096 -C "support@d-ns.fr"

Vous devez générer un cle sans mot de pass pour un service

Apres avoir générer des cle ssh transmettre votre public key a la personne en charge du serveur pour quel soit copier dans les dossier .ssh dans .ssh/authorized_keys  du serveur transmettre aussi votre ip quel soit accessible du firewall

Quand vous avez un retour de votre interlocuteur avec son ip externe son port ssh exposer  Vous pouvez verifier que ca marche avec ces commandes 

ssh-add

Ca va chargé votre private key

ssh -p 22125 usabatch@vpn.madlab-animations.com


Le faite que unison soit dans le path coté serveur et client est donc important

Comme vous avez deja normalement lancer unisson vous devirez avoir un fichier .unison dans le compte de votre utilisateur.

Sous Windows C:\Users\monuser\.unison
Sous linux /home/monuser/.unison/

Dans se dossier vous allez créer un fichier .prf dans l'exemple suivant on part du principe que Madlab est serveur du dossier library pour la prod Sacrée Coeur

Library_Madlab.prf

Le model suivant est pour un serveur linux ou les données son recupérer sur une machine windows dans "F:\Sacre_Coeur\library\Madlab"

# Unison preferences
label = Libray Madlab
root = ssh://usabatch@vpn.madlab-animations.com:22125//harmonydata/USA_DB/environments/Sacre_Coeur/library/Madlab/
root = F:\Sacre_Coeur\library\Madlab
batch = true
auto = true
repeat = watch
#repeat = 600
prefer = newer
#logfile = /var/log/unison/BEST_data_madlab_to_akami.log
ignore = Name {*.tmp}
ignore = Name {~$*}
ignore = Name __wip
ignore = Name Old
ignore = Name OLD
ignore = Name old
ignore = Name {*old}
ignore = Name (*.unison.tmp)
#debug=all
#debug=all

La second ligne root peu evidement etre changer par un path linux

Quand vous etre serveur d'un dossier le plus simple est quand meme de fournir le fichier .prf 

Vous pouvez lancer unisson avec cette commande

unison Library_Madlab -dontchmod -perms 0


Unisson sera demarer a distance par l'initiateur (D'ou l'importance qu'il soit dans le path)

Moi quand je le lance sur un machine windows je fait bat avec une boucle infi je le lance dans la session terminal de l'hyperviseur (pas dans un rdp)

:loop
echo Library SacreCoeur
ssh-add
unison Library_Madlab -dontchmod -perms 0

goto loop

Sous linux chmod +x Lauchesynchro.sh quand je lance dans une commande screen

#!/bin/sh
eval `ssh-agent`
ssh-add

while true
	do echo "Sacree coeur Library"
	unison Library_madlab -dontchmod -perms 0
done