diff options
author | Dave Parks <davep@lindenlab.com> | 2021-11-20 18:49:19 +0000 |
---|---|---|
committer | Dave Parks <davep@lindenlab.com> | 2021-11-20 18:49:19 +0000 |
commit | 28f9fb06a9f4cb9edccb2ff8132c7f6a9b27c060 (patch) | |
tree | e3096bac94279dded08731dcc4f042d81dc2bfac /indra/llrender/llglslshader.h | |
parent | 3171aaad9b1f2757f8b0d8cbb784a45a7bbebafa (diff) |
SL-16289 Rigged mesh rendering overhaul
Diffstat (limited to 'indra/llrender/llglslshader.h')
-rw-r--r-- | indra/llrender/llglslshader.h | 8 |
1 files changed, 7 insertions, 1 deletions
diff --git a/indra/llrender/llglslshader.h b/indra/llrender/llglslshader.h index 3b23cf1b28..6fdb789087 100644 --- a/indra/llrender/llglslshader.h +++ b/indra/llrender/llglslshader.h @@ -230,6 +230,8 @@ public: BOOL link(BOOL suppress_errors = FALSE); void bind(); + //helper to conditionally bind mRiggedVariant instead of this + void bind(bool rigged); void unbind(); // Unbinds any previously bound shader by explicitly binding no shader. @@ -267,7 +269,8 @@ public: LLShaderFeatures mFeatures; std::vector< std::pair< std::string, GLenum > > mShaderFiles; std::string mName; - boost::unordered_map<std::string, std::string> mDefines; + typedef std::unordered_map<std::string, std::string> defines_map_t; + defines_map_t mDefines; //statistcis for profiling shader performance U32 mTimerQuery; @@ -285,6 +288,9 @@ public: std::vector<U32> mTextureMagFilter; std::vector<U32> mTextureMinFilter; + // this pointer should be set to whichever shader represents this shader's rigged variant + LLGLSLShader* mRiggedVariant = nullptr; + private: void unloadInternal(); }; |