1
0

Changed Tracer::m_NormalTable to static array

Was previously instantiated for every trace
This commit is contained in:
Woazboat 2015-04-29 00:14:42 +02:00
parent 2f264dba71
commit 3d1bd544b0
2 changed files with 14 additions and 7 deletions

View File

@ -15,16 +15,21 @@
const float FLOAT_EPSILON = 0.0001f; //TODO: Stash this in some header where it can be reused
const std::array<const Vector3f, 6> cTracer::m_NormalTable =
{
Vector3f(-1, 0, 0), // 1: -x
Vector3f( 0, 0, -1), // 2: -z
Vector3f( 1, 0, 0), // 3: +x
Vector3f( 0, 0, 1), // 4: +z
Vector3f( 0, 1, 0), // 5: +y
Vector3f( 0, -1, 0) // 6: -y
};
cTracer::cTracer(cWorld * a_World):
m_World(a_World)
{
m_NormalTable[0].Set(-1, 0, 0);
m_NormalTable[1].Set( 0, 0, -1);
m_NormalTable[2].Set( 1, 0, 0);
m_NormalTable[3].Set( 0, 0, 1);
m_NormalTable[4].Set( 0, 1, 0);
m_NormalTable[5].Set( 0, -1, 0);
}

View File

@ -3,6 +3,8 @@
#include "Vector3.h"
#include <array>
@ -65,7 +67,7 @@ private:
int SigNum( float a_Num);
cWorld* m_World;
Vector3f m_NormalTable[6];
static const std::array<const Vector3f, 6> m_NormalTable;
Vector3f dir;
Vector3f tDelta;