Search in sources :

Example 41 with Shader

use of com.jme3.shader.Shader in project jmonkeyengine by jMonkeyEngine.

the class GLRenderer method deleteShader.

public void deleteShader(Shader shader) {
    if (shader.getId() == -1) {
        logger.warning("Shader is not uploaded to GPU, cannot delete.");
        return;
    }
    for (ShaderSource source : shader.getSources()) {
        if (source.getId() != -1) {
            gl.glDetachShader(shader.getId(), source.getId());
            deleteShaderSource(source);
        }
    }
    gl.glDeleteProgram(shader.getId());
    statistics.onDeleteShader();
    shader.resetObject();
}
Also used : ShaderSource(com.jme3.shader.Shader.ShaderSource)

Aggregations

Uniform (com.jme3.shader.Uniform)8 Renderer (com.jme3.renderer.Renderer)6 Caps (com.jme3.renderer.Caps)5 DirectionalLight (com.jme3.light.DirectionalLight)4 PointLight (com.jme3.light.PointLight)4 SpotLight (com.jme3.light.SpotLight)4 Material (com.jme3.material.Material)4 Vector3f (com.jme3.math.Vector3f)4 Shader (com.jme3.shader.Shader)4 IOException (java.io.IOException)4 ShaderNodeDefinitionKey (com.jme3.asset.ShaderNodeDefinitionKey)3 Light (com.jme3.light.Light)3 ColorRGBA (com.jme3.math.ColorRGBA)3 ShaderType (com.jme3.shader.Shader.ShaderType)3 VarType (com.jme3.shader.VarType)3 TempVars (com.jme3.util.TempVars)3 Statement (com.jme3.util.blockparser.Statement)3 AssetLoadException (com.jme3.asset.AssetLoadException)2 AssetNotFoundException (com.jme3.asset.AssetNotFoundException)2 MatParam (com.jme3.material.MatParam)2