radi2025/slides.md
2025-11-10 13:47:11 +01:00

40 KiB
Raw Blame History

theme customTheme width height showNotes controls progess fragmentInURL enableMenu autoPlayMedia enableTitleFooter slideNumber logoImg title
simple slides 1920 1080 false false true true false true false true src/logosmall.png Enquêter sur les pipelines : une approche scientifique des organisations de production

Enquêter sur les pipelines

une approche scientifique des organisations de production


À propos

{.portrait}

Dr. Swann Martinez

{.portrait}

Dr. Rémy Sohier

note: ⏭️

--

Our jobs



note: Swann is an R&D Engineer at Cube/Xilam and worked part-time on the project as a research engineer at INREV.
Rémy is a professor and researcher at INREV, overseeing the Art & Technology of Image program at Paris 8 University.

--

Paneurama






note: This study was co-funded by Europe as part of an Erasmus+ project.
BRIDGE THE GAP BETWEEN SCHOOLS AND STUDIOS
Educational institutions
Industry partners
Associated partners in the Paneurama network
BREDA -> Netherlands, Breda
THE ANIMATION WORKSHOP -> Denmark, Viborg
ANIMATIONINSTITUTE -> Germany, Stuttgart
QVISTEN -> Norway RISE FX -> Germany, Stuttgart
Workshop, research, reports...


Sommaire

  1. Introduction général / Motivations du projet {.fragment}
  2. Démarche de recherche {.fragment}
  3. Axes d'analyses{.fragment}
  4. Limites & Futures{.fragment}

note: Aujourdhui, nous allons parler des pipelines !


Introduction générale

--

Motivations du projet

  • Aider les étudiants et les écoles à mieux comprendre comment fonctionne réellement l'industrie
  • Partager des connaissances ouvertes sur les workflows de pipeline et de production

note: Aider les étudiants et les écoles à comprendre comment les studios fonctionnent vraiment — et pas seulement la version idéalisée des manuels.
Combler le fossé entre l'éducation et l'industrie : une meilleure formation facilite l'intégration des nouveaux artistes.
Promouvoir la connaissance ouverte — partager les schémas de pipeline au lieu de les garder comme des « secrets de studio ».
Construire une cartographie collective des pratiques de production que d'autres peuvent utiliser, enrichir ou remettre en question.


Méthode de recherche

--

Contraintes

  • Culturelle: pipeline = secret professionnel
  • Temporelle: 6 mois

note: Tout d'abord,
Nous avons été confrontés à deux contraintes majeures...

  • Secrets professionnels : beaucoup considèrent le pipeline comme un avantage concurrentiel
  • Temps : nous avions 6 mois de financement pour cette étude initiale

--

Problèmes

  • Comment visualiser un pipeline ?
  • Comment comparer les pipelines entre studios ?

--

Hypothèse

  • Il existe quelque chose de plus profond que le workflow.
  • Avec un modèle de visualisation standard, nous devrions pouvoir comparer les pipelines.
  • Le pipeline pourrait être non transférable d'un studio à l'autre.

--

Périmètre de l'étude

  • Studios français (alumni)
  • Animation 3D
  • Studio avec un état d'esprit opensource

note: Ces contraintes nous ont amenés à restreindre le périmètre de notre recherche. Pour mener une étude comparative, nous nous sommes concentrés sur l'animation 3D. Pour faciliter l'accès aux données et contourner les problèmes de confidentialité, nous avons privilégié les entreprises ayant une culture open source.

--

Protocole de collecte des données

- Comment récupérer et visualiser les informations sur les pipelines ? -

note: Le principal défi était de trouver un moyen de récupérer et de représenter les données des pipelines des studios ! Voyons comment nous avons procédé ⏭️

--

Step 1: Entretients semi-dirigés

  • Cartographie des DCCs[1] {.fragment data-fragment-index="1"}
  • Cartographie du workflow {.fragment data-fragment-index="2"}

= Pourquoi {.fragment data-fragment-index="4"}

Schéma simplifié des départments & DCCs, Flavio Perez, 2017

  • [1] Digital Content Creation tools

note: La première étape consistait à comprendre la finalité du pipeline au sein de l'entreprise et à en obtenir une vue d'ensemble macro.
Pour cela, lors de l'entretien, nous avons recensé les logiciels et les étapes de production, puis les avons cartographiés dans un schéma de base, inspiré des diagrammes de Flavio Perez dans son mémoire de master.
Cela nous donne le "POURQUOI" du pipeline. ⏭️

