The IGenericGeometry graph node interface. More...
#include "murl_graph_i_generic_geometry.h"
Public Member Functions | |
virtual INode * | GetNodeInterface ()=0 |
Get the mutable Graph::INode interface. More... | |
virtual const INode * | GetNodeInterface () const =0 |
Get the constant Graph::INode interface. More... | |
virtual ITransform * | GetTransformInterface ()=0 |
Get the mutable Graph::ITransform interface. More... | |
virtual const ITransform * | GetTransformInterface () const =0 |
Get the constant Graph::ITransform interface. More... | |
virtual Bool | SetBoundingBox (const Box &boundingBox)=0 |
Set the bounding box used for culling and aligning. More... | |
virtual const Box & | GetBoundingBox () const =0 |
Get the bounding box used for culling and aligning. More... | |
Public Member Functions inherited from Murl::Graph::IDrawable | |
virtual Bool | SetVerticesSlot (SInt32 slot)=0 |
Set the vertices slot used for rendering. More... | |
virtual SInt32 | GetVerticesSlot () const =0 |
Get the vertices slot used for rendering. More... | |
virtual Bool | SetMaterialSlot (SInt32 slot)=0 |
Set the material slot used for rendering. More... | |
virtual SInt32 | GetMaterialSlot () const =0 |
Get the material slot used for rendering. More... | |
virtual Bool | SetParametersSlot (SInt32 slot)=0 |
Set the parameters slot used for rendering. More... | |
virtual SInt32 | GetParametersSlot () const =0 |
Get the parameters slot used for rendering. More... | |
virtual Bool | SetTextureSlot (UInt32 unit, SInt32 slot)=0 |
Set a texture slot used for rendering. More... | |
virtual SInt32 | GetTextureSlot (UInt32 unit) const =0 |
Get a texture slot used for rendering. More... | |
virtual Bool | SetVerticesSlotOffset (SInt32 slot)=0 |
Set the vertices slot offset used for rendering. More... | |
virtual SInt32 | GetVerticesSlotOffset () const =0 |
Get the vertices slot offset used for rendering. More... | |
virtual Bool | SetMaterialSlotOffset (SInt32 slot)=0 |
Set the material slot offset used for rendering. More... | |
virtual SInt32 | GetMaterialSlotOffset () const =0 |
Get the material slot offset used for rendering. More... | |
virtual Bool | SetParametersSlotOffset (SInt32 slot)=0 |
Set the parameters slot offset used for rendering. More... | |
virtual SInt32 | GetParametersSlotOffset () const =0 |
Get the parameters slot offset used for rendering. More... | |
virtual Bool | SetTextureSlotOffset (UInt32 unit, SInt32 slot)=0 |
Set a texture slot offset used for rendering. More... | |
virtual SInt32 | GetTextureSlotOffset (UInt32 unit) const =0 |
Get a texture slot offset used for rendering. More... | |
virtual Bool | SetBufferAccessMode (IEnums::BufferAccessMode mode)=0 |
Set the buffer access mode. More... | |
virtual IEnums::BufferAccessMode | GetBufferAccessMode () const =0 |
Get the buffer access mode. More... | |
virtual Bool | SetPrimitiveType (IEnums::PrimitiveType type)=0 |
Set the primitive type used for rendering. More... | |
virtual IEnums::PrimitiveType | GetPrimitiveType () const =0 |
Get the primitive type used for rendering. More... | |
virtual Bool | SetMaxNumberOfLightStages (UInt32 maxNumStages)=0 |
Set the maximum number of light stages used for rendering. More... | |
virtual UInt32 | GetMaxNumberOfLightStages () const =0 |
Get the maximum number of light stages used for rendering. More... | |
virtual Bool | SetMaxNumberOfBonesPerVertex (UInt32 maxNumBones)=0 |
Set the maximum number of bones per vertex for vertex skinning. More... | |
virtual UInt32 | GetMaxNumberOfBonesPerVertex () const =0 |
Get the maximum number of bones per vertex for vertex skinning. More... | |
virtual Bool | SetViewCullingEnabled (Bool enabled)=0 |
Enable/disable view culling. More... | |
virtual Bool | IsViewCullingEnabled () const =0 |
Check if view culling is enabled. More... | |
virtual Bool | SetDynamicBatchingAllowed (Bool allowed)=0 |
Allow/disallow dynamic batching. More... | |
virtual Bool | IsDynamicBatchingAllowed () const =0 |
Check if dynamic batching is allowed. More... | |
virtual Bool | SetClippingAllowed (Bool allowed)=0 |
Allow/disallow clipping. More... | |
virtual Bool | IsClippingAllowed () const =0 |
Check if clipping is allowed. More... | |
virtual Bool | SetCpuSkinningEnabled (Bool enabled)=0 |
Enable/disable CPU vertex skinning. More... | |
virtual Bool | IsCpuSkinningEnabled () const =0 |
Check if CPU vertex skinning is enabled. More... | |
Public Member Functions inherited from Murl::Graph::IIndexBuffer | |
virtual Bool | SetIndexBufferAccessMode (IEnums::BufferAccessMode mode)=0 |
Set the buffer access mode. More... | |
virtual IEnums::BufferAccessMode | GetIndexBufferAccessMode () const =0 |
Get the buffer access mode. More... | |
virtual Bool | SetMaxNumberOfIndices (UInt32 maxNumberOfIndices, Bool preserveContents)=0 |
Set the maximum number of indices the index buffer can hold. More... | |
virtual UInt32 | GetMaxNumberOfIndices () const =0 |
Get the maximum number of indices the index buffer can hold. More... | |
virtual Bool | SetIndexType (IEnums::IndexType type)=0 |
Set the data type of the indices stored in the buffer. More... | |
virtual IEnums::IndexType | GetIndexType () const =0 |
Get the data type of the indices stored in the buffer. More... | |
virtual UInt32 | GetIndexByteSize () const =0 |
Get the number of bytes of a single index element stored. More... | |
virtual void * | GetIndexData ()=0 |
Retrieve a mutable pointer to the index data stored in the buffer. More... | |
virtual const void * | GetIndexData () const =0 |
Retrieve a constant pointer to the index data stored in the buffer. More... | |
virtual Bool | SetNumberOfIndices (UInt32 numberOfIndices)=0 |
Set the actual number of indices currently used. More... | |
virtual Bool | SetIndicesModified ()=0 |
Mark the whole index buffer as modified. More... | |
virtual Bool | SetIndicesModified (UInt32 firstIndex, UInt32 numberOfIndices)=0 |
Mark a portion of the index buffer as modified. More... | |
Public Member Functions inherited from Murl::Graph::IVertexBuffer | |
virtual Bool | SetVertexBufferAccessMode (IEnums::BufferAccessMode mode)=0 |
Set the buffer access mode. More... | |
virtual IEnums::BufferAccessMode | GetVertexBufferAccessMode () const =0 |
Get the buffer access mode. More... | |
virtual Bool | SetMaxNumberOfVertices (UInt32 maxNumberOfVertices, Bool preserveContents)=0 |
Set the maximum number of vertices the vertex buffer can hold. More... | |
virtual UInt32 | GetMaxNumberOfVertices () const =0 |
Get the maximum number of vertices the vertex buffer can hold. More... | |
virtual Bool | SetVertexByteSize (UInt32 byteSize)=0 |
Explicitly set the total byte size of single vertex element. More... | |
virtual UInt32 | GetVertexByteSize () const =0 |
Get the total byte size of single vertex element in the buffer. More... | |
virtual void * | GetVertexData ()=0 |
Retrieve a mutable pointer to the vertex data stored in the buffer. More... | |
virtual const void * | GetVertexData () const =0 |
Retrieve a constant pointer to the vertex data stored in the buffer. More... | |
virtual Bool | SetNumberOfVertices (UInt32 numberOfVertices)=0 |
Set the actual number of vertices currently used. More... | |
virtual Bool | SetVerticesModified ()=0 |
Mark the whole vertex buffer as modified. More... | |
virtual Bool | SetVerticesModified (UInt32 firstVertex, UInt32 numberOfVertices)=0 |
Mark a portion of the vertex buffer as modified. More... | |
virtual Video::IVertexBuffer * | GetVideoObject ()=0 |
Returns the underlying video vertex buffer object. More... | |
Public Member Functions inherited from Murl::Graph::IAttributeContainer | |
virtual SInt32 | AddAttribute (IEnums::AttributeItem item, IEnums::AttributeType type, UInt32 &byteOffset)=0 |
Add a predefined vertex attribute. More... | |
virtual SInt32 | AddAttribute (const String &name, IEnums::AttributeType type, UInt32 &byteOffset)=0 |
Add a user-defined vertex attribute. More... | |
virtual SInt32 | GetAttributeIndex (IEnums::AttributeItem item) const =0 |
Query the location of a predefined attribute in the container. More... | |
virtual SInt32 | GetAttributeIndex (const String &name) const =0 |
Query the location of a user-defined attribute in the container. More... | |
virtual UInt32 | GetNumberOfAttributes () const =0 |
Get the total number of individual attributes in the container. More... | |
virtual IEnums::AttributeType | GetAttributeType (UInt32 index) const =0 |
Query the type of an attribute at a given index. More... | |
virtual IEnums::AttributeItem | GetAttributeItem (UInt32 index) const =0 |
Query the predefined item of an attribute at a given index. More... | |
virtual const String & | GetAttributeName (UInt32 index) const =0 |
Query the variable name of an attribute at a given index. More... | |
virtual UInt32 | GetAttributeByteOffset (UInt32 index) const =0 |
Get the byte offset of an attribute at a given index. More... | |
virtual IAttribute * | GetAttribute (UInt32 index) const =0 |
Get the attribute object at a given index. More... | |
virtual IFloatAttribute * | GetFloatAttribute (UInt32 index) const =0 |
Get the attribute at a given index as a scalar float object. More... | |
virtual IFloatVector2Attribute * | GetFloatVector2Attribute (UInt32 index) const =0 |
Get the attribute at a given index as a 2-component float vector object. More... | |
virtual IFloatVector3Attribute * | GetFloatVector3Attribute (UInt32 index) const =0 |
Get the attribute at a given index as a 3-component float vector object. More... | |
virtual IFloatVector4Attribute * | GetFloatVector4Attribute (UInt32 index) const =0 |
Get the attribute at a given index as a 4-component float vector object. More... | |
virtual IUInt8Attribute * | GetUInt8Attribute (UInt32 index) const =0 |
Get the attribute at a given index as a scalar UInt8 object. More... | |
virtual IUInt8Vector2Attribute * | GetUInt8Vector2Attribute (UInt32 index) const =0 |
Get the attribute at a given index as a 2-component UInt8 vector object. More... | |
virtual IUInt8Vector3Attribute * | GetUInt8Vector3Attribute (UInt32 index) const =0 |
Get the attribute at a given index as a 3-component UInt8 vector object. More... | |
virtual IUInt8Vector4Attribute * | GetUInt8Vector4Attribute (UInt32 index) const =0 |
Get the attribute at a given index as a 4-component UInt8 vector object. More... | |
virtual ISInt8Attribute * | GetSInt8Attribute (UInt32 index) const =0 |
Get the attribute at a given index as a scalar SInt8 object. More... | |
virtual ISInt8Vector2Attribute * | GetSInt8Vector2Attribute (UInt32 index) const =0 |
Get the attribute at a given index as a 2-component SInt8 vector object. More... | |
virtual ISInt8Vector3Attribute * | GetSInt8Vector3Attribute (UInt32 index) const =0 |
Get the attribute at a given index as a 3-component SInt8 vector object. More... | |
virtual ISInt8Vector4Attribute * | GetSInt8Vector4Attribute (UInt32 index) const =0 |
Get the attribute at a given index as a 4-component SInt8 vector object. More... | |
virtual IUInt16Attribute * | GetUInt16Attribute (UInt32 index) const =0 |
Get the attribute at a given index as a scalar UInt16 object. More... | |
virtual IUInt16Vector2Attribute * | GetUInt16Vector2Attribute (UInt32 index) const =0 |
Get the attribute at a given index as a 2-component UInt16 vector object. More... | |
virtual IUInt16Vector3Attribute * | GetUInt16Vector3Attribute (UInt32 index) const =0 |
Get the attribute at a given index as a 3-component UInt16 vector object. More... | |
virtual IUInt16Vector4Attribute * | GetUInt16Vector4Attribute (UInt32 index) const =0 |
Get the attribute at a given index as a 4-component UInt16 vector object. More... | |
virtual ISInt16Attribute * | GetSInt16Attribute (UInt32 index) const =0 |
Get the attribute at a given index as a scalar SInt16 object. More... | |
virtual ISInt16Vector2Attribute * | GetSInt16Vector2Attribute (UInt32 index) const =0 |
Get the attribute at a given index as a 2-component SInt16 vector object. More... | |
virtual ISInt16Vector3Attribute * | GetSInt16Vector3Attribute (UInt32 index) const =0 |
Get the attribute at a given index as a 3-component SInt16 vector object. More... | |
virtual ISInt16Vector4Attribute * | GetSInt16Vector4Attribute (UInt32 index) const =0 |
Get the attribute at a given index as a 4-component SInt16 vector object. More... | |
virtual IUInt32Attribute * | GetUInt32Attribute (UInt32 index) const =0 |
Get the attribute at a given index as a scalar UInt32 object. More... | |
virtual IUInt32Vector2Attribute * | GetUInt32Vector2Attribute (UInt32 index) const =0 |
Get the attribute at a given index as a 2-component UInt32 vector object. More... | |
virtual IUInt32Vector3Attribute * | GetUInt32Vector3Attribute (UInt32 index) const =0 |
Get the attribute at a given index as a 3-component UInt32 vector object. More... | |
virtual IUInt32Vector4Attribute * | GetUInt32Vector4Attribute (UInt32 index) const =0 |
Get the attribute at a given index as a 4-component UInt32 vector object. More... | |
virtual ISInt32Attribute * | GetSInt32Attribute (UInt32 index) const =0 |
Get the attribute at a given index as a scalar SInt32 object. More... | |
virtual ISInt32Vector2Attribute * | GetSInt32Vector2Attribute (UInt32 index) const =0 |
Get the attribute at a given index as a 2-component SInt32 vector object. More... | |
virtual ISInt32Vector3Attribute * | GetSInt32Vector3Attribute (UInt32 index) const =0 |
Get the attribute at a given index as a 3-component SInt32 vector object. More... | |
virtual ISInt32Vector4Attribute * | GetSInt32Vector4Attribute (UInt32 index) const =0 |
Get the attribute at a given index as a 4-component SInt32 vector object. More... | |
virtual IUInt8Attribute * | GetNormalizedUInt8Attribute (UInt32 index) const =0 |
Get the attribute at a given index as a normalized scalar UInt8 object. More... | |
virtual IUInt8Vector2Attribute * | GetNormalizedUInt8Vector2Attribute (UInt32 index) const =0 |
Get the attribute at a given index as a normalized 2-component UInt8 vector object. More... | |
virtual IUInt8Vector3Attribute * | GetNormalizedUInt8Vector3Attribute (UInt32 index) const =0 |
Get the attribute at a given index as a normalized 3-component UInt8 vector object. More... | |
virtual IUInt8Vector4Attribute * | GetNormalizedUInt8Vector4Attribute (UInt32 index) const =0 |
Get the attribute at a given index as a normalized 4-component UInt8 vector object. More... | |
virtual ISInt8Attribute * | GetNormalizedSInt8Attribute (UInt32 index) const =0 |
Get the attribute at a given index as a normalized scalar SInt8 object. More... | |
virtual ISInt8Vector2Attribute * | GetNormalizedSInt8Vector2Attribute (UInt32 index) const =0 |
Get the attribute at a given index as a normalized 2-component SInt8 vector object. More... | |
virtual ISInt8Vector3Attribute * | GetNormalizedSInt8Vector3Attribute (UInt32 index) const =0 |
Get the attribute at a given index as a normalized 3-component SInt8 vector object. More... | |
virtual ISInt8Vector4Attribute * | GetNormalizedSInt8Vector4Attribute (UInt32 index) const =0 |
Get the attribute at a given index as a normalized 4-component SInt8 vector object. More... | |
virtual IUInt16Attribute * | GetNormalizedUInt16Attribute (UInt32 index) const =0 |
Get the attribute at a given index as a normalized scalar UInt16 object. More... | |
virtual IUInt16Vector2Attribute * | GetNormalizedUInt16Vector2Attribute (UInt32 index) const =0 |
Get the attribute at a given index as a normalized 2-component UInt16 vector object. More... | |
virtual IUInt16Vector3Attribute * | GetNormalizedUInt16Vector3Attribute (UInt32 index) const =0 |
Get the attribute at a given index as a normalized 3-component UInt16 vector object. More... | |
virtual IUInt16Vector4Attribute * | GetNormalizedUInt16Vector4Attribute (UInt32 index) const =0 |
Get the attribute at a given index as a normalized 4-component UInt16 vector object. More... | |
virtual ISInt16Attribute * | GetNormalizedSInt16Attribute (UInt32 index) const =0 |
Get the attribute at a given index as a normalized scalar SInt16 object. More... | |
virtual ISInt16Vector2Attribute * | GetNormalizedSInt16Vector2Attribute (UInt32 index) const =0 |
Get the attribute at a given index as a normalized 2-component SInt16 vector object. More... | |
virtual ISInt16Vector3Attribute * | GetNormalizedSInt16Vector3Attribute (UInt32 index) const =0 |
Get the attribute at a given index as a normalized 3-component SInt16 vector object. More... | |
virtual ISInt16Vector4Attribute * | GetNormalizedSInt16Vector4Attribute (UInt32 index) const =0 |
Get the attribute at a given index as a normalized 4-component SInt16 vector object. More... | |
Detailed Description
The IGenericGeometry graph node interface.
This interface represents a generic geometry object for rendering, composed of a vertex buffer holding individual vertices with different attributes, and an index buffer holding a sequence of indices into that vertex buffer.
Use the Graph::IVertexBuffer and Graph::IIndexBuffer base interfaces to access the underlying vertex and index data, respectively.
Member Function Documentation
◆ GetNodeInterface() [1/2]
|
pure virtual |
Get the mutable Graph::INode interface.
This method returns a mutable pointer to the node's Graph::INode interface, to be able to query or modify common node properties such as active state, visibility or ID.
- Returns
- The mutable Graph::INode interface, or null if not available
◆ GetNodeInterface() [2/2]
|
pure virtual |
Get the constant Graph::INode interface.
This method returns a constant pointer to the node's Graph::INode interface, to be able to query common node properties such as active state, visibility or ID.
- Returns
- The constant Graph::INode interface, or null if not available
◆ GetTransformInterface() [1/2]
|
pure virtual |
Get the mutable Graph::ITransform interface.
This method returns a mutable pointer to the node's Graph::ITransform interface, to be able to query or modify the node's transformation matrix and depth order.
- Returns
- The mutable Graph::ITransform interface, or null if not available
◆ GetTransformInterface() [2/2]
|
pure virtual |
Get the constant Graph::ITransform interface.
This method returns a constant pointer to the node's Graph::ITransform interface, to be able to query the node's transformation matrix and depth order.
- Returns
- The constant Graph::ITransform interface, or null if not available
◆ SetBoundingBox()
Set the bounding box used for culling and aligning.
- Parameters
-
boundingBox The bounding box.
- Returns
- true if successful.
◆ GetBoundingBox()
|
pure virtual |
Get the bounding box used for culling and aligning.
- Returns
- The bounding box.
The documentation for this interface was generated from the following file:
- murl_graph_i_generic_geometry.h