diff options
author | Mitchell Stokes <mogurijin@gmail.com> | 2013-01-13 00:01:58 +0400 |
---|---|---|
committer | Mitchell Stokes <mogurijin@gmail.com> | 2013-01-13 00:01:58 +0400 |
commit | 4bd3477e29319922d7e7bbb774462d419fa0f40b (patch) | |
tree | c6dda5487cd5c31a4874829992f9e74b99dcce6a /source/gameengine/Rasterizer | |
parent | 3225131223711c99b3bdd4c27693cf4943d90b11 (diff) |
BGE: Adding preliminary alpha shadow support for Simple shadow maps. They do not work in the viewport nor do they work for Variance shadow maps.
Diffstat (limited to 'source/gameengine/Rasterizer')
3 files changed, 18 insertions, 0 deletions
diff --git a/source/gameengine/Rasterizer/RAS_IRasterizer.h b/source/gameengine/Rasterizer/RAS_IRasterizer.h index 5a720857d50..99026fa259a 100644 --- a/source/gameengine/Rasterizer/RAS_IRasterizer.h +++ b/source/gameengine/Rasterizer/RAS_IRasterizer.h @@ -417,6 +417,8 @@ public: virtual void SetAnisotropicFiltering(short level)=0; virtual short GetAnisotropicFiltering()=0; + virtual void SetUsingOverrideShader(bool val)=0; + virtual bool GetUsingOverrideShader()=0; #ifdef WITH_CXX_GUARDEDALLOC MEM_CXX_CLASS_ALLOC_FUNCS("GE:RAS_IRasterizer") diff --git a/source/gameengine/Rasterizer/RAS_OpenGLRasterizer/RAS_OpenGLRasterizer.cpp b/source/gameengine/Rasterizer/RAS_OpenGLRasterizer/RAS_OpenGLRasterizer.cpp index a9609a266e8..8c46618ee36 100644 --- a/source/gameengine/Rasterizer/RAS_OpenGLRasterizer/RAS_OpenGLRasterizer.cpp +++ b/source/gameengine/Rasterizer/RAS_OpenGLRasterizer/RAS_OpenGLRasterizer.cpp @@ -93,6 +93,7 @@ RAS_OpenGLRasterizer::RAS_OpenGLRasterizer(RAS_ICanvas* canvas, int storage) m_noOfScanlines(32), m_motionblur(0), m_motionblurvalue(-1.0), + m_usingoverrideshader(false), m_texco_num(0), m_attrib_num(0), //m_last_alphablend(GPU_BLEND_SOLID), @@ -1057,3 +1058,14 @@ short RAS_OpenGLRasterizer::GetAnisotropicFiltering() { return (short)GPU_get_anisotropic(); } + +void RAS_OpenGLRasterizer::SetUsingOverrideShader(bool val) +{ + m_usingoverrideshader = val; +} + +bool RAS_OpenGLRasterizer::GetUsingOverrideShader() +{ + return m_usingoverrideshader; +} + diff --git a/source/gameengine/Rasterizer/RAS_OpenGLRasterizer/RAS_OpenGLRasterizer.h b/source/gameengine/Rasterizer/RAS_OpenGLRasterizer/RAS_OpenGLRasterizer.h index c156ee53ed3..5ff2709747d 100644 --- a/source/gameengine/Rasterizer/RAS_OpenGLRasterizer/RAS_OpenGLRasterizer.h +++ b/source/gameengine/Rasterizer/RAS_OpenGLRasterizer/RAS_OpenGLRasterizer.h @@ -103,6 +103,8 @@ class RAS_OpenGLRasterizer : public RAS_IRasterizer int m_motionblur; float m_motionblurvalue; + bool m_usingoverrideshader; + protected: int m_drawingmode; TexCoGen m_texco[RAS_MAX_TEXCO]; @@ -320,6 +322,8 @@ public: virtual void SetAnisotropicFiltering(short level); virtual short GetAnisotropicFiltering(); + virtual void SetUsingOverrideShader(bool val); + virtual bool GetUsingOverrideShader(); #ifdef WITH_CXX_GUARDEDALLOC MEM_CXX_CLASS_ALLOC_FUNCS("GE:RAS_OpenGLRasterizer") |