--

Résultat de l'interview semi-dirigée pour Cube Creative.

note: Nous avons terminé le premier entretien avec des schémas comme celui-ci pour Cube Creative. ⏭️

--

Une représentation simplifiée du workflow depuis l'écriture...

note: Comme vous pouvez le voir, cela cartographie les étapes et logiciels, qu'ils soient intégrés ou non au pipeline, depuis l'écriture... ⏭️

--

jusqu'à la fabrication des assets...

note: jusqu'à la fabrication des assets... ⏭️

--

jusqu'à la fabrication des plans...

note: jusqu'à la fabrication des plans... ⏭️

--

... jusqu'à la livraison des images 🚀 !

note: ... jusqu'à la livraison des images ⏭️

--

Step 2: Directed interviews

Retrieve
  • infrastructure levels
  • processes
  • versionning
  • assets & shot composition
  • file formats
to find out HOW the pipeline is made.

note: The goal of the Data collection process:
1.We aim to get a general overview of the pipeline's motivations
2.We define more precisely its data management

This will give us "how" the pipeline is modeled ==> However, which representation should we use to map this information?? ...

--

Step 3: dataflow mapping methodology

--

Pipeline Patterns [1][2]

Visualize how pipeline data changes accross processes over time and infrastructure .

{.fragment data-fragment-index="2" height=600}

  • [1] B. Polson, « A conceptual framework for pipeline », in Proceedings of the 2015 Symposium on Digital Production, in DigiPro 15. p. 5152. doi: 10.1145/2791261.2791272.
  • [2] B. Polson, « CG pipeline design patterns », in Proceedings of the Fourth Symposium on Digital Production, in DigiPro 14.p. 29. doi: 10.1145/2633374.2637729.
  • More at https://www.pipelinepatterns.com/

note: To do this, we followed the methodology outlined by Bill Polson on pipelinepatterns.com.
This approach consists of representing the fundamental elements of a pipeline and their relationships... ⏭️ So basically how data is modified by process accross time and infrastructure And this happens in two dimensions! Vertically, we have the infrastructure, and horizontally, we have time.
Lets look at an example from Cube Creatives pipeline ⏭️

--

Cube Creative pipeline datadlow.

note: With this methodology, we can represent the complete dataflow of a pipeline.
Lets take a closer look at the asset modeling workspace ⏭️

--

Asset modeling workspace

note: We observe that Blender is used for this production step. Without surprises, the working scene contains only geometry information from the pipelines perspective. From Blender, artists export playblasts using the Tournette process (an internal addon) and modeling LODs via a push. ⏭️

--

Asset modeling workspace

note: As you can see vertically, these exported elements are synchronized with the server. However, only the playblast and the working file are versioned; the LODs are not. ⏭️

--

Asset shading workspace

note: Next comes the shading step... Unfortunately, it would take too long to explain each step's dataflow in detail.
Just remember that this methodology was used to model the pipelines of all participating studios from the start... ⏭️

--

Shot compositing workspace

note: ..to the end of its scope in the production.


Participating Studios

note: Thank you remy !
Let's introduce the studios who kindly agreed to open their doors and share their pipelines:
Cube Creative, Autour de Minuit, and Normaal Animation. ⏭️

--


Github link 👇

{width=300px .roundedcorner}

note: Cube Creative is a studio within the Xilam group, known for IPs such as Kaeloo, Athléticus, and Where's Chicky?
They specialize in tv shows and short films.
Many of their production tools are available on GitHub, which you can see here ;)
Every year, they participate in the Blender Conference to present various aspects of their pipeline or productions. ⏭️

--


Stax Toolsuite link 👇

{width=300px .roundedcorner}

note: Normaal Animation is a studio specialized in 2D/3D series, known for many licenses such as Barbapapa, among others.
The studio's pipeline lead is the developer behind Stax, an amazing production-ready review solution based on Blender and open source !
I've included the link on the right ⏭️

--


Public Gitea instance 👇

{width=300px .roundedcorner}

note: Autour de Minuit is a French studio, well known for projects like the movie "Unicorn Wars" and the TV show "Non-Non."
They are specialist in blending 2D and 3D techniques in blender with unique storytelling.
They also host their own Gitea instance, where they share productions-ready awesome addons such as a character picker ! ⏭️


Comparative study

note: Now that the introductions are done, let's dive into the study

--

