#include <HairPPLLRasterPass.h>
Inherits AZ::Render::Hair::HairGeometryRasterPass.
|
| AZ_RTTI (HairPPLLRasterPass, "{6614D7DD-24EE-4A2B-B314-7C035E2FB3C4}", HairGeometryRasterPass) |
|
| AZ_CLASS_ALLOCATOR (HairPPLLRasterPass, SystemAllocator) |
|
| AZ_RTTI (HairGeometryRasterPass, "{0F07360A-A286-4060-8C62-137AFFA50561}", RasterPass) |
|
| AZ_CLASS_ALLOCATOR (HairGeometryRasterPass, SystemAllocator) |
|
bool | AddDrawPackets (AZStd::list< Data::Instance< HairRenderObject > > &hairObjects) |
|
void | SchedulePacketBuild (HairRenderObject *hairObject) |
| The following will be called when an object was added or shader has been compiled.
|
|
Data::Instance< RPI::Shader > | GetShader () |
|
void | SetFeatureProcessor (HairFeatureProcessor *featureProcessor) |
|
virtual bool | IsEnabled () const override |
|
|
| HairPPLLRasterPass (const RPI::PassDescriptor &descriptor) |
|
| HairGeometryRasterPass (const RPI::PassDescriptor &descriptor) |
|
void | OnShaderReinitialized (const RPI::Shader &shader) override |
|
void | OnShaderAssetReinitialized (const Data::Asset< RPI::ShaderAsset > &shaderAsset) override |
|
void | OnShaderVariantReinitialized (const AZ::RPI::ShaderVariant &shaderVariant) override |
|
void | SetShaderPath (const char *shaderPath) |
|
bool | LoadShaderAndPipelineState () |
|
bool | AcquireFeatureProcessor () |
|
void | BuildShaderAndRenderData () |
|
bool | BuildDrawPacket (HairRenderObject *hairObject) |
|
void | CompileResources (const RHI::FrameGraphCompileContext &context) override |
|
|
HairFeatureProcessor * | m_featureProcessor = nullptr |
|
Data::Instance< RPI::Shader > | m_shader = nullptr |
|
AZStd::string | m_shaderPath = "dummyShaderPath" |
|
RPI::PassDescriptor | m_passDescriptor |
|
const RHI::PipelineState * | m_pipelineState = nullptr |
|
RPI::ViewPtr | m_currentView = nullptr |
|
AZStd::mutex | m_mutex |
|
AZStd::unordered_set< HairRenderObject * > | m_newRenderObjects |
|
bool | m_initialized = false |
|
A HairPPLLRasterPass is used for the hair fragments fill render after the data went through the skinning and simulation passes. The output of this pass is the general list of fragment data that can now be traversed for depth resolve and lighting. The Fill pass uses the following Srgs:
- PerPassSrg shared by all hair passes for the shared dynamic buffer and the PPLL buffers
- PerMaterialSrg - used solely by this pass to alter the vertices and apply the visual hair properties to each fragment.
- HairDynamicDataSrg (PerObjectSrg) - shared buffers views for this hair object only.
- PerViewSrg and PerSceneSrg - as per the data from Atom.
The documentation for this class was generated from the following file:
- Gems/AtomTressFX/Code/Passes/HairPPLLRasterPass.h