Я пытаюсь составить квадрат из треугольников, используя индексы и вершины, но когда я запускаю код, он говорит следующее: System.AccessViolationException: 'Попытка прочитать или записать защищенную память. Часто это указывает на то, что другая память повреждена.'
Вот мой код:
Я пытаюсь составить квадрат из треугольников, используя индексы и вершины, но когда я запускаю код, он говорит следующее: System.AccessViolationException: 'Попытка прочитать или записать защищенную память. Часто это указывает на то, что другая память повреждена.' Вот мой код: [code]using OpenTK.Graphics.OpenGL4; using OpenTK.Windowing.Common; using OpenTK.Windowing.Desktop; using OpenTK.Windowing.GraphicsLibraryFramework;
namespace ByteCraftMCknockoff { public class BCWindow : GameWindow { private readonly float[] vertices = { 0.5f, 0.5f, 0.0f, //bottom left 0.5f, -0.5f, 0.0f, //bottom right -0.5f, -0.5f, 0.0f, //top left -0.5f, 0.5f, 0.0f //top right };
private int vbo; private int ebo; private int vao;
public BCWindow(int width, int height, string title) : base(GameWindowSettings.Default, new NativeWindowSettings() { ClientSize = (width, height), Title = title }) {
}
protected override void OnLoad() { base.OnLoad();
var sky = OpenTK.Mathematics.Color4.CornflowerBlue;
GL.ClearColor(sky);
shader = new Shader("shader.vert", "shader.frag");
base.OnUnload(); } } } [/code] Об этом говорится конкретно в этой строке: [code]GL.DrawElements(PrimitiveType.Triangles, indices.Length, DrawElementsType.UnsignedInt, 0); [/code] Как мне устранить эту ошибку и увидеть, получился ли я квадрат или нет?