Studied Projects

note: And we will firstly introduce the projects that served as the basis for our pipeline mapping survey. ⏭️

--

Studied Projects

note: For Cube Creative, we studied the pipeline of Where's Chicky?.
For Autour de Minuit, we mapped their new show in pre-production, OhWow !
And for Normaal, we documented the pipeline used for the tv show Wooly Wooly.
A few notes on the format of these projects ⏭️

--

Studied Projects

  • format: 52x1" episodes
  • style: 3D animation
  • format: 52x7" episodes
  • style: 3D animation
  • format: 51x11" episodes
  • style: 3D animation

note: All three projects are pre-school 3D animated TV shows.
The project's format varies slightly between productions, espetially for Wheres' Chicky.
One thing to note is that the Chicky pipeline was also used for their new series, Piggy Builders (52x11"). We will know slowly dive into pipeline details of each production ⏭️

--

Productions steps

note: Please note that we will focus only on production details and skip pre-production & post-production, as they are outside the pipeline scope..
Let's Start with production steps . ⏭️

--

Productions steps: assets

{.portraitsquared} Modeling ➡️ Shading ➡️ Rigging ➡️ Animation Bank (Characters)
{.portraitsquared} Modeling ➡️ Surfacing ➡️ Setup
{.portraitsquared} Modeling ➡️ Surfacing ➡️ Setup

note: At Cube, asset frabrication starts with...
The animation bank step consists of creating facial expressions and animation cycles, which are then reused during shot animation.
At Autour de Minuit...
And finally, at Normaal...
As you can see, all three studios have similar asset production steps. ⏭️

--

Productions steps : Shots

{.portraitsquared} Layout ➡️ Animation ➡️ Rendering ➡️ Compositing
{.portraitsquared} Layout ➡️ Animation ➡️ FX ➡️ Lighting
{.portraitsquared} Layout ➡️ Animation & FX ➡️ Rendering ➡️ Compositing ➡️ editing

note: For shot construction:
We have ... for Chicky
For OhLala: ...
For Wooly Wooly: ... Please note that compositing and editing are off-pipeline scope for wooly wooly.
The main difference here is that, at Cube, FX are built as reusable assets instead of being created per shot.
At ADM and Normaal, some FX are made directly in the shot.
Now, which software is used for these steps? ⏭️

--

Production softwares







note: All three productions use similar software environments, with some differences.
To improve clarity, DCCs beyond the pipeline scope are shown in gray.
On Where's Chicky ...
On OhWow ...
On Wooly Wooly ...
Storyboard Pro is used in all three cases for storyboarding during pre-production.
For post-production, Nuke and the Adobe suite are also used.
However, Blender is the main 3D production tool for all three, and Kitsu is used for production tracking. ⏭️

--

Simplified workflow Recap'

  • Same project format{.fragment data-fragment-index="0" }
  • Similar production steps{.fragment data-fragment-index="1" }
  • Similar DCC's[1]{.fragment data-fragment-index="2" }

But what about the dataflow ?

  • [1] Digital Content Creation tools

note: To summarize the details we just covered,
we have three projects with similar formats, as well as similar production steps and DCCs.
But what about the underlying dataflow? ⏭️

--

Dataflow insights

{width=700}

note: What is fascinating about this study is that the mapped pipelines show some similarities, but above all, many differences. Especially in dataflows ⏭️

--

{width=1200}

note: I know it's hard to see everything here ^^
But even from a distance, you can visualize three very different dataflows! ⏭️

--

Sudied aspects

Scene building strategies {.fragment}

Asset update propagation patterns{.fragment}

Infrastructure architecture {.fragment}

Standard file formats implications {.fragment}

Resource libraries{.fragment}

Work versionning strategies{.fragment}

Software environment{.fragment}

... {.fragment}

note: These mappings allowed us to study many aspects of the audited pipelines!
Among these, we have...
As we won't have time to cover all these points in detail, we've selected the most significant one for this presentation. The full details will be published in an upcoming article. ⏭️

--

Asset update propagation patterns

How update propagate through the fabrication ?

note: Work propagation is one of the most interesting aspects to study.
In a pipeline, this term refers to how update propagate through the fabrication process. ⏭️

--

Tow mecanisms used

⬆️ Push

Automatic updates when an asset is published

⬇️ Pull

Updates applied manually from shots

note: In the three pipelines studied, we identified two main assets propagation patterns:
-The Push, where updates are automatically propagated
-The Pull, where updates are manually retrieved
Lets take a closer look at how this is modeled in a Blender dataflow... ⏭️

--

⬆️ Push : how ?

{width=1600 .fragment current-visible data-fragment-index="0"}

{width=1600 .fragment current-visible data-fragment-index="1"}

{width=1600 .fragment current-visible data-fragment-index="2"}

{width=1600 .fragment current-visible data-fragment-index="3"}

{width=1600 .fragment current-visible data-fragment-index="4"}

{width=1600 .fragment current-visible data-fragment-index="5"}

{width=1600 .fragment current-visible data-fragment-index="6"}

{width=1600 .fragment current-visible data-fragment-index="7"}

Asset latest state saved{ .fragment .current-visible data-fragment-index="2"}

Asset hero version linked in the layout scene during the build {.fragment .current-visible data-fragment-index="3"}

Asset hero version linked in the animation scene during the build {.fragment .current-visible data-fragment-index="4"}

Asset hero version overwritten during the publish {.fragment .current-visible data-fragment-index="6"}

Layout and Animation scene automatically updated on loading.{.fragment .current-visible data-fragment-index="7"}

note: To simply explain the push mechanism:
Imagine you have an asset shading step, followed by layout and animation steps for shots.
The shading artist works on the v1 version of the asset's shading. As the work progresses, they publish (save as) the latest version in the "push zone / hero version."
Then Layout and animation scenes are built by creating a link to this hero version.
With this setup, whenever the shading artist creates a new version and updates the hero version, it is automatically propagated to all layout and animation shots using it !
This method is very convenient for automatically updating scenes and fast iterations.
However, automatic updates are not always desirable, as they can modify shots that have already been artistically approved.
But Where is this mechanism used in the studied productions? ⏭️

--

⬆️ Push : Where ?


  • Method: Link
  • Scope: Background props assets, all steps


  • Method: Link & Overrides
  • Scope: All assets, Layout only

note: Push is used by only two productions, and only partially.
In the case of Chicky, the push is applied throughout the entire production chain, but only for one asset type: background components.
For Wooly Wooly, the push is used for all assets up to the layout stage. Pull becomes the preferred method after layout, at the start of animation.
It's intersting to see where but most of all to see how each studios implemented the method. I will only show you a simplified view of it.

--

⬆️ Push : Implementations


{width=1000}

Chicky push example (simplified)

note: For Chicky, the initial step of the push mechanism is still the publishing step. However, here, several versions of the same aspect of the asset are exported—these are called Level of Details (LODs).
As previously shown, these LODs are then directly linked into the shot scenes.
The linked LOD version is chosen based on the production step or the asset's distance from the camera.

--

⬆️ Push : Implementations


{width=1000}

Wooly Wooly push example (Simplified)

note: On Wooly Wooly, the push mechanism is closer to the initial example we saw.
However, as you can see, its not just a single hero version that gets published from the asset task.
Each publish iteration is saved in the publish area,
but with every publish, the hero version at the bottom is overwritten.
The published versions are then used for the pull mechanism, which well discuss next.
Now, let's take a look at the Pull mechanism... ⏭️

--

⬇️ Pull : How ?

{width=1600 .fragment current-visible data-fragment-index="0"}

{width=1600 .fragment current-visible data-fragment-index="1"}

{width=1600 .fragment current-visible data-fragment-index="2"}

{width=1600 .fragment current-visible data-fragment-index="3"}

{width=1600 .fragment current-visible data-fragment-index="4"}

{width=1600 .fragment current-visible data-fragment-index="5"}

Asset's version directly linked.{ .fragment .current-visible data-fragment-index="2"}

Updates are made individually in shots files {.fragment .current-visible data-fragment-index="4"}

note: As usual, the artist will start by creating a first version of an asset. The main difference with the pull mechanism is that shot scenes have a specific asset version linked, rather than a single "hero" version that is regularly overwritten.
What does this mean in practice? It simply reverses the update process !
When a new version is published, each shot must be updated individually to point to the new asset version.
This process can be very tedious to do manually, so studios often develop custom tools to automate it
Speaking of this, lets see where the studio's used this mecanism... ⏭️

--

⬇️ Pull : Where ?

{.portraitsquared}

All assets from animation to rendering with link & overrides

{.portraitsquared}

Character and Props in all steps with links

{.portraitsquared}

All asset in all steps with links + overrides

note: In the case of Wooly Wooly, assets are "frozen" to the latest published version starting from the animation step. From that point on, asset updates are applied individually for each shot.
At Cube, for Chicky, all animated assets use the pull mechanism from layout to rendering!
Finally, for OhWow!, every production step relies on the pull approach. ⏭️

--

⬇️ Pull : Implementations

note: But how the pull is implemented by each pipeline ? ⏭️

--

⬇️ Pull : Implementations


{width=1000}

Wooly Wooly pull example (Simplified)

note: As see previously, on Wooly Wooly, during asset publishing,
the new asset version get's copied into the publish area and the hero one is overwritten.
On their side, the main difference with the push lies in the linked blendfile: Instead of pointing to the hero version, it's points to the versionned file. ⏭️

--

⬇️ Pull : Implementations


{width=1000}

Where's chicky pull example (Simplified)

note: In Where's Chicky, the pull implementation doesn't use any links because library overrides wheren't trusted enough by the production.
So, instead of linking assets in the shot scene as in the pull approach, assets are directly appended.
It means that the assets lives directly in shot scenes, and a new append is neeeded for each update.

--

⬇️ Pull : Implementations


{width=1000}

Ohlala! pull example (Simplified)

note: Finally, on Ohlala, asset working versions are directly linked into shot scenes.
This requires artists to be highly disciplined in organizing their scenes, as there is no the safety margin of the publish area.
On the other hand, this approach greatly reduces disk space usage since data is not duplicated. ⏭️

--

Assets updates propagation : Recap'

Three strategies to do it

{.portraitsquared}


  • Push for static assets.
  • Pull for animated assets 

= Per-asset type strategy

{.portraitsquared}


  • Pull accross all the production

= Global strategy

{.portraitsquared}


  • Push for all asset until Layout
  • Pull  from Animation

= Per-step strategy

note: À quick recap of propagation strategies per production
On Chickies, the push is mainly used for static assets, pull for animated assets
On holala, the pull is used everywhere
And finally, we have an hybrid strategy per shot step for wooly wooly. ⏭️

--

Push 🆚 Pull

+

Support asset's fast iteration

Reduce development effort

-

Less control over updates propagation

Require a good communication

+

Update control granularity

Better history tracking

-

Require tools developments

Slow asset iteration

note: Let's briefly look at some advantages and disadvantages of these two complementary methods.
On one hand, the push supports fast asset iteration, but it does not allow for granular control over updates in shot files—pull is preferable here.
On the other hand pull makes it easier to respect a validation chain.
From a purely technical perspective, the pull requires more development effort, since updating references means opening scenes and changing links.
The Push pattern relies entirely on Blender's native mechanisms and therefore requires very little development from the pipeline team.


Final thoughts

note: Unfortunately, we won't have time today to go further into the details of the data we collected.
However, feel free to come see us after the presentation if you would like more information.
Before we finish, let's look at the limitations and future directions of this study ⏭️

--

note:

--

--

--

--

--

Mapping methodology limits

  • Validation data
  • Attributes overrides
  • Production tracker

note: First of all, it's important to note that the mapping methodology we used for dataflow did not provide a way to represent Blender's override mechanism.
It also did not address the role of the production tracker.
We therefore extended the set of our diagrams to include these two elements.
We plan to share a library of shapes for drawio/diagram.net to make it easier to create these diagrams. ⏭️

--

Data sample limits

  • Only french studios
  • Only TV Show projects

note: Initially, the study focused on a small group of companies to explore the project's feasibility. Additionally, we only examined TV series projects. ⏭️

--

Futures

  • Interview european studio's {.fragment}
  • Map other project formats (movies, VFX, games) {.fragment}
  • Bring interactive online visualisation of studied pipelines {.fragment}

note: In the future, we hope to broaden the scope of this study by surveying European studios to understand how socio-economic factors in different countries impact pipeline structures.
We also aim to map pipelines used in other project formats to compare their structures.
Improving the accessibility of these mappings is another major focus. ⏭️

--

Thanks you !

📧 Participate to the study

{width=300}

❤️ Thanks to the contributors

  • Félix David (Normaal)
  • Christophe Seux (ADM)
  • Florentin Luce (ADM)
  • Axel Tillement (Cube)
  • Dorothée Lanchier (Xilam)

note: Thanks a lot for listening ! If you represent a studio and are interested in participating, feel free to come talk to us directly or send an email to this address!
Don't hesitate to reach out if you have any questions!