Castor3D 0.16.0
Multiplatform 3D engine
Public Member Functions | List of all members
castor3d::IndexMapping::ComponentData Struct Reference

#include <IndexMapping.hpp>

Inheritance diagram for castor3d::IndexMapping::ComponentData:
Inheritance graph
[legend]
Collaboration diagram for castor3d::IndexMapping::ComponentData:
Collaboration graph
[legend]

Public Member Functions

 ComponentData (Submesh &submesh, VkBufferUsageFlags bufferUsageFlags)
 
void gather (PipelineFlags const &flags, Pass const &pass, ObjectBufferOffset const &bufferOffsets, ashes::BufferCRefArray &buffers, castor::Vector< uint64_t > &offsets, ashes::PipelineVertexInputStateCreateInfoCRefArray &layouts, uint32_t &currentBinding, uint32_t &currentLocation) override final
 Gathers buffers that need to go in a vertex layout.
 
VkBufferUsageFlags getUsageFlags () const noexcept override
 
- Public Member Functions inherited from castor3d::SubmeshComponentData
C3D_API SubmeshComponentData (Submesh &submesh)
 
C3D_API bool initialise (RenderDevice const &device)
 Initialises the submesh.
 
C3D_API void cleanup (RenderDevice const &device)
 Cleans the submesh.
 
C3D_API void upload (UploadData &uploader)
 Uploads data on VRAM.
 
virtual C3D_API void copy (SubmeshComponentDataRPtr data) const =0
 Copies given component's data into this one.
 
void needsUpdate ()
 
- Public Member Functions inherited from castor3d::SubmeshSubComponent
 SubmeshSubComponent ()=default
 
 SubmeshSubComponent (SubmeshSubComponent const &)=delete
 
SubmeshSubComponentoperator= (SubmeshSubComponent const &)=delete
 
C3D_API SubmeshSubComponent (SubmeshSubComponent &&) noexcept=default
 
C3D_API SubmeshSubComponentoperator= (SubmeshSubComponent &&) noexcept=default
 
virtual C3D_API ~SubmeshSubComponent () noexcept=default
 

Additional Inherited Members

- Protected Attributes inherited from castor3d::SubmeshComponentData
Submeshm_submesh
 

Constructor & Destructor Documentation

◆ ComponentData()

castor3d::IndexMapping::ComponentData::ComponentData ( Submesh & submesh,
VkBufferUsageFlags bufferUsageFlags )
inline

Member Function Documentation

◆ gather()

void castor3d::IndexMapping::ComponentData::gather ( PipelineFlags const & flags,
Pass const & pass,
ObjectBufferOffset const & bufferOffsets,
ashes::BufferCRefArray & buffers,
castor::Vector< uint64_t > & offsets,
ashes::PipelineVertexInputStateCreateInfoCRefArray & layouts,
uint32_t & currentBinding,
uint32_t & currentLocation )
inlinefinaloverridevirtual

Gathers buffers that need to go in a vertex layout.

Parameters
[in]flagsThe pipeline flags.
[in]passThe material pass.
[in]bufferOffsetsHolds the buffers.
[in,out]buffersReceives the buffers.
[in,out]offsetsReceives the buffers offsets.
[in,out]layoutsReceives the vertex layouts.
[in,out]currentBindingThe current buffer binding.
[in,out]currentLocationThe current attribute location.

Implements castor3d::SubmeshComponentData.

◆ getUsageFlags()

VkBufferUsageFlags castor3d::IndexMapping::ComponentData::getUsageFlags ( ) const
inlineoverridevirtualnoexcept

Returns
The buffer usage flags.

Reimplemented from castor3d::SubmeshComponentData.


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