Open 3D Engine Atom Gem API Reference 26.05.0
O3DE is an open-source, fully-featured, high-fidelity, modular 3D engine for building games and simulations, available to every industry.
AZ::Render::ShaderStreamBufferViewsBuilder Class Referencefinal

Inherits AZ::Render::StreamBufferViewsBuilderInterface.

Public Member Functions

 AZ_RTTI (AZ::Render::ShaderStreamBufferViewsBuilder, "{427005C5-DB26-4DB2-992C-9E080DE9202C}", AZ::Render::StreamBufferViewsBuilderInterface)
 
 ShaderStreamBufferViewsBuilder (const MeshFeatureProcessorInterface::MeshHandle &meshHandle)
 
bool AddStream (const char *semanticName, AZ::RHI::Format streamFormat, bool isOptional) override
 All streams that need to be queried must be added before calling BuildShaderStreamBufferViews();.
 
AZ::u8 GetStreamCount () const override
 Returns the number of streams that were successfully added via @AddStream(...)
 
AZStd::unique_ptr< ShaderStreamBufferViewsInterfaceBuildShaderStreamBufferViews (uint32_t lodIndex, uint32_t meshIndex) override
 
const MeshFeatureProcessorInterface::MeshHandleGetMeshHandle () const override
 For informational purposes. Gets a reference to the MeshHandle used when this builder was created.
 
- Public Member Functions inherited from AZ::Render::StreamBufferViewsBuilderInterface
 AZ_RTTI (AZ::Render::StreamBufferViewsBuilderInterface, "{B0004EA8-C829-427D-8F3B-0FBB060CB385}")
 

Member Function Documentation

◆ AddStream()

bool AZ::Render::ShaderStreamBufferViewsBuilder::AddStream ( const char *  semanticName,
AZ::RHI::Format  streamFormat,
bool  isOptional 
)
overridevirtual

All streams that need to be queried must be added before calling BuildShaderStreamBufferViews();.

Implements AZ::Render::StreamBufferViewsBuilderInterface.

◆ BuildShaderStreamBufferViews()

AZStd::unique_ptr< ShaderStreamBufferViewsInterface > AZ::Render::ShaderStreamBufferViewsBuilder::BuildShaderStreamBufferViews ( uint32_t  lodIndex,
uint32_t  meshIndex 
)
overridevirtual

If @AddStream() is never called, the returned @ShaderStreamBufferViewsInterface may only be useful for GetIndexBufferView(). The returned ShaderStreamBufferViewsInterface can only get the Streams on the particular @meshIndex within the @lodIndex.

Implements AZ::Render::StreamBufferViewsBuilderInterface.

◆ GetMeshHandle()

const MeshFeatureProcessorInterface::MeshHandle & AZ::Render::ShaderStreamBufferViewsBuilder::GetMeshHandle ( ) const
overridevirtual

For informational purposes. Gets a reference to the MeshHandle used when this builder was created.

Implements AZ::Render::StreamBufferViewsBuilderInterface.

◆ GetStreamCount()

AZ::u8 AZ::Render::ShaderStreamBufferViewsBuilder::GetStreamCount ( ) const
overridevirtual

Returns the number of streams that were successfully added via @AddStream(...)

Implements AZ::Render::StreamBufferViewsBuilderInterface.


The documentation for this class was generated from the following file: