|
|
|
|
@ -38,17 +38,22 @@ namespace Magnum { namespace Trade {
|
|
|
|
|
/**
|
|
|
|
|
@brief Three-dimensional object data |
|
|
|
|
|
|
|
|
|
Provides access to object transformation and hierarchy. See also |
|
|
|
|
MeshObjectData3D, which is specialized for objects with mesh instance type. |
|
|
|
|
@see ObjectData2D |
|
|
|
|
Provides access to object transformation and hierarchy. |
|
|
|
|
@see MeshObjectData3D, ObjectData2D |
|
|
|
|
*/ |
|
|
|
|
class MAGNUM_EXPORT ObjectData3D { |
|
|
|
|
public: |
|
|
|
|
/** @brief Instance type */ |
|
|
|
|
/** @brief Type of instance held by this object */ |
|
|
|
|
enum class InstanceType: UnsignedByte { |
|
|
|
|
Camera, /**< Camera instance (see CameraData) */ |
|
|
|
|
Light, /**< Light instance (see LightData) */ |
|
|
|
|
Mesh, /**< Three-dimensional mesh instance (see MeshData3D) */ |
|
|
|
|
|
|
|
|
|
/**
|
|
|
|
|
* Three-dimensional mesh instance. The data can be cast to |
|
|
|
|
* MeshObjectData3D to provide more information. |
|
|
|
|
*/ |
|
|
|
|
Mesh, |
|
|
|
|
|
|
|
|
|
Empty /**< Empty */ |
|
|
|
|
}; |
|
|
|
|
|
|
|
|
|
@ -91,10 +96,8 @@ class MAGNUM_EXPORT ObjectData3D {
|
|
|
|
|
|
|
|
|
|
/**
|
|
|
|
|
* @brief Instance type |
|
|
|
|
* @return Type of instance held by this object |
|
|
|
|
* |
|
|
|
|
* If the instance is of type InstanceType::Mesh, the instance can be |
|
|
|
|
* casted to MeshObjectData3D and provide more information. |
|
|
|
|
* @see instance() |
|
|
|
|
*/ |
|
|
|
|
InstanceType instanceType() const { return _instanceType; } |
|
|
|
|
|
|
|
|
|
|