# π Welcome to **AltProtocol**
> [!abstract] What is this vault?
> **AltProtocol** is the public documentation of **Alternatives Productions** β a collective that gathers a rotating group of artists around short film projects. The vault has two sides:
> - **π KNOWLEDGE** β a personal, software-focused 3D knowledge base (Houdini / Solaris, USD, RenderMan, Nuke, Maya, ZBrush, Mari, and more).
> - **π¬ PROTOCOL** β the living pipeline documentation for Alternatives Productions' short projects: naming conventions, USD workflow, render-farm setup, task tracking.
This Vault is participative and you can contribute to it directly via [[HOW CONTRIBUTE TO THIS DOCUMENTATION]]
I want to thanks particularly Loris Eck, Leo Hanrion, Viktor Weiss, Arthur Cauchois, Fabio Sguerra, Thomas Milcamp, Tristan Goupy, Erwan Vaquet. The first students of mine to contribute to this public knowledge
Browse freely; everything in `KNOWLEDGE/`, `INSPIRATIONS AND REFERENCES/` and `PROTOCOL/` is public.
---
## π§ Start here
> [!tip] First time landing on the vault?
> Open the two main maps of content below. They are the entry points to **every** public note.
- π **[[KNOWLEDGE/KNOWLEDGE MOC|KNOWLEDGE MOC]]** β index of all software and theory notes (DCCs, renderers, texturing, compositing, lookdev, lighting, colorβ¦).
- π **[[PROTOCOL/PROTOCOL MOC|PROTOCOL MOC]]** β index of the USD pipeline we use at Alternatives Productions, that you can use for yourself as well
- Some other important notes :
-
- π¬ **[[PROTOCOL/USD/USD MOC|PROTOCOL β USD MOC]]** β the core of the pipeline: how we use USD, layers, publishing, variants.
- π§° **[[PROTOCOL/PRISM/PRISM MOC Protocol|PROTOCOL β Prism MOC]]** β asset & shot management, versioning, DCC integration.
- π§© **[[PROTOCOL/KITSU/KITSU MOC|PROTOCOL β Kitsu MOC]]** β project & task tracking.
- β‘ **[[PROTOCOL/OPTIMISATION/OPTIMISATION MOC|PROTOCOL β Optimisation MOC]]** β per-department clean-handoff and performance guides.
- π·οΈ **[[PROTOCOL/FOUNDATION/PROTOCOL Naming Convention|Naming Convention]]** β file, asset, shot, render, product naming rules.
---
## π¬ About Alternatives Productions
**Alternatives Productions** is a organization build around **short-term collaborative projects** with rotating participants. Each project assembles artists from different backgrounds, learns together, and ships a short film. The pipeline that ties it all together is called **PROTOCOL**.
**Software stack (current)**
| Software | Version | Role |
|------------------|----------|-------------------------------------------|
| Houdini | 21.0.512 | Scene building, FX, lookdev (Solaris/LOP) |
| RenderMan | 27.2 | Rendering (in Solaris / Karma context) |
| Prism Pipeline | v2.1.1 | Asset & shot management, publishing |
| NukeX | 16.0v6 | Compositing |
| Maya | 2026 | Modeling / rigging / animation |
| DaVinci Resolve | 20 | Color grading and DCP |
**Workflow in one line**
> Full **USD** pipeline β scene building in **Solaris**, rendering via **RenderMan**, publish/version via **Prism**, compositing in **NukeX**, grading in **Resolve**.
---
## πΊοΈ Vault layout
```
AltProtocol/
βββ KNOWLEDGE/ π Public β software & theory notes
β βββ ARNOLD / MARI / MAYA / BLENDER / KATANA / β¦
β βββ LOOKDEV / LIGHTING / COLORSPACE / COMPOSITING
β βββ PLANTFACTORY / PHOTOSHOP / AI / β¦
β
βββ PROTOCOL/ π¬ Public β AltProd pipeline
β βββ FOUNDATION/ Naming conventions, base rules
β βββ USD/ USD theory + practice notes
β βββ KITSU/ Task tracking
β βββ DEADLINE/ Render-farm docs
β
βββ INSPIRATIONS AND REFERENCES/ πΏ Public β learning & curiosity
β
βββ (private folders β not published)
```
---
## π€ Contribute
This vault is open to contributions from Everyone.
- **Spot a typo, a missing step, an outdated version?** Open a pull request on the vault's GitHub repository β see [[HOW CONTRIBUTE TO THIS DOCUMENTATION|How to contribute]].
- **Naming-convention retake request?** Leave a comment on the [live naming-convention document](https://docs.google.com/document/d/1njKUUPvJuuMr5Qkx6wCVdkwkJpKYPStI8DLkxrXI9j8/edit?usp=sharing).
---
%% DATAVIEW_PUBLISHER: start
```dataviewjs
const wip = dv.pages().where(p => p.Status === "WIP").length;
const done = dv.pages().where(p => p.Status === "DONE").length;
dv.paragraph(`**WIP notes:** ${wip} β **DONE notes:** ${done}`);
```
%%
%% DATAVIEW_PUBLISHER: end %%
## π Vault activity
%% DATAVIEW_PUBLISHER: start
```contributionGraph
title: Knowledge Contributions
graphType: default
dateRangeValue: 365
dateRangeType: LATEST_DAYS
startOfWeek: "1"
showCellRuleIndicators: true
titleStyle:
textAlign: center
fontSize: 20px
fontWeight: normal
dataSource:
type: PAGE
value: ""
dateField:
type: FILE_MTIME
fillTheScreen: false
enableMainContainerShadow: true
cellStyleRules:
- id: Wine_a
color: "#470609ff"
min: 1
max: 2
- id: Wine_b
color: "#761b26ff"
min: 2
max: 3
- id: Wine_c
color: "#c33232ff"
min: 3
max: 5
- id: Wine_d
color: "#ff4343ff"
min: 5
max: 9999
```
%%
%% DATAVIEW_PUBLISHER: end %%