Files
questshock/modding/hacked/ui/opengl/CompileNewShader.go
T

19 lines
492 B
Go

package opengl
// CompileNewShader creates a shader of given type and compiles the provided source.
func CompileNewShader(gl OpenGL, shaderType uint32, source string) (shader uint32, err error) {
shader = gl.CreateShader(shaderType)
gl.ShaderSource(shader, source)
gl.CompileShader(shader)
compileStatus := gl.GetShaderParameter(shader, COMPILE_STATUS)
if compileStatus == 0 {
err = ShaderError{Log: gl.GetShaderInfoLog(shader)}
gl.DeleteShader(shader)
shader = 0
}
return
}