diff options
author | Erwin Coumans <blender@erwincoumans.com> | 2006-04-11 09:57:30 +0400 |
---|---|---|
committer | Erwin Coumans <blender@erwincoumans.com> | 2006-04-11 09:57:30 +0400 |
commit | 8dbe14b70b427ff449e1f4a7bb4cff989100f629 (patch) | |
tree | 3b3269edd4aa45acf07bf3fdb75ffcac9f2bb3ab /source/gameengine | |
parent | e9d4518c3aae5850ec6c3ae925411c903daee431 (diff) |
applied Charlies patch, reverted some GLSL shader stuff, improved penetration depth estimate.
Diffstat (limited to 'source/gameengine')
13 files changed, 111 insertions, 112 deletions
diff --git a/source/gameengine/Converter/BL_BlenderDataConversion.cpp b/source/gameengine/Converter/BL_BlenderDataConversion.cpp index 283120fe2f3..408b909a625 100644 --- a/source/gameengine/Converter/BL_BlenderDataConversion.cpp +++ b/source/gameengine/Converter/BL_BlenderDataConversion.cpp @@ -494,7 +494,17 @@ BL_Material* ConvertMaterial( Mesh* mesh, Material *mat, TFace* tface, MFace* material->spec_f = mat->spec; material->ref = mat->ref; material->amb = mat->amb; - material->ras_mode |= ((mat->mode & MA_ZTRA) != 0)?ZSORT:0; + + // set alpha testing without z-sorting + if( ((mesh->tface && tface ) && (!tface->transp)) && mat->mode & MA_ZTRA) { + // sets the RAS_IPolyMaterial::m_flag |RAS_FORCEALPHA + // this is so we don't have the overhead of the z-sorting code + material->ras_mode|=ALPHA_TEST; + } + else{ + // use regular z-sorting + material->ras_mode |= ((mat->mode & MA_ZTRA) != 0)?ZSORT:0; + } material->ras_mode |= ((mat->mode & MA_WIRE) != 0)?WIRE:0; } else { diff --git a/source/gameengine/Ketsji/BL_Material.h b/source/gameengine/Ketsji/BL_Material.h index 27d59257cbd..dbf482e2db3 100644 --- a/source/gameengine/Ketsji/BL_Material.h +++ b/source/gameengine/Ketsji/BL_Material.h @@ -120,7 +120,8 @@ enum BL_flag TEXALPHA=8, // use alpha combiner functions TEXNEG=16, // negate blending HASIPO=32, - USENEGALPHA=64 + USENEGALPHA=64, + ALPHA_TEST=128 }; // BL_Material::ras_mode diff --git a/source/gameengine/Ketsji/BL_Shader.cpp b/source/gameengine/Ketsji/BL_Shader.cpp index 5598224c1ea..4a664589871 100644 --- a/source/gameengine/Ketsji/BL_Shader.cpp +++ b/source/gameengine/Ketsji/BL_Shader.cpp @@ -28,19 +28,7 @@ //using namespace bgl; #define spit(x) std::cout << x << std::endl; -/* ---- - testing for a faster solution! - ... just compile out - The idea is to install a shader in other - areas if code, find the shader via the scene and, - install it with ... - - shader->ApplyShader() - ... - shader->UnloadShader() -*/ #define SORT_UNIFORMS 1 - #define UNIFORM_MAX_LEN sizeof(float)*16 BL_Uniform::BL_Uniform(int data_size) @@ -143,15 +131,16 @@ BL_Shader::BL_Shader(PyTypeObject *T) mPass(1), mOk(0), mUse(0), + mAttr(0), vertProg(""), fragProg(""), mError(0), mDirty(true) { // if !RAS_EXT_support._ARB_shader_objects this class will not be used - for (int i=0; i<MAXTEX; i++) { - mSampler[i] = BL_Sampler(); - } + //for (int i=0; i<MAXTEX; i++) { + // mSampler[i] = BL_Sampler(); + //} } using namespace bgl; @@ -159,12 +148,12 @@ using namespace bgl; BL_Shader::~BL_Shader() { #ifdef GL_ARB_shader_objects - for (int i=0; i<MAXTEX; i++){ - if(mSampler[i].mOwn) { - if(mSampler[i].mTexture) - mSampler[i].mTexture->DeleteTex(); - } - } + //for (int i=0; i<MAXTEX; i++){ + // if(mSampler[i].mOwn) { + // if(mSampler[i].mTexture) + // mSampler[i].mTexture->DeleteTex(); + // } + //} ClearUniforms(); if( mShader ) { @@ -214,15 +203,6 @@ BL_Uniform *BL_Shader::FindUniform(const int location) void BL_Shader::SetUniformfv(int location, int type, float *param,int size, bool transpose) { #ifdef SORT_UNIFORMS -#ifdef WIN32 -#ifndef NDEBUG - MT_assert(type > BL_Uniform::UNI_NONE && type < BL_Uniform::UNI_MAX); - MT_assert(location); - MT_assert(param); - //MT_assert(size > 0 && size <= UNIFORM_MAX_LEN); -#endif -#endif //WIN32 - BL_Uniform *uni= FindUniform(location); if(uni) { memcpy(uni->getData(), param, size); @@ -242,16 +222,6 @@ void BL_Shader::SetUniformfv(int location, int type, float *param,int size, bool void BL_Shader::SetUniformiv(int location, int type, int *param,int size, bool transpose) { #ifdef SORT_UNIFORMS -#ifdef WIN32 -#ifndef NDEBUG - //MT_assert(type > BL_Uniform::UNI_NONE && type < BL_Uniform::UNI_MAX); - MT_assert(location); - MT_assert(param); - //MT_assert(size > 0 && size <= UNIFORM_MAX_LEN); -#endif -#endif //WIN32 - - BL_Uniform *uni= FindUniform(location); if(uni) { memcpy(uni->getData(), param, size); @@ -438,12 +408,12 @@ unsigned int BL_Shader::GetProg() { return mShader; } - -const BL_Sampler* BL_Shader::GetSampler(int i) -{ - MT_assert(i<=MAXTEX); - return &mSampler[i]; -} +// +//const BL_Sampler* BL_Shader::GetSampler(int i) +//{ +// MT_assert(i<=MAXTEX); +// return &mSampler[i]; +//} void BL_Shader::SetSampler(int loc, int unit) { @@ -457,14 +427,14 @@ void BL_Shader::SetSampler(int loc, int unit) } #endif } - -void BL_Shader::InitializeSampler(int unit, BL_Texture* texture) -{ - MT_assert(unit<=MAXTEX); - mSampler[unit].mTexture = texture; - mSampler[unit].mLoc =-1; - mSampler[unit].mOwn = 0; -} +// +//void BL_Shader::InitializeSampler(int unit, BL_Texture* texture) +//{ +// MT_assert(unit<=MAXTEX); +// mSampler[unit].mTexture = texture; +// mSampler[unit].mLoc =-1; +// mSampler[unit].mOwn = 0; +//} void BL_Shader::SetProg(bool enable) { @@ -504,7 +474,7 @@ void BL_Shader::Update( const KX_MeshSlot & ms, RAS_IRasterizer* rasty ) for(it = mPreDef.begin(); it!= mPreDef.end(); it++) { BL_DefUniform *uni = (*it); - if(!uni->mLoc) continue; + if(uni->mLoc == -1) continue; switch (uni->mType) { @@ -826,8 +796,7 @@ PyMethodDef BL_Shader::Methods[] = KX_PYMETHODTABLE( BL_Shader, setUniform2i ), KX_PYMETHODTABLE( BL_Shader, setUniform3i ), KX_PYMETHODTABLE( BL_Shader, setUniform4i ), -// TODO: GL_ARB_vertex/fragment_program support -// KX_PYMETHODTABLE( BL_Shader, setAttrib ), + KX_PYMETHODTABLE( BL_Shader, setAttrib ), KX_PYMETHODTABLE( BL_Shader, setUniformfv ), KX_PYMETHODTABLE( BL_Shader, setUniformiv ), @@ -967,10 +936,18 @@ KX_PYMETHODDEF_DOC( BL_Shader, setSampler, "setSampler(name, index)" ) { int loc = GetUniformLocation(uniform); if(loc != -1) { - if(index <= MAXTEX) - mSampler[index].mLoc = loc; - else + if(index >= MAXTEX && index < 0) spit("Invalid texture sample index: " << index); + +#ifdef SORT_UNIFORMS + SetUniformiv(loc, BL_Uniform::UNI_INT, &index, (sizeof(int)) ); +#else + SetUniform(loc, index); +#endif + //if(index <= MAXTEX) + // mSampler[index].mLoc = loc; + //else + // spit("Invalid texture sample index: " << index); } Py_Return; } @@ -1418,7 +1395,24 @@ KX_PYMETHODDEF_DOC( BL_Shader, setUniformMatrix3, KX_PYMETHODDEF_DOC( BL_Shader, setAttrib, "setAttrib(enum)" ) { - Py_Return; +#ifdef GL_ARB_shader_objects + if(mError) { + Py_INCREF(Py_None); + return Py_None; + } + int attr=0; + if(PyArg_ParseTuple(args, "i", &attr )) { + if(mShader==0) { + PyErr_Format(PyExc_ValueError, "invalid shader object"); + return NULL; + } + mAttr=SHD_TANGENT; + bgl::blUseProgramObjectARB(mShader); + bgl::blBindAttribLocationARB(mShader, mAttr, "Tangent"); + Py_Return; + } + return NULL; +#endif } diff --git a/source/gameengine/Ketsji/BL_Shader.h b/source/gameengine/Ketsji/BL_Shader.h index 550f4750a33..8f303454087 100644 --- a/source/gameengine/Ketsji/BL_Shader.h +++ b/source/gameengine/Ketsji/BL_Shader.h @@ -21,14 +21,10 @@ class BL_Sampler { public: BL_Sampler(): - mLoc(-1), - mTexture(0), - mOwn(0) + mLoc(-1) { } int mLoc; // Sampler location - BL_Texture* mTexture; // Texture data - bool mOwn; // True if we own it }; /** @@ -104,7 +100,8 @@ private: int mPass; // 1.. unused bool mOk; // Valid and ok bool mUse; // ... - BL_Sampler mSampler[MAXTEX]; // Number of samplers +//BL_Sampler mSampler[MAXTEX]; // Number of samplers + int mAttr; // Tangent attribute char* vertProg; // Vertex program string char* fragProg; // Fragment program string bool mError; // ... @@ -166,12 +163,13 @@ public: int getNumPass() {return mPass;} bool GetError() {return mError;} // --- - const BL_Sampler* GetSampler(int i); + //const BL_Sampler* GetSampler(int i); void SetSampler(int loc, int unit); const bool Ok()const; unsigned int GetProg(); void SetProg(bool enable); + int GetAttribute(){return mAttr;}; // -- // Apply methods : sets colected uniforms @@ -181,8 +179,8 @@ public: // Update predefined uniforms each render call void Update(const class KX_MeshSlot & ms, class RAS_IRasterizer* rasty); - // Set sampler units (copied) - void InitializeSampler(int unit, BL_Texture* texture ); + //// Set sampler units (copied) + //void InitializeSampler(int unit, BL_Texture* texture ); void SetUniformfv(int location,int type, float *param, int size,bool transpose=false); @@ -206,15 +204,16 @@ public: // Python interface virtual PyObject* _getattr(const STR_String& attr); + // ----------------------------------- KX_PYMETHOD_DOC( BL_Shader, setSource ); KX_PYMETHOD_DOC( BL_Shader, delSource ); KX_PYMETHOD_DOC( BL_Shader, getVertexProg ); KX_PYMETHOD_DOC( BL_Shader, getFragmentProg ); KX_PYMETHOD_DOC( BL_Shader, setNumberOfPasses ); - - // ----------------------------------- KX_PYMETHOD_DOC( BL_Shader, isValid); KX_PYMETHOD_DOC( BL_Shader, validate); + + // ----------------------------------- KX_PYMETHOD_DOC( BL_Shader, setUniform4f ); KX_PYMETHOD_DOC( BL_Shader, setUniform3f ); KX_PYMETHOD_DOC( BL_Shader, setUniform2f ); @@ -223,19 +222,12 @@ public: KX_PYMETHOD_DOC( BL_Shader, setUniform3i ); KX_PYMETHOD_DOC( BL_Shader, setUniform2i ); KX_PYMETHOD_DOC( BL_Shader, setUniform1i ); - KX_PYMETHOD_DOC( BL_Shader, setUniformfv ); KX_PYMETHOD_DOC( BL_Shader, setUniformiv ); - KX_PYMETHOD_DOC( BL_Shader, setUniformMatrix4 ); KX_PYMETHOD_DOC( BL_Shader, setUniformMatrix3 ); - KX_PYMETHOD_DOC( BL_Shader, setUniformDef ); - KX_PYMETHOD_DOC( BL_Shader, setAttrib ); - - // These come from within the material buttons - // sampler2d/samplerCube work KX_PYMETHOD_DOC( BL_Shader, setSampler); }; diff --git a/source/gameengine/Ketsji/KX_BlenderMaterial.cpp b/source/gameengine/Ketsji/KX_BlenderMaterial.cpp index f61cab58392..af1a8ddb568 100644 --- a/source/gameengine/Ketsji/KX_BlenderMaterial.cpp +++ b/source/gameengine/Ketsji/KX_BlenderMaterial.cpp @@ -82,14 +82,13 @@ KX_BlenderMaterial::KX_BlenderMaterial( mPass(0) { - ///RAS_EXT_support._ARB_multitexture == true if were here - // -------------------------------- // RAS_IPolyMaterial variables... m_flag |=RAS_BLENDERMAT; m_flag |=(mMaterial->IdMode>=ONETEX)?RAS_MULTITEX:0; m_flag |=(mMaterial->ras_mode & USE_LIGHT)!=0?RAS_MULTILIGHT:0; - + m_flag |=(mMaterial->ras_mode &ALPHA_TEST)!=0?RAS_FORCEALPHA:0; + // figure max int enabled = mMaterial->num_enabled; int max = BL_Texture::GetMaxUnits(); @@ -197,17 +196,15 @@ void KX_BlenderMaterial::setShaderData( bool enable, RAS_IRasterizer *ras) // for each enabled unit for(i=0; i<mMaterial->num_enabled; i++) { - const BL_Sampler *samp = mShader->GetSampler(i); - BL_Texture *tex = samp->mTexture; - if( samp->mLoc == -1 || !tex || !tex->Ok() ) - continue; - tex->ActivateTexture(); - mShader->SetSampler(samp->mLoc, i); + if(!mTextures[i].Ok()) continue; + mTextures[i].ActivateTexture(); + mTextures[0].SetMapping(mMaterial->mapping[i].mapping); } + if(!mUserDefBlend) { setDefaultBlending(); - }else - { + } + else { // tested to be valid enums glEnable(GL_BLEND); glBlendFunc(mBlendFunc[0], mBlendFunc[1]); @@ -418,18 +415,19 @@ void KX_BlenderMaterial::ActivatGLMaterials( RAS_IRasterizer* rasty )const mMaterial->matcolor[0]*mMaterial->emit, mMaterial->matcolor[1]*mMaterial->emit, mMaterial->matcolor[2]*mMaterial->emit, - 1.0 - ); + 1.0 ); + rasty->SetAmbient(mMaterial->amb); if (mMaterial->material) rasty->SetPolygonOffset(-mMaterial->material->zoffs, 0.0); } + void KX_BlenderMaterial::ActivateTexGen(RAS_IRasterizer *ras) const { - //if(mShader && RAS_EXT_support._ARB_shader_objects) - // if(mShader->GetAttribute() == BL_Shader::SHD_TANGENT) - // ras->SetAttrib(RAS_IRasterizer::RAS_TEXTANGENT); + if(mShader && RAS_EXT_support._ARB_shader_objects) + if(mShader->GetAttribute() == BL_Shader::SHD_TANGENT) + ras->SetAttrib(RAS_IRasterizer::RAS_TEXTANGENT); for(int i=0; i<mMaterial->num_enabled; i++) { int mode = mMaterial->mapping[i].mapping; @@ -651,12 +649,6 @@ KX_PYMETHODDEF_DOC( KX_BlenderMaterial, getShader , "getShader()") if(!mShader && !mModified) { mShader = new BL_Shader(); - for(int i= 0; i<mMaterial->num_enabled; i++) { - if(mMaterial->mapping[i].mapping & USEENV ) - mShader->InitializeSampler(i, &mTextures[i]); - else - mShader->InitializeSampler(i, &mTextures[i]); - } mModified = true; } diff --git a/source/gameengine/Rasterizer/RAS_BucketManager.cpp b/source/gameengine/Rasterizer/RAS_BucketManager.cpp index 091e78c7b28..999a79546a1 100644 --- a/source/gameengine/Rasterizer/RAS_BucketManager.cpp +++ b/source/gameengine/Rasterizer/RAS_BucketManager.cpp @@ -142,7 +142,8 @@ void RAS_BucketManager::Renderbuckets( for (bucket = m_MaterialBuckets.begin(); bucket != m_MaterialBuckets.end(); ++bucket) { - if((*bucket)->GetPolyMaterial()->IsZSort()) + RAS_IPolyMaterial *tmp = (*bucket)->GetPolyMaterial(); + if(tmp->IsZSort() || tmp->GetFlag() &RAS_FORCEALPHA ) rasty->SetAlphaTest(true); else rasty->SetAlphaTest(false); diff --git a/source/gameengine/Rasterizer/RAS_IPolygonMaterial.h b/source/gameengine/Rasterizer/RAS_IPolygonMaterial.h index 6eef1647167..c02ff7c3566 100644 --- a/source/gameengine/Rasterizer/RAS_IPolygonMaterial.h +++ b/source/gameengine/Rasterizer/RAS_IPolygonMaterial.h @@ -54,7 +54,8 @@ enum MaterialProps RAS_GLSHADER =64, RAS_AUTOGEN =128, RAS_NORMAL =256, - RAS_DEFMULTI =512 + RAS_DEFMULTI =512, + RAS_FORCEALPHA =1024 }; /** diff --git a/source/gameengine/Rasterizer/RAS_IRasterizer.h b/source/gameengine/Rasterizer/RAS_IRasterizer.h index 66e0fe0678d..98a4c15b740 100644 --- a/source/gameengine/Rasterizer/RAS_IRasterizer.h +++ b/source/gameengine/Rasterizer/RAS_IRasterizer.h @@ -392,6 +392,7 @@ public: virtual void DrawDebugLine(const MT_Vector3& from,const MT_Vector3& to,const MT_Vector3& color)=0; virtual void SetTexCoords(TexCoGen coords, int unit) = 0; + virtual void SetAttrib(int type) = 0; virtual void GetViewMatrix(MT_Matrix4x4 &mat) const = 0; virtual bool QueryLists(){return false;} diff --git a/source/gameengine/Rasterizer/RAS_OpenGLRasterizer/RAS_GLExtensionManager.cpp b/source/gameengine/Rasterizer/RAS_OpenGLRasterizer/RAS_GLExtensionManager.cpp index 9e06fcda299..aba20e1a37b 100644 --- a/source/gameengine/Rasterizer/RAS_OpenGLRasterizer/RAS_GLExtensionManager.cpp +++ b/source/gameengine/Rasterizer/RAS_OpenGLRasterizer/RAS_GLExtensionManager.cpp @@ -406,7 +406,6 @@ PFNGLGETACTIVEATTRIBARBPROC blGetActiveAttribARB; PFNGLGETATTRIBLOCATIONARBPROC blGetAttribLocationARB; #endif -#if 0 // TODO: GL_ARB_vertex/fragment_program support #ifdef GL_ARB_vertex_program PFNGLVERTEXATTRIB1FARBPROC blVertexAttrib1fARB; PFNGLVERTEXATTRIB1FVARBPROC blVertexAttrib1fvARB; @@ -421,7 +420,6 @@ PFNGLGETATTRIBLOCATIONARBPROC blGetAttribLocationARB; PFNGLGETVERTEXATTRIBFVARBPROC blGetVertexAttribfvARB; PFNGLGETVERTEXATTRIBIVARBPROC blGetVertexAttribivARB; #endif -#endif #ifdef GL_EXT_compiled_vertex_array PFNGLLOCKARRAYSEXTPROC blLockArraysEXT; @@ -612,7 +610,6 @@ static void LinkExtensions() } #endif -#if 0 // TODO: GL_ARB_vertex/fragment_program support #if defined(GL_ARB_vertex_program) if (QueryExtension("GL_ARB_vertex_program")) { @@ -637,7 +634,6 @@ static void LinkExtensions() } } #endif -#endif #ifdef GL_ARB_depth_texture diff --git a/source/gameengine/Rasterizer/RAS_OpenGLRasterizer/RAS_GLExtensionManager.h b/source/gameengine/Rasterizer/RAS_OpenGLRasterizer/RAS_GLExtensionManager.h index 9e6df30708a..ff1be63f174 100644 --- a/source/gameengine/Rasterizer/RAS_OpenGLRasterizer/RAS_GLExtensionManager.h +++ b/source/gameengine/Rasterizer/RAS_OpenGLRasterizer/RAS_GLExtensionManager.h @@ -510,7 +510,6 @@ extern PFNGLGETACTIVEATTRIBARBPROC blGetActiveAttribARB; extern PFNGLGETATTRIBLOCATIONARBPROC blGetAttribLocationARB; #endif -#if 0 // TODO: GL_ARB_vertex/fragment_program support #ifdef GL_ARB_vertex_program extern PFNGLVERTEXATTRIB1FARBPROC blVertexAttrib1fARB; extern PFNGLVERTEXATTRIB1FVARBPROC blVertexAttrib1fvARB; @@ -525,7 +524,6 @@ extern PFNGLGETVERTEXATTRIBDVARBPROC blGetVertexAttribdvARB; extern PFNGLGETVERTEXATTRIBFVARBPROC blGetVertexAttribfvARB; extern PFNGLGETVERTEXATTRIBIVARBPROC blGetVertexAttribivARB; #endif -#endif #ifdef GL_EXT_compiled_vertex_array extern PFNGLLOCKARRAYSEXTPROC blLockArraysEXT; diff --git a/source/gameengine/Rasterizer/RAS_OpenGLRasterizer/RAS_OpenGLRasterizer.cpp b/source/gameengine/Rasterizer/RAS_OpenGLRasterizer/RAS_OpenGLRasterizer.cpp index 8f7876f66a1..5006506688a 100644 --- a/source/gameengine/Rasterizer/RAS_OpenGLRasterizer/RAS_OpenGLRasterizer.cpp +++ b/source/gameengine/Rasterizer/RAS_OpenGLRasterizer/RAS_OpenGLRasterizer.cpp @@ -81,6 +81,7 @@ RAS_OpenGLRasterizer::RAS_OpenGLRasterizer(RAS_ICanvas* canvas) m_focallength(0.0), m_setfocallength(false), m_noOfScanlines(32), + m_useTang(false), m_materialCachingInfo(0) { m_viewmatrix.Identity(); @@ -1208,6 +1209,10 @@ void RAS_OpenGLRasterizer::SetTexCoords(TexCoGen coords,int unit) m_texco[unit] = coords; } +void RAS_OpenGLRasterizer::SetAttrib(int type) +{ + if(type == RAS_TEXTANGENT) m_useTang=true; +} void RAS_OpenGLRasterizer::TexCoord(const RAS_TexVert &tv, int enabled) { @@ -1242,6 +1247,12 @@ void RAS_OpenGLRasterizer::TexCoord(const RAS_TexVert &tv, int enabled) } } #endif + +#ifdef GL_ARB_vertex_program + if(m_useTang && bgl::RAS_EXT_support._ARB_vertex_program) + bgl::blVertexAttrib4fvARB(1/*tangent*/, tv.getTangent()); +#endif + } void RAS_OpenGLRasterizer::Tangent( const RAS_TexVert& v1, const RAS_TexVert& v2, diff --git a/source/gameengine/Rasterizer/RAS_OpenGLRasterizer/RAS_OpenGLRasterizer.h b/source/gameengine/Rasterizer/RAS_OpenGLRasterizer/RAS_OpenGLRasterizer.h index b00832b9738..d95ced658ce 100644 --- a/source/gameengine/Rasterizer/RAS_OpenGLRasterizer/RAS_OpenGLRasterizer.h +++ b/source/gameengine/Rasterizer/RAS_OpenGLRasterizer/RAS_OpenGLRasterizer.h @@ -94,6 +94,7 @@ class RAS_OpenGLRasterizer : public RAS_IRasterizer protected: int m_drawingmode; TexCoGen m_texco[RAS_MAX]; + bool m_useTang; /** Stores the caching information for the last material activated. */ RAS_IPolyMaterial::TCachingInfo m_materialCachingInfo; @@ -284,6 +285,7 @@ public: std::vector <OglDebugLine> m_debugLines; virtual void SetTexCoords(TexCoGen coords,int enabled); + virtual void SetAttrib(int type); void TexCoord(const RAS_TexVert &tv, int unit); virtual void GetViewMatrix(MT_Matrix4x4 &mat) const; diff --git a/source/gameengine/Rasterizer/RAS_OpenGLRasterizer/SConscript b/source/gameengine/Rasterizer/RAS_OpenGLRasterizer/SConscript index 580897f307c..039bc3db8df 100755 --- a/source/gameengine/Rasterizer/RAS_OpenGLRasterizer/SConscript +++ b/source/gameengine/Rasterizer/RAS_OpenGLRasterizer/SConscript @@ -1,7 +1,7 @@ #!/usr/bin/python Import ('env') -sources = env.Glob('*.cpp') #'RAS_GLExtensionManager.cpp RAS_OpenGLRasterizer.cpp RAS_VAOpenGLRasterizer.cpp' +sources = env.Glob('*.cpp') #'RAS_GLExtensionManager.cpp RAS_ListRasterizer.cpp RAS_OpenGLRasterizer.cpp RAS_VAOpenGLRasterizer.cpp' incs = '. #source/kernel/gen_system #intern/string #intern/moto/include #source/gameengine/Rasterizer' incs += ' ' + env['BF_OPENGL_INC'] |