Bläddra i källkod

gfxGLDevice setShader fix.

rextimmy 10 år sedan
förälder
incheckning
b5f8e9aa70
2 ändrade filer med 3 tillägg och 3 borttagningar
  1. 2 2
      Engine/source/gfx/gl/gfxGLDevice.cpp
  2. 1 1
      Engine/source/gfx/gl/gfxGLDevice.h

+ 2 - 2
Engine/source/gfx/gl/gfxGLDevice.cpp

@@ -811,9 +811,9 @@ GFXShader* GFXGLDevice::createShader()
    return shader;
 }
 
-void GFXGLDevice::setShader( GFXShader *shader )
+void GFXGLDevice::setShader(GFXShader *shader, bool force)
 {
-   if(mCurrentShader == shader)
+   if(mCurrentShader == shader && !force)
       return;
 
    if ( shader )

+ 1 - 1
Engine/source/gfx/gl/gfxGLDevice.h

@@ -90,7 +90,7 @@ public:
    virtual F32 getPixelShaderVersion() const { return mPixelShaderVersion; }
    virtual void  setPixelShaderVersion( F32 version ) { mPixelShaderVersion = version; }
    
-   virtual void setShader(GFXShader* shd);
+   virtual void setShader(GFXShader *shader, bool force = false);
    
    /// @attention GL cannot check if the given format supports blending or filtering!
    virtual GFXFormat selectSupportedFormat(GFXTextureProfile *profile,