SPARK
0.1.0
A general purpose game engine written in C++.
|
Vulkan implementation of IInputAssembler. More...
#include <VulkanInputAssembler.h>
Classes | |
struct | Impl |
Public Member Functions | |
VulkanInputAssembler (std::vector< std::unique_ptr< VulkanVertexBufferLayout > > &&vertex_buffer_layouts, std::unique_ptr< VulkanIndexBufferLayout > &&index_buffer_layout, PrimitiveTopology primitive_topology=PrimitiveTopology::TriangleList) | |
Initializes a new Vulkan input assembler state. | |
VulkanInputAssembler (const VulkanInputAssembler &other)=delete | |
VulkanInputAssembler (VulkanInputAssembler &&other) noexcept=delete | |
VulkanInputAssembler & | operator= (const VulkanInputAssembler &other)=delete |
VulkanInputAssembler & | operator= (VulkanInputAssembler &&other) noexcept=delete |
PrimitiveTopology | topology () const noexcept override |
Gets the topology of the input assembly. | |
std::vector< const VulkanVertexBufferLayout * > | vertexBufferLayouts () const noexcept override |
Gets all vertex buffers layouts in the input assembly. | |
const VulkanVertexBufferLayout & | vertexBufferLayout (unsigned binding) const override |
const VulkanIndexBufferLayout & | indexBufferLayout () const noexcept override |
Gets the index buffer layout. | |
![]() | |
std::vector< const IVertexBufferLayout * > | vertexBufferLayouts () const noexcept |
Gets all vertex buffers layouts in the input assembly. | |
virtual const IVertexBufferLayout & | vertexBufferLayout (unsigned int binding) const =0 |
Gets the vertex buffer layout for the given binding . | |
Additional Inherited Members | |
![]() | |
using | VertexBufferLayout |
using | IndexBufferLayout |
Vulkan implementation of IInputAssembler.
|
explicit |
Initializes a new Vulkan input assembler state.
vertex_buffer_layouts | The vertex buffer layouts supported by this input assembler state. Each layout must have a unique binding. |
index_buffer_layout | The index buffer layout of the input assembler state. |
primitive_topology | The primitive topology of the input assembler state. |
base::NullPointerException | if one of the vertex_buffer_layouts or index_buffer_layout is null. |
base::BadArgumentException | if the vertex_buffer_layouts contain multiple layouts with the same binding. |
|
nodiscardoverridevirtualnoexcept |
Gets the index buffer layout.
Implements spark::render::InputAssembler< VulkanVertexBufferLayout, VulkanIndexBufferLayout >.
|
nodiscardoverridevirtualnoexcept |
Gets the topology of the input assembly.
Implements spark::render::IInputAssembler.
|
nodiscardoverridevirtual |
|
nodiscardoverridevirtualnoexcept |
Gets all vertex buffers layouts in the input assembly.
Implements spark::render::InputAssembler< VulkanVertexBufferLayout, VulkanIndexBufferLayout >.