8 #ifndef META_OCEAN_RENDERING_GI_GEOMETRY_H
9 #define META_OCEAN_RENDERING_GI_GEOMETRY_H
22 namespace GlobalIllumination
This class implements a 3D bounding box.
Definition: BoundingBox.h:23
This class implements a bounding sphere.
Definition: BoundingSphere.h:23
This class is the base class for all rendering geometry nodes.
Definition: rendering/Geometry.h:43
This class implements a class factory for all Global Illumination objects.
Definition: GIFactory.h:30
This class wraps a geometry node.
Definition: GIGeometry.h:32
void addRenderable(const RenderableRef &renderable, const AttributeSetRef &attributes) override
Adds a new renderable object to this geometry.
BoundingBox boundingBox(const bool involveLocalTransformation=true) const override
Returns the bounding box of this node.
void removeRenderable(const RenderableRef &renderable) override
Removes a renderable object connected to this geometry.
void buildTracing(TracingGroup &group, const HomogenousMatrix4 &modelTransform, const LightSources &lightSources) const override
Builds the tracing object for this node and adds it to an already existing group of tracing objects.
GIGeometry()
Creates a new geometry object.
BoundingSphere boundingSphere(const bool involveLocalTransformation=true) const override
Returns the bounding sphere of this node.
~GIGeometry() override
Destructs a geometry object.
This class wraps a Global Illumination node object.
Definition: GINode.h:36
This class implements a group of tracing objects.
Definition: TracingGroup.h:28
This class implements a smart rendering object reference.
Definition: rendering/ObjectRef.h:34
std::vector< LightPair > LightSources
Definition of a vector holding light pairs.
Definition: GILightSource.h:40
The namespace covering the entire Ocean framework.
Definition: Accessor.h:15