最初の頂点属性で GL.VertexAttribPointer を呼び出していますが、呼び出しによって INVALID_OPERATION エラーが発生しています。OpenGL API には VertexAttribPointer 呼び出しで発生するエラーの 1 つとしてリストされていないため、それが何を意味するのかわかりません: ( http://www.opengl.org/sdk/docs/man/xhtml/glVertexAttribPointer. xml )。
エラーが設定されている場所のすぐ周りのコードは次のとおりです。
GL.BindVertexArray(mi_VAOHandle);
OpenGLUtilityLib.CheckError("binding vertex array");
System.Diagnostics.Debug.WriteLine("Binding attribute...");
GL.EnableVertexAttribArray(0);
OpenGLUtilityLib.CheckError("Enabling VAA 0");
GL.BindBuffer(BufferTarget.ArrayBuffer, mi_PositionBufferHandle);
OpenGLUtilityLib.CheckError("Binding position buffer to array buffer target");
GL.VertexAttribPointer(0, 3, VertexAttribPointerType.Float, false, Vector3.SizeInBytes, 0);
OpenGLUtilityLib.CheckError("Set vertex attribute pointer");
その最後のエラー チェックはエラーを返します。
コンテキストとして、このエラーが発生したときに、初心者の OpenTK GL コードをオブジェクト指向構造にリファクタリングしていましたが、手続き型のコピーは引き続き機能し、すべてを同じ順序で実行しているため、何かが起こる可能性があるかどうか疑問に思っています異なるブロックにいることで壊れています。