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
Public Member Functions inherited from