summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorphil <[email protected]>2016-12-07 18:01:23 +1300
committerphil <[email protected]>2016-12-07 18:01:23 +1300
commit91e086b3c0631198405cf6303f547bae34697c96 (patch)
treeb3f2226e799c921047fd8936cde569a6b4d92899
parentf84619789ea044f1bf4894f3073279a81bc22ec9 (diff)
another capability check added to SimpleSahderAppearance auto build
-rw-r--r--src/main/java/org/jogamp/java3d/utils/shader/SimpleShaderAppearance.java3
1 files changed, 3 insertions, 0 deletions
diff --git a/src/main/java/org/jogamp/java3d/utils/shader/SimpleShaderAppearance.java b/src/main/java/org/jogamp/java3d/utils/shader/SimpleShaderAppearance.java
index a2f7f25..e5da160 100644
--- a/src/main/java/org/jogamp/java3d/utils/shader/SimpleShaderAppearance.java
+++ b/src/main/java/org/jogamp/java3d/utils/shader/SimpleShaderAppearance.java
@@ -382,6 +382,9 @@ public class SimpleShaderAppearance extends ShaderAppearance
&& (this.getPolygonAttributes() == null // no poly attributes
|| (!this.getPolygonAttributes().isLive() && !this.getPolygonAttributes().isCompiled()) // poly attributes are not yet live
|| this.getPolygonAttributes().getCapability(PolygonAttributes.ALLOW_MODE_READ))//poly attributes are live but can be read
+
+ // finally we must be allowed to set the shader program while live
+ && ((!this.isLive() && !this.isCompiled()) || (this.getCapability(ALLOW_SHADER_PROGRAM_WRITE)))
)
{
boolean hasTexture = this.getTexture() != null || this.getTextureUnitCount() > 0;