LWJGL - 调用了当前上下文中不可用的函数

LWJGL - A function that is not available in the current context was called

我刚开始使用 LWJGL 和 OpenGL,但 运行 遇到了问题。我正在尝试弄清楚如何使用我找到的游戏引擎为我正在制作的游戏画一条简单的线。

这是我正在使用的引擎的 link:https://github.com/SilverTiger/SilenceEngine

在渲染器中 class 我尝试添加这个函数 -

 public void drawLine(Point point, Point point2) {

        GL11.glColor3f(0.0f, 1.0f, 0.2f);
        GL11.glBegin(GL11.GL_LINES);
        GL11.glVertex2d(point.x, point.y);
        GL11.glVertex2d(point2.x, point2.y);
        GL11.glEnd();

 }

我得到的错误如下:

#
# A fatal error has been detected by the Java Runtime Environment:
#
#  EXCEPTION_ACCESS_VIOLATION (0xc0000005) at pc=0x00007fff32b524cd, pid=3016, tid=0x0000000000002548
#
# JRE version: Java(TM) SE Runtime Environment (8.0_131-b11) (build 1.8.0_131-b11)
# Java VM: Java HotSpot(TM) 64-Bit Server VM (25.131-b11 mixed mode windows-amd64 compressed oops)
# Problematic frame:
# C  [lwjgl.dll+0x124cd]
#
# Failed to write core dump. Minidumps are not enabled by default on client versions of Windows
#
# An error report file with more information is saved as:
# C:\Users\sambu\workspace\NextGen Engine - 0.3.1\hs_err_pid3016.log
#
# If you would like to submit a bug report, please visit:
#   http://bugreport.java.com/bugreport/crash.jsp
# The crash happened outside the Java Virtual Machine in native code.
# See problematic frame for where to report the bug.
#
[LWJGL] A function that is not available in the current context was called. The JVM will abort execution. Inspect the crash log to find the responsible Java frames.

我对此很陌生,不知道如何解决。

正在引擎中创建的 window 具有 3.2 版的 OpenGL 上下文。在 3.2 版中,您不能调用旧的原始绘图调用。所有绘制调用都需要使用顶点数组和缓冲区来完成。这是有关如何执行此操作的教程(请记住,这是用 C++ 编写的):Draw Your First Triangle. Here is the engine's forums on getting started (called Newbie Questions). Forum