private int CreateProgram(int vertexShaderHandle, int fragmentShaderHandle)
        {
            int shaderProgramHandle = GL.CreateProgram();

            GL.AttachShader(shaderProgramHandle, vertexShaderHandle);
            GL.AttachShader(shaderProgramHandle, fragmentShaderHandle);

            GL.LinkProgram(shaderProgramHandle);

            Console.WriteLine(GL.GetProgramInfoLog(shaderProgramHandle));
            return(shaderProgramHandle);
        }
示例#2
0
 protected void LoadShader(string filename, ShaderType type, int program, out int address)
 {
     if (!File.Exists(filename))
     {
         Console.WriteLine($"File not found: {filename}");
         address = -1;
         return;
     }
     address = GL.CreateShader(type);
     using (var sr = new StreamReader(filename))
     {
         GL.ShaderSource(address, sr.ReadToEnd());
     }
     GL.CompileShader(address);
     GL.AttachShader(program, address);
     Console.WriteLine(GL.GetShaderInfoLog(address));
 }