Plasma Engine  2.0
Loading...
Searching...
No Matches
TracerInterface.h
1#pragma once
2
3#include <BakingPlugin/BakingPluginDLL.h>
4
5class plBakingScene;
6
7class PL_BAKINGPLUGIN_DLL plTracerInterface
8{
9public:
10 virtual plResult BuildScene(const plBakingScene& scene) = 0;
11
12 struct Ray
13 {
14 PL_DECLARE_POD_TYPE();
15
16 plVec3 m_vStartPos;
17 plVec3 m_vDir;
18 float m_fDistance;
19 };
20
21 struct Hit
22 {
23 PL_DECLARE_POD_TYPE();
24
25 plVec3 m_vPosition;
26 plVec3 m_vNormal;
27 float m_fDistance;
28 };
29
30 virtual void TraceRays(plArrayPtr<const Ray> rays, plArrayPtr<Hit> hits) = 0;
31};
This class encapsulates an array and it's size. It is recommended to use this class instead of plain ...
Definition ArrayPtr.h:37
Definition BakingScene.h:17
Definition TracerInterface.h:8
Default enum for returning failure or success, instead of using a bool.
Definition Types.h:54
Definition TracerInterface.h:22
Definition TracerInterface.h:13