Regenerated doc + final submit for now
This commit is contained in:
@@ -4,7 +4,46 @@
|
||||
- Header: `Juliet\include\Graphics\RenderPass.h`
|
||||
|
||||
## AI Description
|
||||
This header defines a render pass abstraction for the Juliet graphics API, containing enums and structs to configure color targets, depth/stencil states, blend modes, mipmap operations (load/store/resolve), clear values, and texture cycling. It enables high-level rendering pipeline configuration by encapsulating target properties like formats, mip levels, resolution logic, and per-component blending parameters without exposing direct hardware calls.
|
||||
The `RenderPass` class in the Juliet graphics library is designed to encapsulate the functionality required for rendering a single pass of a scene. It manages the setup and execution of the render pipeline, including color targets, depth stencil targets, blend states, and other necessary parameters.
|
||||
|
||||
### Main Purpose
|
||||
|
||||
The primary purpose of the `RenderPass` class is to provide a structured way to define and execute rendering operations in a graphics application. This allows for better organization and management of rendering logic, making it easier to maintain and extend the graphics system.
|
||||
|
||||
### Design
|
||||
|
||||
#### Color Targets
|
||||
|
||||
- **TargetTexture**: A pointer to the texture where the rendered output will be stored.
|
||||
- **MipLevel**: The mip level at which the target texture should be accessed.
|
||||
- **CycleTexture**: A boolean flag indicating whether the texture should be cycled if already bound (and load operation != LOAD).
|
||||
- **ResolveTexture**: A pointer to a texture used for resolving MipMaps into non-mip-map textures. Discard MipMap content if not specified.
|
||||
- **ResolveMipLevel**: The mip level at which the resolve texture should be accessed.
|
||||
- **ResolveLayerIndex**: The layer index within the resolve texture (if applicable).
|
||||
- **CycleResolveTexture**: A boolean flag indicating whether the resolve texture should be cycled if already bound.
|
||||
- **ClearColor**: The color to clear the target texture with before rendering.
|
||||
- **LoadOperation**: Specifies how the texture should be loaded from memory (e.g., LOAD, CLEAR, IGNORE).
|
||||
- **StoreOperation**: Specifies how the result of the render pass should be stored into memory (e.g., STORE, IGNORE, RESOLVE, RESOLVE_AND_STORE).
|
||||
|
||||
#### Depth Stencil Targets
|
||||
|
||||
- **TargetTexture**: A pointer to the texture where the depth and stencil information will be stored.
|
||||
- **MipLevel**: The mip level at which the target texture should be accessed.
|
||||
- **LayerIndex**: The layer index within the target texture (if applicable).
|
||||
- **ClearDepth**: The depth value to clear the target texture with before rendering.
|
||||
- **ClearStencil**: The stencil value to clear the target texture with before rendering.
|
||||
- **LoadOperation**: Specifies how the texture should be loaded from memory (e.g., LOAD, CLEAR, IGNORE).
|
||||
- **StoreOperation**: Specifies how the result of the render pass should be stored into memory (e.g., STORE, IGNORE, RESOLVE, RESOLVE_AND_STORE).
|
||||
|
||||
#### Blend States
|
||||
|
||||
- **SourceColorBlendFactor**: The blend factor for the source RGB value.
|
||||
- **DestinationColorBlendFactor**: The blend factor for the destination RGB value.
|
||||
- **ColorBlendOperation**: The blend operation for the RGB components.
|
||||
- **SourceAlphaBlendFactor**: The blend factor for the source alpha.
|
||||
- **DestinationAlphaBlendFactor**: The blend factor for the destination alpha.
|
||||
- **AlphaBlendOperation**: The blend operation for the alpha component.
|
||||
- **ColorWriteMask**: A bitmask specifying which of the RGBA
|
||||
|
||||
## Symbols
|
||||
|
||||
|
||||
Reference in New Issue
Block a user