Refactor code structure for improved readability and maintainability

This commit is contained in:
Swann 2025-11-13 23:13:44 +01:00
parent 0082dbb0a5
commit 992ec04cba
4 changed files with 39 additions and 167 deletions

206
slides.md
View file

@ -262,10 +262,10 @@ Voyons maintenant **comment** nous avons abordé cela
-- --
## Hypothèse ## Hypothèses
- Il existe quelque chose de **plus profond que le workflow**. - Il existe quelque chose de **plus profond que le workflow**.
- Avec un **modèle de visualisation standard**, nous devrions pouvoir comparer les pipelines.<br> - 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. - Le pipeline pourrait être **non transférable** d'un studio à l'autre.
-- --
@ -293,7 +293,7 @@ Le principal défi était de trouver un moyen de récupérer et de représenter
-- --
### Step 1: <span class="fragment" data-fragment-index="0">Entretients semi-dirigés</span> ### Étape 1: <span class="fragment" data-fragment-index="0">Entretients semi-dirigés</span>
<div class="twocolumncenter"> <div class="twocolumncenter">
<div> <div>
@ -389,13 +389,13 @@ note:
-- --
### Step 2: <span class="fragment" data-fragment-index="0">Entretiens dirigés</span> ### Étape 2: <span class="fragment" data-fragment-index="0">Entretiens dirigés</span>
<div style="text-align: center;"> <div style="text-align: center;">
<div class="fragment" style="display:inline;" data-fragment-index="1">Récupérer <div class="fragment" style="display:inline;" data-fragment-index="1">Récupérer
<img style="vertical-align: middle;" width=4% src="./src/accolades_o.svg"></div> <img style="vertical-align: middle;" width=4% src="./src/accolades_o.svg"></div>
<ul style="list-style-type: none; margin: 0; vertical-align: middle;text-align:center;"> <ul style="list-style-type: none; margin: 0; vertical-align: middle;text-align:center;">
<li data-fragment-index="2" class="fragment" >niveaux d'infrastructure </li> <li data-fragment-index="2" class="fragment">niveaux d'infrastructure </li>
<li data-fragment-index="3" class="fragment">processus </li> <li data-fragment-index="3" class="fragment">processus </li>
<li data-fragment-index="4" class="fragment">versionning </li> <li data-fragment-index="4" class="fragment">versionning </li>
<li data-fragment-index="5" class="fragment">compisition d'assets & shot</li> <li data-fragment-index="5" class="fragment">compisition d'assets & shot</li>
@ -415,13 +415,13 @@ Cela nous donne le « comment » le pipeline est modélisé ==> Mais alors, que
-- --
## Step 3: Méthodologie de cartographie du dataflow ## Étape 3: Méthodologie de cartographie du dataflow
-- --
### Pipeline Patterns <font size=6.6em><sup>[1][2]</sup></font> ### Pipeline Patterns <font size=6.6em><sup>[1][2]</sup></font>
<span data-id="pipeexplanation"><span class="fragment" data-fragment-index="0">Visualise comment <font color=red>**les données**</font></span> <span class="fragment" data-fragment-index="1"> changes à travers des <font color=red b>**processus**</font></span></span> <span class="fragment" data-fragment-index="2">à travers le temps et <font color=red> **l'infrastructure** </font>.</span> <span data-id="pipeexplanation"><span class="fragment" data-fragment-index="0">Visualise comment <font color=red>**les données**</font></span> <span class="fragment" data-fragment-index="1"> changes à travers des <font color=red b>**processus**</font></span></span> <span class="fragment" data-fragment-index="2">selon un axe temporel et <font color=red> **d'infrastructure** </font>.</span>
<div class="r-stack"> <div class="r-stack">
@ -525,38 +525,13 @@ note:
<!-- .slide: data-stack-name="Participating studios" data-auto-animate data-transition-speed="slow" --> <!-- .slide: data-stack-name="Participating studios" data-auto-animate data-transition-speed="slow" -->
## Studio participants ## Studios participants ❤️
<div class="threecolumn"> <div class="threecolumn">
<img data-id="cubetrans" src="./src/cube.png" width=90% class="fragment"/>
<img src="./src/autour-de-minuit.jpg" width=90% class="fragment"/>
<img src="./src/Normaal.jpg" width= 90% class="fragment"/>
</div>
note:
Présentons les studios qui ont gentiment accepté d'ouvrir leurs portes et de partager leurs pipelines :
Cube Creative, Autour de Minuit et Normaal Animation. ⏭️
--
<img data-id="cubetrans" src="./src/cube.png" width=30% />
<hr>
<div class="twocolumncenter">
<div> <div>
<img src="./src/affiche_ATH.jpg" height=400px/> <img data-id="cubetrans" src="./src/cube.png" width=90% class="fragment"/>
<img src="./src/affiche_CKY.png" height=400px/>
<img src="./src/affiche_KAE.jpg" height=400px/>
More at https://www.cube-creative.com/
</div>
<div> <div>
Github link 👇 Github link 👇
@ -565,57 +540,8 @@ Github link 👇
</div> </div>
</div> </div>
note:
**Cube Creative** est un studio du groupe Xilam, **connu pour des licences** telles que *Kaeloo*, *Athléticus* et *Where's Chicky?*<br>
Ils sont spécialisés dans les séries TV et les courts-métrages.
Beaucoup de leurs outils de production sont disponibles sur GitHub, que vous pouvez voir ici ;)
Chaque année, ils participent à la Blender Conference pour présenter divers aspects de leur pipeline ou de leurs productions.
<img src="./src/Normaal.jpg" width=30% />
<hr>
<div class="twocolumncenter">
<div> <div>
<img src="./src/normaal_barba.png" height=300px/> <img src="./src/autour-de-minuit.jpg" width=90% class="fragment"/>
<img src="./src/normaal_peanuts.png" height=300px/>
<img src="./src/normaal_zouk.png" height=300px/>
More at https://normaal.fr/
</div>
<div>
Stax Toolsuite 👇
![](./src/stax_link.svg){width=300px .roundedcorner}
</div>
</div>
note:
**Normaal Animation** est un studio spécialisé dans les séries 2D/3D, connu pour de nombreuses licences comme Barbapapa, entre autres.
**Le responsable pipeline du studio** est le développeur de Stax, une solution de review open source, production-ready basée sur Blender !
J'ai mis le lien à droite ⏭️
<!-- .slide: data-background-video="./src/normaal_showreel.mp4" data-background-video-loop data-background-opacity=0.2 data-background-video-muted-->
--
<img src="./src/autour-de-minuit.jpg" width=30% />
<hr>
<div class="twocolumncenter">
<div>
<img src="./src/adm_caribou.jpg" height=400px/>
<img src="./src/adm_nonnon.png" height=400px/>
<img src="./src/adm_unicornwars.jpg" height=400px/>
More at https://blog.autourdeminuit.com/
</div>
<div> <div>
Instance Gitea publique 👇 Instance Gitea publique 👇
@ -623,18 +549,26 @@ Instance Gitea publique 👇
</div> </div>
</div>
<div>
<img src="./src/Normaal.jpg" width= 90% class="fragment"/>
<div>
Stax Toolsuite 👇
![](./src/stax_link.svg){width=300px .roundedcorner}
</div>
</div>
</div> </div>
note: note:
**Autour de Minuit** est un studio français, bien connu pour des projets comme le film "Unicorn Wars" et la série "Non-Non." Présentons les studios qui ont gentiment accepté d'ouvrir leurs portes et de partager leurs pipelines :
**Ils** sont spécialistes du mélange des techniques 2D et 3D dans Blender avec un storytelling unique. Cube Creative, Autour de Minuit et Normaal Animation. ⏭️
Ils hébergent aussi leur propre instance Gitea, où ils partagent des addons prêts pour la production, comme un character picker ! ⏭️
<!-- .slide: data-background-video="./src/adv_showreel.mp4" data-background-video-loop data-background-opacity=0.2 data-background-video-muted -->
--- ---
## Comparative study ## Étude comparative
note: note:
**Now that** the introductions are done, let's dive into the study **Now that** the introductions are done, let's dive into the study
@ -643,7 +577,7 @@ note:
-- --
## Studied Projects ## Projets étudiés
note: note:
**And we will firstly introduce** the projects that served as the basis for our pipeline mapping survey. ⏭️ **And we will firstly introduce** the projects that served as the basis for our pipeline mapping survey. ⏭️
@ -652,7 +586,6 @@ note:
-- --
## Projets étudiés ## Projets étudiés
<div class="threecolumn"> <div class="threecolumn">
@ -685,7 +618,7 @@ note:
-- --
## Studied Projects ## Projets étudiés
<div class="threecolumn"> <div class="threecolumn">
@ -729,17 +662,9 @@ note:
-- --
## Étapes de production
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 . ⏭️
<!-- .slide: data-auto-animate data-transition-speed="slow" --> <!-- .slide: data-auto-animate data-transition-speed="slow" -->
-- # Productions steps: assets
## Productions steps: assets
| | | | | |
|-|-| |-|-|
@ -747,18 +672,11 @@ note:
| ![](./src/ohlala_adv.avif){.portraitsquared} | <font class="fragment" size=50>Modeling ➡️ Surfacing ➡️ Setup</font> | | ![](./src/ohlala_adv.avif){.portraitsquared} | <font class="fragment" size=50>Modeling ➡️ Surfacing ➡️ Setup</font> |
| ![](./src/whooly_whooly.png){.portraitsquared} | <font class="fragment" size=50>Modeling ➡️ Surfacing ➡️ Setup</font> | | ![](./src/whooly_whooly.png){.portraitsquared} | <font class="fragment" size=50>Modeling ➡️ Surfacing ➡️ Setup</font> |
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. ⏭️
<!-- .slide: data-auto-animate data-transition-speed="slow" --> <!-- .slide: data-auto-animate data-transition-speed="slow" -->
-- ## <span data-id="test">Étapes de fabrication :</span> Shots
## <span data-id="test">Productions steps :</span> Shots
| | | | | |
|-|-| |-|-|
@ -780,7 +698,7 @@ At ADM and Normaal, some FX are made directly in the shot.
-- --
## Production softwares ## Outils de fabrication
<div class="threecolumn"> <div class="threecolumn">
@ -841,15 +759,15 @@ On *Wooly Wooly* ...
-- --
### Simplified workflow Recap' ### Recapitulatifs du workflow simplifié
- Same project format{.fragment data-fragment-index="0" } - Des formats de projets similaires{.fragment data-fragment-index="0" }
- Similar production steps{.fragment data-fragment-index="1" } - Des étapes de fabrications similaires {.fragment data-fragment-index="1" }
- Similar DCC's<sup>[1]</sup>{.fragment data-fragment-index="2" } - Des DCC's<sup>[1]</sup> similaires{.fragment data-fragment-index="2" }
<br> <br>
<font color=red size=30 class="fragment">**But what about the dataflow ?**</font> <font color=red size=30 class="fragment">**Mais qu'en est-il du dataflow ?**</font>
<div class="fragment footnote" data-fragment-index="2" > <div class="fragment footnote" data-fragment-index="2" >
@ -863,7 +781,7 @@ we have three projects with similar formats, as well as similar production steps
-- --
### Dataflow insights ### Dataflow
![](./src/underthehood.gif){width=700} ![](./src/underthehood.gif){width=700}
@ -872,11 +790,11 @@ What is fascinating about this study is that the mapped pipelines show some simi
-- --
![](./src/dataflow_adv_holala.svg) ![](./src/dataflow_adv_holala_published.png)
![](./src/dataflow_cube_chicky.drawio.svg) ![](./src/dataflow_cube_chicky_published.png)
![](./src/dataflow_normaal_wooly_wooly_retakes.svg){width=1200} ![](./src/dataflow_normaal_wooly_wooly_published.png){width=1200}
note: note:
**I know** it's hard to see everything here ^^<br> **I know** it's hard to see everything here ^^<br>
@ -1335,51 +1253,6 @@ note:
**However,** feel free to come see us after the presentation if you would like more information. **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 ⏭️ **Before we finish,** let's look at the limitations and future directions of this study ⏭️
--
<div data-id="pipecube" class="schema">
<img src="./src/paint-icerberg.png" style="height:3200px; position:relative; right:1800px;top:150px;max-width:none;"/>
</div>
note:
<!-- .slide: data-auto-animate data-transition-speed="slow" -->
--
<div data-id="iceberg" class="schema">
<img src="./src/paint-icerberg.png" style="height:3200px; position:relative; right:1800px;top:-500px;max-width:none;"/>
</div>
<!-- .slide: data-auto-animate data-transition-speed="slow" -->
--
<div data-id="iceberg" class="schema">
<img src="./src/paint-icerberg.png" style="height:2200px; position:relative; right:900px;top:-700px;max-width:none;"/>
</div>
<!-- .slide: data-auto-animate data-transition-speed="slow" -->
--
<div data-id="iceberg" class="schema">
<img src="./src/paint-icerberg.png" style="height:2000px; position:relative; right:900px;top:-1300px;max-width:none;"/>
</div>
<!-- .slide: data-auto-animate data-transition-speed="slow" -->
--
<div data-id="iceberg" class="schema">
<img src="./src/paint-icerberg.png" height=800/>
</div>
<!-- .slide: data-auto-animate data-transition-speed="slow" --> <!-- .slide: data-auto-animate data-transition-speed="slow" -->
-- --
@ -1439,7 +1312,6 @@ Improving the accessibility of these mappings is another major focus. ⏭️
- Christophe Seux (ADM) - Christophe Seux (ADM)
- Florentin Luce (ADM) - Florentin Luce (ADM)
- Axel Tillement (Cube) - Axel Tillement (Cube)
- Dorothée Lanchier (Xilam)
</div> </div>

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.4 MiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.8 MiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.1 MiB