8 #ifndef META_OCEAN_RENDERING_PRIMITIVE_ATTRIBUTE_H
9 #define META_OCEAN_RENDERING_PRIMITIVE_ATTRIBUTE_H
21 class PrimitiveAttribute;
65 CULLING_BOTH = CULLING_BACK | CULLING_FRONT,
This class is the base class for all rendering attribute objects.
Definition: Attribute.h:39
ObjectType
Definition of different object type.
Definition: Object.h:63
This class implements an attribute specifying face and culling properties of primitives.
Definition: PrimitiveAttribute.h:35
ObjectType type() const override
Returns the type of this object.
virtual FaceMode faceMode() const
Returns the face mode of this attribute.
virtual void setCullingMode(const CullingMode culling)
Sets the culling mode for this attribute.
virtual void setFaceMode(const FaceMode mode)
Sets the face mode for this attribute.
virtual void setLightingMode(const LightingMode lighting)
Sets the lighting mode for this attribute.
FaceMode
Defines different face rendering modes.
Definition: PrimitiveAttribute.h:42
@ MODE_FACE
Face rendering mode rendering the entire face, which is the default mode.
Definition: PrimitiveAttribute.h:44
@ MODE_LINE
Line rendering mode rendering the face outlines only.
Definition: PrimitiveAttribute.h:46
@ MODE_POINT
Point rendering mode rendering the face vertices only.
Definition: PrimitiveAttribute.h:48
CullingMode
Defines different face culling modes.
Definition: PrimitiveAttribute.h:57
virtual CullingMode cullingMode() const
Returns the culling mode of this attribute.
virtual LightingMode lightingMode() const
Returns the lighting mode of this attribute.
PrimitiveAttribute()
Creates a new primitive attribute.
LightingMode
Definition of different lighting modes.
Definition: PrimitiveAttribute.h:74
@ LM_SINGLE_SIDE_LIGHTING
Front face is lighted.
Definition: PrimitiveAttribute.h:76
@ LM_TWO_SIDED_LIGHTING
Both faces are lighted.
Definition: PrimitiveAttribute.h:78
This class implements a smart rendering object reference.
Definition: rendering/ObjectRef.h:34
SmartObjectRef< PrimitiveAttribute > PrimitiveAttributeRef
Definition of a smart object reference holding a primitive attribute.
Definition: PrimitiveAttribute.h:21
The namespace covering the entire Ocean framework.
Definition: Accessor.h:15