public VertexArrayObject(GL gl, BufferObject <TVertexType> vbo, BufferObject <TIndexType> ebo) { _gl = gl; _handle = _gl.GenVertexArray(); Bind(); vbo.Bind(); ebo.Bind(); }
private unsafe static void OnLoad() { IInputContext input = window.CreateInput(); for (int i = 0; i < input.Keyboards.Count; i++) { input.Keyboards[i].KeyDown += KeyDown; } Gl = GL.GetApi(window); Ebo = new BufferObject <uint>(Gl, Indices, BufferTargetARB.ElementArrayBuffer); Vbo = new BufferObject <float>(Gl, Vertices, BufferTargetARB.ArrayBuffer); Vao = new VertexArrayObject <float, uint>(Gl, Vbo, Ebo); Vao.VertexAttributePointer(0, 3, VertexAttribPointerType.Float, 5, 0); Vao.VertexAttributePointer(1, 2, VertexAttribPointerType.Float, 5, 3); Shader = new Shader(Gl, "shader.vert", "shader.frag"); // Start rendering Task.Factory.StartNew(() => integrator.Render(sceneDescription.Scene, sceneDescription.Camera, window)); }