-
-
Notifications
You must be signed in to change notification settings - Fork 207
Description
This issue was created in the GarageGames Repository (Link to original issue).
The issue was originally created by @jamesu and had a total of 3 comments that may contain additional information. The original issue description is pasted below:
In the PostEffect class, if you cause the shader to be updated (e.g. by changing a macro via setShaderMacro() or reload()), the shader will be cleared in checkRequirements, but the shader constant buffer (mShaderConsts) and the constants list (mEffectConsts) will not be updated to point to the new shader.
This causes problems in the OpenGL renderer as the constant buffer state becomes out of sync with the shader state. e.g. the render target size may be 0,0 since it still thinks the size is 1024,1024. The Direct3D renderer doesn't appear to be affected by this, possibly because it updates using ranges rather than on a per-constant basis.