LiteFX 0.3.1.2022
Computer Graphics Engine
|
Describes a vertex buffer. More...
#include <rendering.hpp>
Inherits LiteFX::Rendering::IVertexBuffer.
Public Types | |
using | vertex_buffer_layout_type = TVertexBufferLayout |
Public Member Functions | |
virtual | ~VertexBuffer () noexcept=default |
virtual const vertex_buffer_layout_type & | layout () const noexcept=0 |
Gets the layout of the vertex buffer. More... | |
Public Member Functions inherited from LiteFX::Rendering::IVertexBuffer | |
virtual | ~IVertexBuffer () noexcept=default |
virtual const IVertexBufferLayout & | layout () const noexcept=0 |
Gets the layout of the vertex buffer. More... | |
Public Member Functions inherited from LiteFX::Rendering::IBuffer | |
virtual | ~IBuffer () noexcept=default |
virtual const BufferType & | type () const noexcept=0 |
Returns the type of the buffer. More... | |
Public Member Functions inherited from LiteFX::Rendering::IDeviceMemory | |
virtual | ~IDeviceMemory () noexcept=default |
virtual const UInt32 & | elements () const noexcept=0 |
Gets the number of sub-resources inside the memory chunk. More... | |
virtual size_t | size () const noexcept=0 |
Gets the size (in bytes) of the aligned memory chunk. More... | |
virtual size_t | elementSize () const noexcept=0 |
Returns the size of a single element within the buffer. If there is only one element, this is equal to size. More... | |
virtual size_t | elementAlignment () const noexcept=0 |
Returns the alignment of a single element. More... | |
virtual size_t | alignedElementSize () const noexcept=0 |
Returns the actual size of the element in device memory. More... | |
virtual const bool & | writable () const noexcept=0 |
Returns true , if the resource can be bound to a read/write descriptor. More... | |
virtual const ResourceState & | state (const UInt32 &subresource=0) const =0 |
Returns the current state of the resource. More... | |
virtual ResourceState & | state (const UInt32 &subresource=0)=0 |
Returns a reference of the current state of the resource. More... | |
Public Member Functions inherited from LiteFX::Rendering::IMappable | |
virtual | ~IMappable () noexcept=default |
virtual void | map (const void *const data, const size_t &size, const UInt32 &element=0)=0 |
Maps the memory at data to the internal memory of this object. More... | |
virtual void | map (Span< const void *const > data, const size_t &elementSize, const UInt32 &firstElement=0)=0 |
Maps the memory blocks within data to the internal memory of an array. More... | |
Public Member Functions inherited from LiteFX::Rendering::IStateResource | |
virtual | ~IStateResource () noexcept=default |
virtual const String & | name () const noexcept=0 |
Returns the name of the resource. More... | |
Describes a vertex buffer.
TVertexBufferLayout | The type of the vertex buffer layout. Must implement IVertexBufferLayout. |
using LiteFX::Rendering::VertexBuffer< TVertexBufferLayout >::vertex_buffer_layout_type = TVertexBufferLayout |
|
virtualdefaultnoexcept |
|
pure virtualnoexcept |
Gets the layout of the vertex buffer.
Implements LiteFX::Rendering::IVertexBuffer.
Implemented in LiteFX::Rendering::Backends::DirectX12VertexBuffer, and LiteFX::Rendering::Backends::VulkanVertexBuffer.