21 #ifndef LIB_LIGHTMETRICA_PRIMITIVES_H
22 #define LIB_LIGHTMETRICA_PRIMITIVES_H
24 #include "component.h"
25 #include "math.types.h"
47 LM_COMPONENT_INTERFACE_DEF(
"primitives");
91 virtual AABB GetAABBEmitterShapes()
const = 0;
97 virtual void Reset() = 0;
143 #endif // LIB_LIGHTMETRICA_PRIMITIVES_H
virtual const Primitive * PrimitiveByIndex(int index) const =0
Definition: component.h:45
virtual int NumLights() const =0
Definition: primitive.h:39
virtual const Primitive * PrimitiveByID(const std::string &id) const =0
virtual const Light * LightByIndex(int index) const =0
virtual const Camera * MainCamera() const =0
virtual bool IntersectEmitterShapes(Ray &ray, Intersection &isect) const =0
virtual bool Load(const ConfigNode &node, const Assets &assets)=0
Definition: intersection.h:39
Definition: confignode.h:37
virtual int NumPrimitives() const =0
virtual bool PostConfigure(const Scene &scene)=0
Definition: primitives.h:43