Bit cleanup of IDynamicMeshBuffer.

No point in repeating pure virtual functions
(maybe wasn't meant to be derived from IMeshBuffer at first?)


git-svn-id: svn://svn.code.sf.net/p/irrlicht/code/trunk@6356 dfc29bdd-3216-0410-991c-e03cc46cb475
This commit is contained in:
cutealien 2022-04-22 14:22:41 +00:00
parent 5163d74e3f
commit 8a9e82fed9
3 changed files with 29 additions and 41 deletions

View File

@ -102,6 +102,26 @@ namespace scene
} }
} }
//! Append the vertices and indices to the current buffer
/** Only works for compatible vertex types.
\param vertices Pointer to a vertex array.
\param numVertices Number of vertices in the array.
\param indices Pointer to index array.
\param numIndices Number of indices in array. */
virtual void append(const void* const vertices, u32 numVertices, const u16* const indices, u32 numIndices) IRR_OVERRIDE
{
// TODO
}
//! Append the meshbuffer to the current buffer
/** Only works for compatible vertex types
\param other Buffer to append to this one. */
virtual void append(const IMeshBuffer* const other) IRR_OVERRIDE
{
// TODO
}
//! Describe what kind of primitive geometry is used by the meshbuffer //! Describe what kind of primitive geometry is used by the meshbuffer
virtual void setPrimitiveType(E_PRIMITIVE_TYPE type) IRR_OVERRIDE virtual void setPrimitiveType(E_PRIMITIVE_TYPE type) IRR_OVERRIDE
{ {

View File

@ -24,46 +24,13 @@ namespace scene
virtual void setVertexBuffer(IVertexBuffer *vertexBuffer) =0; virtual void setVertexBuffer(IVertexBuffer *vertexBuffer) =0;
virtual void setIndexBuffer(IIndexBuffer *indexBuffer) =0; virtual void setIndexBuffer(IIndexBuffer *indexBuffer) =0;
//! Get the material of this meshbuffer
/** \return Material of this buffer. */
virtual video::SMaterial& getMaterial() IRR_OVERRIDE =0;
//! Get the material of this meshbuffer // ------------------- Old interface ------------------- //
/** \return Material of this buffer. */ // That stuff could also be in CDynamicMeshBuffer
virtual const video::SMaterial& getMaterial() const IRR_OVERRIDE =0; // I suppose it was put here to show that the information
// is now basically handled by the vertex/index buffers instead
// of the meshbuffer itself.
//! Get the axis aligned bounding box of this meshbuffer.
/** \return Axis aligned bounding box of this buffer. */
virtual const core::aabbox3df& getBoundingBox() const IRR_OVERRIDE =0;
//! Set axis aligned bounding box
/** \param box User defined axis aligned bounding box to use
for this buffer. */
virtual void setBoundingBox(const core::aabbox3df& box) IRR_OVERRIDE =0;
//! Recalculates the bounding box. Should be called if the mesh changed.
virtual void recalculateBoundingBox() IRR_OVERRIDE =0;
//! Append the vertices and indices to the current buffer
/** Only works for compatible vertex types.
\param vertices Pointer to a vertex array.
\param numVertices Number of vertices in the array.
\param indices Pointer to index array.
\param numIndices Number of indices in array. */
virtual void append(const void* const vertices, u32 numVertices, const u16* const indices, u32 numIndices) IRR_OVERRIDE
{
}
//! Append the meshbuffer to the current buffer
/** Only works for compatible vertex types
\param other Buffer to append to this one. */
virtual void append(const IMeshBuffer* const other) IRR_OVERRIDE
{
}
// ------------------- To be removed? ------------------- //
//! get the current hardware mapping hint //! get the current hardware mapping hint
virtual E_HARDWARE_MAPPING getHardwareMappingHint_Vertex() const IRR_OVERRIDE virtual E_HARDWARE_MAPPING getHardwareMappingHint_Vertex() const IRR_OVERRIDE
@ -105,7 +72,6 @@ namespace scene
return getIndexBuffer().getChangedID(); return getIndexBuffer().getChangedID();
} }
// ------------------- Old interface ------------------- //
//! Get type of vertex data which is stored in this meshbuffer. //! Get type of vertex data which is stored in this meshbuffer.
/** \return Vertex type of this buffer. */ /** \return Vertex type of this buffer. */

View File

@ -120,14 +120,16 @@ namespace scene
virtual core::vector2df& getTCoords(u32 i) = 0; virtual core::vector2df& getTCoords(u32 i) = 0;
//! Append the vertices and indices to the current buffer //! Append the vertices and indices to the current buffer
/** Only works for compatible vertex types. /** Only works for compatible vertex types
and not implemented for most buffers for now.
\param vertices Pointer to a vertex array. \param vertices Pointer to a vertex array.
\param numVertices Number of vertices in the array. \param numVertices Number of vertices in the array.
\param indices Pointer to index array. \param indices Pointer to index array.
\param numIndices Number of indices in array. */ \param numIndices Number of indices in array. */
virtual void append(const void* const vertices, u32 numVertices, const u16* const indices, u32 numIndices) = 0; virtual void append(const void* const vertices, u32 numVertices, const u16* const indices, u32 numIndices) = 0;
//! Append the meshbuffer to the current buffer //! Not supported right now by any meshbuffer
//! In theory: Append the meshbuffer to the current buffer
/** Only works for compatible vertex types /** Only works for compatible vertex types
\param other Buffer to append to this one. */ \param other Buffer to append to this one. */
virtual void append(const IMeshBuffer* const other) = 0; virtual void append(const IMeshBuffer* const other) = 0;