public void Dispose() { InputLayout.Dispose(); VertexShader.Dispose(); TessellationControlShader?.Dispose(); TessellationEvaluationShader?.Dispose(); GeometryShader?.Dispose(); FragmentShader.Dispose(); }
public static ShaderProgram Compile(VertexShader vertexShader, FragmentShader fragmentShader = null, GeometryShader geometryShader = null, TessellationControlShader tesscontrolShader = null, TessellationEvaluationShader tessevalShader = null) { return(new ShaderProgram(vertexShader, fragmentShader, geometryShader, tesscontrolShader, tessevalShader)); }
public ShaderProgram(VertexShader vertexShader, FragmentShader fragmentShader = null, GeometryShader geometryShader = null, TessellationControlShader tesscontrolShader = null, TessellationEvaluationShader tessevalShader = null) { _create(new ASLShaderCompiler(vertexShader).Shader, new ASLShaderCompiler(fragmentShader).Shader, new ASLShaderCompiler(geometryShader).Shader, new ASLShaderCompiler(tesscontrolShader).Shader, new ASLShaderCompiler(tessevalShader).Shader); }