From 2e6d57618232b8b4ce8e5afe84fd278041cbbbfe Mon Sep 17 00:00:00 2001 From: Erwin Coumans Date: Fri, 6 Jan 2006 03:46:54 +0000 Subject: Sorry to break the cvs-closed status, so if you really need to make a new 2.40 build, just disable the game engine if it doesn't compile for a platform. Again, sorry if this breaks non-windows platforms, but I hope people help to get this amazing fix working for all platforms. Armature-fixing contribution from Snailrose. Also lots of cool things from Snailrose and Lagan. Armatures are back Split screen Double sided lightning Ambient lighting Alpha test Material IPO support (one per object atm) Blender materials GLSL shaders - Python access Up to three texture samplers from the material panel ( 2D & Cube map ) Python access to a second set of uv coordinates See http://www.elysiun.com/forum/viewtopic.php?t=58057 --- .../gameengine/Rasterizer/RAS_IPolygonMaterial.h | 43 +++++++++++++++++----- 1 file changed, 34 insertions(+), 9 deletions(-) (limited to 'source/gameengine/Rasterizer/RAS_IPolygonMaterial.h') diff --git a/source/gameengine/Rasterizer/RAS_IPolygonMaterial.h b/source/gameengine/Rasterizer/RAS_IPolygonMaterial.h index b039b51dd8b..3e296c2b88b 100644 --- a/source/gameengine/Rasterizer/RAS_IPolygonMaterial.h +++ b/source/gameengine/Rasterizer/RAS_IPolygonMaterial.h @@ -43,6 +43,20 @@ class RAS_IRasterizer; +enum MaterialProps +{ + RAS_ZSORT =1, + RAS_TRANSPARENT =2, + RAS_TRIANGLE =4, + RAS_MULTITEX =8, + RAS_MULTILIGHT =16, + RAS_BLENDERMAT =32, + RAS_GLSHADER =64, + RAS_AUTOGEN =128, + RAS_NORMAL =256, + RAS_DEFMULTI =512 +}; + /** * Material properties. */ @@ -52,18 +66,21 @@ class RAS_IPolyMaterial protected: STR_HashedString m_texturename; STR_HashedString m_materialname; //also needed for touchsensor - int m_tile; - int m_tilexrep,m_tileyrep; - int m_drawingmode; // tface->mode - bool m_transparant; - bool m_zsort; - int m_lightlayer; - bool m_bIsTriangle; + int m_tile; + int m_tilexrep,m_tileyrep; + int m_drawingmode; // tface->mode + bool m_transparant; + bool m_zsort; + int m_lightlayer; + bool m_bIsTriangle; unsigned int m_polymatid; - static unsigned int m_newpolymatid; - + + // will move... + unsigned int m_flag;//MaterialProps + unsigned int m_enabled;// enabled for this mat + int m_multimode; // sum of values public: MT_Vector3 m_diffuse; @@ -124,6 +141,14 @@ public: int GetDrawingMode() const; const STR_String& GetMaterialName() const; const STR_String& GetTextureName() const; + const unsigned int GetFlag() const; + const unsigned int GetEnabled() const; + + /* + * PreCalculate texture gen + */ + virtual void OnConstruction(){} + }; inline bool operator ==( const RAS_IPolyMaterial & rhs,const RAS_IPolyMaterial & lhs) -- cgit v1.2.3