c# - Converting gl.MapBuffer to struct throws System.MissingMethodException Exception -
i need cast gl.mapbuffer
struct vertexdata
throws error
public struct vertexdata { public vector3 vertex; public vector4 color; } public override void submit(renderable2d renderable) { gl.bindbuffer(opengl.gl_array_buffer, _vbo); _buffer = (vertexdata[])marshal.ptrtostructure(gl.mapbuffer(opengl.gl_array_buffer, opengl.gl_write_only), typeof(vertexdata[])); vector3 position = renderable.getposition(); vector2 size = renderable.getsize(); vector4 color = renderable.getcolor(); _buffer[0].vertex = position; _buffer[0].color = color; _buffer[1].vertex = new vector3(position.x, position.y + size.y, position.z); _buffer[1].color = color; _buffer[2].vertex = new vector3(position.x + size.x, position.y + size.y, position.z); _buffer[2].color = color; _buffer[3].vertex = new vector3(position.x + size.x, position.y, position.z); _buffer[3].color = color; }
the following line throws system.missingmethodexception
exception
_buffer = (vertexdata[])marshal.ptrtostructure(gl.mapbuffer(opengl.gl_array_buffer, opengl.gl_write_only), typeof(vertexdata[]));
Comments
Post a Comment