The IVertices video object interface. More...
#include "murl_video_i_vertices.h"
Public Member Functions | |
virtual Bool | Enable ()=0 |
Enable the vertices container. More... | |
virtual Bool | Disable ()=0 |
Disable the vertices container. More... | |
virtual Bool | Set (IProgram *currentProgram)=0 |
Attach the vertices container to the current GPU program. More... | |
virtual Bool | SetPrimitiveType (IEnums::PrimitiveType type)=0 |
Set the primitive type to render, if no index buffer is used. More... | |
virtual IEnums::PrimitiveType | GetPrimitiveType () const =0 |
Get the primitive type. More... | |
virtual SInt32 | AddVertexBuffer (IVertexBuffer *vertexBuffer)=0 |
Add a single default vertex buffer. More... | |
virtual SInt32 | AddVertexBuffer (IEnums::VertexBufferItem item, IVertexBuffer *vertexBuffer)=0 |
Add a single predefined vertex buffer. More... | |
virtual SInt32 | AddVertexBuffer (SInt32 id, IVertexBuffer *vertexBuffer)=0 |
Add a single custom vertex buffer, by its unique integer ID in the renderer. More... | |
virtual SInt32 | AddVertexBuffer (const String &name, IVertexBuffer *vertexBuffer)=0 |
Add a single custom vertex buffer, by its actual name. More... | |
virtual Bool | RemoveAllVertexBuffers ()=0 |
Remove all present vertex buffers from the container. More... | |
virtual SInt32 | GetVertexBufferIndex (IEnums::VertexBufferItem item) const =0 |
Get the index of a predefined vertex buffer in the container. More... | |
virtual SInt32 | GetVertexBufferIndex (SInt32 id) const =0 |
Get the index of a custom vertex buffer in the container, by its unique integer ID. More... | |
virtual SInt32 | GetVertexBufferIndex (const String &name) const =0 |
Get the index of a custom vertex buffer in the container, by its actual name. More... | |
virtual UInt32 | GetNumberOfVertexBuffers () const =0 |
Get the total number of individual vertex buffers present in the container. More... | |
virtual IEnums::VertexBufferItem | GetVertexBufferItem (UInt32 index) const =0 |
Get the predefined vertex buffer item at a given index. More... | |
virtual SInt32 | GetVertexBufferId (UInt32 index) const =0 |
Get the unique integer ID of a vertex buffer at a given index. More... | |
virtual IVertexBuffer * | GetVertexBuffer (UInt32 index) const =0 |
Get the vertex buffer at a given index. More... | |
UInt32 | GetSignature () const override=0 |
Get the signature, obtained via IRenderer::AcquireVerticesSignature(). More... | |
Public Member Functions inherited from Murl::Video::IDrawable | |
virtual IObject * | GetObjectInterface ()=0 |
Get the mutable Video::IObject interface. More... | |
virtual const IObject * | GetObjectInterface () const =0 |
Get the constant Video::IObject interface. More... | |
virtual Bool | Draw ()=0 |
Draw the object. More... | |
virtual Bool | IsDynamicBatchingAllowed () const =0 |
Check if the drawable allows for dynamic batching. More... | |
virtual Bool | HasDataToDraw () const =0 |
Check if the drawable is actually containing any geometry data. More... | |
virtual UInt32 | GetNumberOfBones () const =0 |
Get the number of bones affecting the drawable. More... | |
Detailed Description
The IVertices video object interface.
This interface represents a container object holding references to one or more individual IVertexBuffer objects.
Used internally by various geometry graph nodes, such as Graph::GenericGeometry, Graph::ResourceMeshGeometry and others.
Member Function Documentation
◆ Enable()
|
pure virtual |
Enable the vertices container.
- Returns
- true if successful.
◆ Disable()
|
pure virtual |
Disable the vertices container.
- Returns
- true if successful.
◆ Set()
Attach the vertices container to the current GPU program.
- Parameters
-
currentProgram The current GPU program.
- Returns
- true if successful.
◆ SetPrimitiveType()
|
pure virtual |
Set the primitive type to render, if no index buffer is used.
- Parameters
-
type The primitive type.
- Returns
- true if successful.
◆ GetPrimitiveType()
|
pure virtual |
Get the primitive type.
- Returns
- The primitive type.
◆ AddVertexBuffer() [1/4]
|
pure virtual |
Add a single default vertex buffer.
- Parameters
-
vertexBuffer The vertex buffer to add.
- Returns
- The zero-based index of the vertex buffer in the container, or -1 if failed.
◆ AddVertexBuffer() [2/4]
|
pure virtual |
Add a single predefined vertex buffer.
- Parameters
-
item The predefined item. vertexBuffer The vertex buffer to add.
- Returns
- The zero-based index of the vertex buffer in the container, or -1 if failed.
◆ AddVertexBuffer() [3/4]
|
pure virtual |
Add a single custom vertex buffer, by its unique integer ID in the renderer.
- Parameters
-
id The buffer's unique integer ID. vertexBuffer The vertex buffer to add.
- Returns
- The zero-based index of the vertex buffer in the container, or -1 if failed.
◆ AddVertexBuffer() [4/4]
|
pure virtual |
Add a single custom vertex buffer, by its actual name.
- Parameters
-
name The buffer name. vertexBuffer The vertex buffer to add.
- Returns
- The zero-based index of the vertex buffer in the container, or -1 if failed.
◆ RemoveAllVertexBuffers()
|
pure virtual |
Remove all present vertex buffers from the container.
- Returns
- true if successful.
◆ GetVertexBufferIndex() [1/3]
|
pure virtual |
Get the index of a predefined vertex buffer in the container.
- Parameters
-
item The vertex buffer item to query.
- Returns
- The zero-based index of the buffer, or -1 if not found.
◆ GetVertexBufferIndex() [2/3]
Get the index of a custom vertex buffer in the container, by its unique integer ID.
- Parameters
-
id The unique integer ID of the vertex buffer to query.
- Returns
- The zero-based index of the buffer, or -1 if not found.
◆ GetVertexBufferIndex() [3/3]
|
pure virtual |
Get the index of a custom vertex buffer in the container, by its actual name.
- Parameters
-
name The buffer name.
- Returns
- The zero-based index of the buffer, or -1 if not found.
◆ GetNumberOfVertexBuffers()
|
pure virtual |
Get the total number of individual vertex buffers present in the container.
- Returns
- The number of vertex buffers present.
◆ GetVertexBufferItem()
|
pure virtual |
Get the predefined vertex buffer item at a given index.
- Parameters
-
index The index of the buffer to query, from 0 to GetNumberOfVertexBuffers()-1.
- Returns
- The predefined buffer item, or IEnums::VERTEX_BUFFER_ITEM_CUSTOM if the index is out of range.
◆ GetVertexBufferId()
Get the unique integer ID of a vertex buffer at a given index.
- Parameters
-
index The index of the buffer to query, from 0 to GetNumberOfVertexBuffers()-1.
- Returns
- The unique ID, or -1 if the index is out of range.
◆ GetVertexBuffer()
|
pure virtual |
Get the vertex buffer at a given index.
- Parameters
-
index The index of the buffer to query, from 0 to GetNumberOfVertexBuffers()-1.
- Returns
- The buffer, or null if the index is out of range.
◆ GetSignature()
|
overridepure virtual |
Get the signature, obtained via IRenderer::AcquireVerticesSignature().
- Returns
- The buffer signature.
Implements Murl::Video::IDrawable.
The documentation for this interface was generated from the following file:
- murl_video_i_vertices.h