Internals of the Buffer module.
More...
|
| struct | SRPVertexBuffer |
| |
| SRPVertexBuffer * | srpNewVertexBuffer () |
| |
| void | srpVertexBufferCopyData (SRPVertexBuffer *this, size_t nBytesPerVertex, size_t nBytesData, const void *data) |
| |
| void | srpFreeVertexBuffer (SRPVertexBuffer *this) |
| |
| void | srpDrawVertexBuffer (const SRPVertexBuffer *this, const SRPFramebuffer *fb, const SRPShaderProgram *sp, SRPPrimitive primitive, size_t startIndex, size_t count) |
| |
| SRPVertex * | indexVertexBuffer (const SRPVertexBuffer *this, size_t index) |
| |
| SRPIndexBuffer * | srpNewIndexBuffer () |
| |
| void | srpIndexBufferCopyData (SRPIndexBuffer *this, SRPType indicesType, size_t nBytesData, const void *data) |
| |
| void | srpFreeIndexBuffer (SRPIndexBuffer *this) |
| |
| uint64_t | indexIndexBuffer (const SRPIndexBuffer *this, size_t index) |
| |
| void | srpDrawIndexBuffer (const SRPIndexBuffer *this, const SRPVertexBuffer *vb, const SRPFramebuffer *fb, const SRPShaderProgram *sp, SRPPrimitive primitive, size_t startIndex, size_t count) |
| |
Internals of the Buffer module.
- See also
- Buffer
◆ indexIndexBuffer()
| uint64_t indexIndexBuffer |
( |
const SRPIndexBuffer * |
this, |
|
|
size_t |
ibIndex |
|
) |
| |
Get an element stored in SRPIndexBuffer. Needed because SRPIndexBuffer stores opaque index types.
- Parameters
-
- Returns
- Element upcasted to
uint64_t
◆ indexVertexBuffer()
◆ srpDrawIndexBuffer()
Draw vertices using both vertex and index buffers
- Parameters
-
| [in] | this | The index buffer to read the indices from |
| [in] | vb | The vertex buffer to read the vertex data from |
| [in] | fb | The framebuffer to draw to |
| [in] | sp | The shader program to use |
| [in] | primitive | Specifies the primitive to draw |
| [in] | startIndex | Specifies from what index buffer's index to start drawing |
| [in] | count | Specifies how many indices to draw |
◆ srpDrawVertexBuffer()
Draw vertices from vertex buffer
- Parameters
-
| [in] | this | The pointer to vertex buffer to read the vertex data from |
| [in] | fb | The framebuffer to draw to |
| [in] | sp | The shader program to use |
| [in] | primitive | Specifies the primitive to draw |
| [in] | startIndex | Specifies from what index to start drawing |
| [in] | count | Specifies how many vertices to draw |
◆ srpFreeIndexBuffer()
Free the index buffer
- Parameters
-
◆ srpFreeVertexBuffer()
Free the vertex buffer
- Parameters
-
◆ srpIndexBufferCopyData()
| void srpIndexBufferCopyData |
( |
SRPIndexBuffer * |
this, |
|
|
SRPType |
indicesType, |
|
|
size_t |
nBytesData, |
|
|
const void * |
data |
|
) |
| |
Copy the vertex data over to vertex buffer
- Parameters
-
| [in] | this | The pointer to index buffer |
| [in] | indicesType | The type of indices passed by data. Must be one of SRP_UINT8, SRP_UINT16, SRP_UINT32, SRP_UINT64 |
| [in] | nBytesData | The size of index data |
| [in] | data | The pointer to an array of indices of type indicesType |
◆ srpNewIndexBuffer()
Construct the index buffer
- Returns
- A pointer to constructed index buffer
◆ srpNewVertexBuffer()
◆ srpVertexBufferCopyData()
| void srpVertexBufferCopyData |
( |
SRPVertexBuffer * |
this, |
|
|
size_t |
nBytesPerVertex, |
|
|
size_t |
nBytesData, |
|
|
const void * |
data |
|
) |
| |
Copy the vertex data over to vertex buffer
- Parameters
-
| [in] | this | The pointer to vertex buffer |
| [in] | nBytesPerVertex | The size of one vertex, in bytes |
| [in] | nBytesData | The size of vertex data, in bytes |
| [in] | data | The pointer to vertex data |