Bernard Engine · Moteur de production · Animation et VFX · Depuis 2015
Toute la production, en direct.Bernard tient les comptes. Vous faites les images.
Ici, personne ne coche « prêt à démarrer ». L'état de chaque tâche se calcule à partir du workflow : quand l'étape d'avant est finie, la suivante s'ouvre, les scripts se lancent, les bonnes personnes sont prévenues.
● Bientôt open source · tout le code
Bernard Engine devient open source. Tout le code.
Le code sera publié : vous pourrez installer Bernard sur vos serveurs, le lire, le modifier, y brancher vos outils. Ou nous laisser l'héberger, le sauvegarder et le mettre à jour, et ne penser qu'à la production.
- Chez vousInstallé sur vos serveurs, gratuitement. Vos données ne sortent pas du studio.
- Chez nousUn environnement par studio, sauvegardé et mis à jour par AArts Lab. Un prix par studio, pas par tête.
- Avec vousScripts, plugins, intégrations : la communauté construit avec nous.
MoniqueGérard, le code de Bernard va être publié.
GérardTout le code, Monique ?
MoniqueTout le code.
GérardMême la moustache ?
MoniqueMême la moustache, Gérard.
Qui est Bernard ?
« The key is located in the graph workflow structure, not in the states multiplicity. »
— Bernard, séance de brainstorming, 21 mars 2015
Bernard porte des lunettes, une moustache, et connaît chaque plan du studio par son nom. Ce n'est pas un tableau de suivi de plus : c'est un moteur, centré sur le studio plutôt que sur un projet. Il range tout le studio dans un seul arbre (projets, équipes, postes, modèles), fait avancer les tâches, lance les scripts, copie les fichiers et prévient les bonnes personnes.
BernardBonjour. Je suis Bernard. Je suis un moteur de production.
Jean-PierreEt ça mange quoi, un moteur de production, Bernard ?
BernardDes plans, Jean-Pierre. Beaucoup de plans.
Jean-Pierre regarde la caméra. Il ne sait pas quoi faire de cette information.
01 · Le workflow
Le graphe décide. Pas les étiquettes.
Chaque plan a son workflow : un graphe de tâches reliées, regroupées en étapes (les compounds). Bernard n'a que sept états. L'artiste décide de commencer, de faire une pause, de finir ; tout le reste (qui peut commencer, qui doit attendre, ce qui repart en arrière) se déduit du graphe, calculé par le serveur pour tout le monde en même temps.
D'habitude
L'état d'une tâche est une étiquette que quelqu'un pense à changer. La liste des statuts s'allonge à chaque production, et le tableau dit ce qu'on lui a dit.
Avec Bernard
L'état se calcule : une tâche ne peut commencer que si ce qui la précède est fini. Le tableau dit où en est vraiment la production, et un poste ne peut pas forcer un état que le graphe refuse.



