|
VulkanEngine 0.1
Graphics engine using Vulkan
|
Base class for Mesh specializations. More...
#include <MeshBase.h>
Public Member Functions | |
| MeshBase () | |
| Constructor. | |
| ~MeshBase () | |
| Destructor. | |
| virtual const vk::PipelineVertexInputStateCreateInfo & | createVkPipelineVertexInputStateCreateInfo ()=0 |
| virtual const vk::PipelineInputAssemblyStateCreateInfo & | createVkPipelineInputAssemblyStateCreateInfo ()=0 |
| virtual void | transferBuffers (const vk::CommandBuffer &command_buffer=nullptr)=0 |
| virtual void | bindVertexBuffers (const vk::CommandBuffer &command_buffer)=0 |
| virtual void | bindIndexBuffer (const vk::CommandBuffer &command_buffer)=0 |
| virtual void | draw (const vk::CommandBuffer &command_buffer)=0 |
| template<typename PositionType > | |
| const BoundingBox< PositionType > & | getBoundingBox () const |
Protected Attributes | |
| std::shared_ptr< BoundingBoxBase > | bounding_box |
| The Mesh's bounding box. | |
Base class for Mesh specializations.
|
pure virtual |
Bind the index buffer of this Mesh.
| command_buffer | The vk::CommandBuffer to insert the commands into. |
Implemented in VulkanEngine::Mesh< PositionType, IndexType, AdditionalAttributeTypes >.
|
pure virtual |
Bind VertexBuffers in this Mesh which will be used for rendering.
| command_buffer | The vk::CommandBuffer to insert the commands into. |
Implemented in VulkanEngine::Mesh< PositionType, IndexType, AdditionalAttributeTypes >.
|
pure virtual |
Implemented in VulkanEngine::Mesh< PositionType, IndexType, AdditionalAttributeTypes >.
|
pure virtual |
Implemented in VulkanEngine::Mesh< PositionType, IndexType, AdditionalAttributeTypes >.
|
pure virtual |
Insert drawing commands.
| command_buffer | The vk::CommandBuffer to insert the commands into. |
Implemented in VulkanEngine::Mesh< PositionType, IndexType, AdditionalAttributeTypes >.
|
pure virtual |
Start transfer of data belonging to all associated VertexAttribute instances from staging buffer to vertex buffer memory.
| command_buffer | The vk::CommandBuffer to insert the commands into. If none is provided a vk::CommandBuffer will be allocated and executed automatically. |
Implemented in VulkanEngine::Mesh< PositionType, IndexType, AdditionalAttributeTypes >.