Welcome to mirror list, hosted at ThFree Co, Russian Federation.

git.blender.org/blender.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorNathan Letwory <nathan@letworyinteractive.com>2004-03-23 01:02:18 +0300
committerNathan Letwory <nathan@letworyinteractive.com>2004-03-23 01:02:18 +0300
commit00291b5cf4a0f16ddca425b74ed30e8ac35d40e2 (patch)
tree952bb1c2f6fd8c2f34b950597ed0fa73a4ea7594 /source/gameengine/Rasterizer/RAS_TexVert.h
parent5b90aafbd6815e29343f8e9aba9e3e20f85b3cc0 (diff)
[GameEngine] Commit all Kester's changes made to the gameengine to restore 2.25 like physics.
[SCons] Build with Solid as default when enabling the gameengine in the build process [SCons] Build solid and qhull from the extern directory and link statically against them That was about it. There are a few things that needs double checking: * Makefiles * Projectfiles * All the other systems than Linux and Windows on which the build (with scons) has been successfully tested.
Diffstat (limited to 'source/gameengine/Rasterizer/RAS_TexVert.h')
-rw-r--r--source/gameengine/Rasterizer/RAS_TexVert.h47
1 files changed, 30 insertions, 17 deletions
diff --git a/source/gameengine/Rasterizer/RAS_TexVert.h b/source/gameengine/Rasterizer/RAS_TexVert.h
index 0e19ea61d9d..cd529e7d586 100644
--- a/source/gameengine/Rasterizer/RAS_TexVert.h
+++ b/source/gameengine/Rasterizer/RAS_TexVert.h
@@ -42,14 +42,16 @@ static MT_Point2 g_pt2;
#define TV_CALCFACENORMAL 0x0001
+#define RAS_TexVert_INLINE 1
+
class RAS_TexVert
{
- float m_localxyz[3]; // 3*4=12 = 24
- float m_uv1[2]; // 2*4=8 = 24 + 16 = 40
- unsigned int m_rgba; //4 = 40 + 4 = 44
- short m_normal[3]; //3*2=6 = 50
- short m_flag; //32 bytes total size, fits nice = 52 = not fit nice
+ float m_localxyz[3]; // 3*4 = 12 = 24
+ float m_uv1[2]; // 2*4 = 8 = 24 + 16 = 40
+ unsigned int m_rgba; // 4 = 40 + 4 = 44
+ short m_normal[3]; // 3*2 = 6 = 50
+ short m_flag; // 32 bytes total size, fits nice = 52 = not fit nice
public:
@@ -64,11 +66,28 @@ public:
~RAS_TexVert() {};
// leave multiline for debugging
+#ifdef RAS_TexVert_INLINE
+ const float* getUV1 () const {
+ return m_uv1;
+ };
+
+ const float* getLocalXYZ() const {
+ return m_localxyz;
+ };
+
+ const short* getNormal() const {
+ return m_normal;
+ }
+
+ const unsigned int& getRGBA() const {
+ return m_rgba;
+ }
+#else
const float* getUV1 () const;
-
- //const float* getUV1 () const {
- // return m_uv1;
- //};
+ const short* getNormal() const;
+ const float* getLocalXYZ() const;
+ const unsigned int& getRGBA() const;
+#endif
const MT_Point3& xyz();
@@ -77,14 +96,7 @@ public:
void SetRGBA(const unsigned int rgba);
void SetNormal(const MT_Vector3& normal);
void SetFlag(const short flag);
- // leave multiline for debugging
- const short* getNormal() const;
- //const float* getLocalXYZ() const {
- // return m_localxyz;
- //};
-
- const float* getLocalXYZ() const;
- const unsigned int& getRGBA() const;
+
// compare two vertices, and return TRUE if both are almost identical (they can be shared)
bool closeTo(const RAS_TexVert* other);
@@ -92,6 +104,7 @@ public:
const MT_Point2& otheruv,
const unsigned int otherrgba,
short othernormal[3]) const;
+ void getOffsets(void*&xyz, void *&uv1, void *&rgba, void *&normal) const;
};
#endif //__RAS_TEXVERT