## What is Solaris?
Solaris is a context within Houdini that is used for scene building, layout, lighting, and rendering, based on USD.
## What is USD (Universal Scene Description)?
USD (Universal Scene Description) is a framework and file format developed by Pixar for the interchange of 3D computer graphics data. It's designed to be a robust and scalable way to describe, compose, and edit 3D scenes.
## Why use Solaris and USD in Houdini?
* **Pipeline Integration:** USD provides a standardized way to exchange data between different software packages in a visual effects or animation pipeline.
* **Scalability:** USD is designed to handle large, complex scenes efficiently.
* **Non-Destructive Editing:** USD's layering system allows for non-destructive edits and overrides.
* **Collaboration:** USD facilitates collaboration by allowing multiple artists to work on different parts of a scene simultaneously.
## Key Concepts: Stages, Layers, Prims, Properties, Schemas
* **Stages:** A USD stage is the top-level container for a USD scene. It represents the entire scene graph.
* **Layers:** Layers are compositing elements that store scene data. They can be stacked to create complex scenes with overrides and variations.
* **Prims:** Prims (short for "primitives") are the basic building blocks of a USD scene. They represent objects in the scene, such as models, lights, and cameras.
* **Properties:** Properties are attributes that define the characteristics of a prim, such as its position, orientation, material, and visibility.
* **Schemas:** Schemas define the expected properties and behaviors of prims. They provide a way to enforce consistency and structure in a USD scene.
FOR MORE INFO : **[[../../../../PROTOCOL/USD/Notes/USD KNOWLEDGE/6.30 USD Theory]]** [[../../../../PROTOCOL/USD/Notes/USD KNOWLEDGE/USD terms and definitions]]
TO GO FURTHER [[../../../../PROTOCOL/USD/Notes/USD KNOWLEDGE/ANIMAL LOGIC use of USD]]
## Solaris Workflow Overview
The general workflow in Solaris involves:
1. **Scene Assembly:** Constructing the scene by referencing and layering USD assets.
2. **Layout:** Arranging the assets in the scene.
3. **Lighting:** Adding and adjusting lights.
4. **Material Assignment:** Applying materials to the objects in the scene.
5. **Rendering:** Rendering the final image using Karma (Houdini's built-in renderer) or another renderer.