@Override synchronized void createMirrorObject() { // System.err.println("GLSLShaderProgramRetained : createMirrorObject"); // This method should only call by setLive(). if (mirror == null) { GLSLShaderProgramRetained mirrorGLSLSP = new GLSLShaderProgramRetained(); mirror = mirrorGLSLSP; mirror.source = source; } initMirrorObject(); }
@Override public void setShaderAttrNames(String[] shaderAttrNames) { checkForLiveOrCompiled(); if (shaderAttrNames != null) { for (int i = 0; i < shaderAttrNames.length; i++) { if (shaderAttrNames[i] == null) { throw new NullPointerException(); } } } ((GLSLShaderProgramRetained)this.retained).setShaderAttrNames(shaderAttrNames); }
@Override public void setVertexAttrNames(String[] vertexAttrNames) { checkForLiveOrCompiled(); if (vertexAttrNames != null) { for (int i = 0; i < vertexAttrNames.length; i++) { if (vertexAttrNames[i] == null) { throw new NullPointerException(); } } } ((GLSLShaderProgramRetained)this.retained).setVertexAttrNames(vertexAttrNames); }
/** * Creates a retained mode GLSLShaderProgramRetained object that this * GLSLShaderProgram component object will point to. */ @Override void createRetained() { this.retained = new GLSLShaderProgramRetained(); this.retained.setSource(this); }
@Override public String[] getVertexAttrNames() { if (isLiveOrCompiled()) { if(!this.getCapability(ALLOW_NAMES_READ)) { throw new CapabilityNotSetException(J3dI18N.getString("GLSLShaderProgram0")); } } return ((GLSLShaderProgramRetained)this.retained).getVertexAttrNames(); }
@Override public String[] getShaderAttrNames() { if (isLiveOrCompiled()) { if(!this.getCapability(ALLOW_NAMES_READ)) { throw new CapabilityNotSetException(J3dI18N.getString("GLSLShaderProgram0")); } } return ((GLSLShaderProgramRetained)this.retained).getShaderAttrNames(); }
@Override public Shader[] getShaders() { if (isLiveOrCompiled()) { if(!this.getCapability(ALLOW_SHADERS_READ)) { throw new CapabilityNotSetException(J3dI18N.getString("GLSLShaderProgram1")); } } return ((GLSLShaderProgramRetained)this.retained).getShaders(); }
((GLSLShaderProgramRetained)this.retained).setShaders(shaders);