Règle 1
« Prête » ne se coche pas : elle se calcule.
Une tâche passe Ready toute seule quand tout ce qui la précède est Done. Ici, Comp s'ouvrira quand Validation Lead et Export caches seront finis. L'artiste est prévenu.
Règle 2
Le retake fait domino.
Un verdict Not Approved en revue rouvre la tâche terminée, et tout ce qui la suit repasse Waiting, même ce qui était fini. Approved fait avancer d'une étape, jamais plus.
Règle 3
Un script est une tâche comme les autres.
Une tâche Script (un contrôle de scène, un export de caches, un ingest) se lance d'elle-même quand elle passe Ready, sur le poste désigné. Code de sortie 0 : Done, et la suite s'enchaîne. Sinon : Failed, avec son journal.
Règle 4
Changez le modèle, pas 800 plans.
Ajoutez une étape au workflow du modèle : elle arrive sur tous ses plans, avec pause et reprise. Là où le travail d'après a déjà commencé, elle naît Aborted : aucun plan fini ne repart en arrière.
MoniqueGérard, j'ai refusé le polish du plan 30.
GérardTrès bien, Monique. Le compositing est déjà repassé en attente.
MoniqueDéjà ?
GérardC'est le graphe, Monique. Le graphe.
Gérard hoche la tête avec assurance. Gérard ne sait pas ce qu'est un graphe.
Et aussi : les Triggers (« quand l'état passe à Done, lance cette action »), les Events programmés (une fois, chaque heure, jour ou semaine), et l'API Python pour tout le reste.
02 · Pour chacun
Un seul Bernard, quatre métiers.
Production
Savoir où on en est
Spreadsheet Multi, Gantt et Workload, temps passé réel contre budget (Time Delta), export des temps. L'équipe du projet est assignée automatiquement, par département et par rôle.
Leads et superviseurs
Valider, renvoyer
Tâches de validation, instructions à cocher avant Done, notes et retakes depuis la revue : le graphe suit vos verdicts.
Artistes
Ouvrir, travailler, publier
Ses tâches, ses consignes, le bon fichier ouvert dans son logiciel, Save & Increment dans les plugins, et le temps qui se compte tout seul.
TD pipeline
Tout automatiser
Tâches script, Triggers, Events, actions, expressions de chemins et API Python : le pipeline se branche sur le graphe.
03 · Suivre
Tout le studio dans un seul arbre. Et chacun y trouve sa vue.
Projets, séquences, plans, assets, tâches : chaque objet porte ses propriétés, et chaque profil a la vue qui lui sert. Les presets d'écran peuvent être imposés par rôle.
Spreadsheet
Le tableur qui suit
Tri, filtres par colonne (et filtre inversé), filtrage côté serveur pour les gros projets, vignettes, édition en masse, copie vers Excel.
Spreadsheet Multi
Une ligne par plan
Un groupe de colonnes par étape ou par département, avec la tâche en cours de chacune.
Properties
Tout sur un objet
Notes, fichiers, historique, assignations, instructions, actions : en onglets, au même endroit.
Nodal View
Le workflow sous les yeux
Le graphe de chaque plan, ses étapes et l'état de chaque tâche, en direct.
Notifications
Les bonnes personnes, prévenues
Dans Bernard ou par e-mail en récapitulatif, au choix de chacun, type par type.
Rôles
Des droits fins
Création, états, workflows, temps, fichiers, réglages : chaque rôle voit et fait ce qu'il doit.
04 · Fichiers et sites
Les bons fichiers, au bon endroit. Sur chaque site.
Les chemins sont calculés à partir de vos règles de nommage, avec une variation par système et par site. Bernard copie et déplace les fichiers entre disques, partages et serveurs SFTP, et garde la trace de chaque opération.
- Path Edit et expressions :
<name>_v<version>, avec coloration, autocomplétion et contrôle des noms. - Versions : ajout, incrément, fichiers rattachés à chaque objet.
- Copies entre sites par rclone, débit réseau plafonné, journal des opérations.
- Ingest des livraisons, import depuis des dossiers ou des tableaux.
- Présence sur le disque surveillée en direct.
05 · Revoir Inclus · gratuit
Bernard Review est inclus. Et il ne coûte rien.
Le lecteur de revue Bernard Review s'installe avec Bernard, gratuitement, et il est open source lui aussi. EXR multicouches, RAW de caméra, A/B, annotations : on revoit, on note, et la revue fait avancer le graphe. Avant de publier, le récapitulatif montre l'état que prendra chaque tâche : approuvée, elle avance ; refusée, elle repart à l'artiste et le domino suit.
- Notes et corrections rattachées à un fichier et à une version.
- Instructions à cocher, importables depuis un tableau Excel.
- Playlists dans l'arborescence, ou temporaires sur le poste.
- Revue à distance avec des invités dans le navigateur : en option, sur bernardreview.com.
06 · Temps et planning
Le temps passé se compte tout seul. Les feuilles de temps, c'était avant.
Une tâche en WIP compte le temps de ses assignés ; une seule tâche en cours par personne, la précédente se met en pause. Inactivité, fermeture, déconnexion : la tâche passe en Pause et le compteur s'arrête à l'heure réelle.
Planning
Gantt et charge
Plusieurs plannings côte à côte, la charge de travail de chacun (Workload), puis « Validate your plan ».
Working Time
Présences et absences
Types de jours, horaires, absences : le calendrier du studio.
Budget
L'écart, en un coup d'œil
Time Delta dans le tableur, export des temps pour la paie ou la compta.
SylvieRoger, combien de temps avez-vous passé sur le plan 12 ?
RogerJe l'ignore, Sylvie.
SylvieMoi, je le sais : sept heures trente.
RogerComment le savez-vous ?
SylvieJe ne le sais pas, Roger. C'est Bernard qui le sait.
En production depuis 2015
Dix ans de production. Et même une banque.
Bernard tourne depuis dix ans dans des studios d'animation, des studios d'effets visuels… et dans une banque. Personne ne sait très bien ce qu'il y fait. Mais les tâches avancent.
Où l'on croise Bernard
10 ans
- des studios d'animation
- des studios d'effets visuels
- une banque (Bernard n'a pas posé de questions)
Thomas Lhomme · CG Supervisor, Milk VFX
« Bernard Engine me permet de créer des workflows très complexes en quelques clics, avec des automatisations puissantes qui auraient demandé une grosse équipe de développement avec d'autres outils de suivi de production. »
Traduit de l'anglais
Soal Givord · Head of Pipeline, In The Box
« Nous utilisons Bernard depuis plusieurs mois : c'est une solution robuste et structurante pour la gestion du studio et le suivi de projet. Vivement les nouvelles fonctionnalités ! »
Traduit de l'anglais
07 · Intégrations
Bernard parle à vos logiciels. Et à vos scripts.
Les plugins s'installent depuis Settings › Plugins Manager. L'artiste ouvre le bon fichier depuis sa tâche, Bernard lui propose de la passer en WIP ; il publie sa version, et le graphe suit.
Référence de l'API : bernardengineapi.readthedocs.io
08 · Déploiement et sécurité
Chez nous, ou bientôt chez vous. Vos fichiers ne bougent pas.
- Service hébergé par AArts Lab, un environnement par studio.
- Communications chiffrées entre les postes et le service.
- Postes autorisés par un administrateur, avec une liste d'adresses IP par poste.
- Sessions : déverrouillage, fermeture par un administrateur avec la raison affichée.
- Citrix et bureau à distance : partages en lecture seule, transferts bridés.
Bernard vous remercie de votre attention.
Il retourne à ses plans.