当前位置: 首页 > 知识库问答 >
问题:

Java ThiledMap slick当前线程中未找到OpenGL上下文

壤驷向明
2023-03-14

我想用。tmx文件作为TileMap

这是我的主要课程:

package com.company;

import org.newdawn.slick.SlickException;
import org.newdawn.slick.tiled.TiledMap;

public class Main {

    private static TiledMap map;
    public static void main(String[] args) {
        try {
            init();
        }
        catch (SlickException e) {
            e.printStackTrace();
        }
    }
    private static void init() throws SlickException {
        map = new TiledMap("com/company/untitled.tmx");
        map.render(100,100);
    }
}

在intellij中编译程序时,我遇到了以下问题:

2017年6月20日星期二23:37:23 IRDT错误:在当前线程中未找到OpenGL上下文。JAVAlang.RuntimeException:在当前线程中找不到OpenGL上下文。在org。lwjgl。opengl。背景。getCapabilities(GLContext.java:124)位于org。lwjgl。opengl。GL11。glGetError(GL11.java:1377)位于org。纽道恩。滑溜的opengl。内部纹理阅读器。getTexture(InternalTextureLoader.java:226)位于org。纽道恩。滑溜的opengl。内部纹理阅读器。getTexture(InternalTextureLoader.java:171)位于org。纽道恩。滑溜的形象(Image.java:196)org。纽道恩。滑溜的瓷砖的。蒂列塞特。(TileSet.java:113)在org上。纽道恩。滑溜的瓷砖的。瓷砖地图。在org上加载(tileMap.java:447)。纽道恩。滑溜的瓷砖的。瓷砖地图。(TileMap.java:90)在org上。纽道恩。滑溜的瓷砖的。瓷砖地图。(TileMap.java:77)在com上。公司主要的com上的init(Main.java:18)。公司主要的main(main.java:11)在sun。反映NativeMethodAccessorImpl。在sun上调用0(本机方法)。反映NativeMethodAccessorImpl。在sun上调用(NativeMethodAccessorImpl.java:62)。反映DelegatingMethodAccessorImpl。在java上调用(DelegatingMethodAccessorImpl.java:43)。朗,反思一下。方法在com上调用(Method.java:498)。intellij。rt.执行。应用阿普曼。main(AppMain.java:147)

共有1个答案

袁建木
2023-03-14

您不能简单地在初始化方法中开始渲染。您应该覆盖渲染方法并在那里进行渲染。此时OpenGL上下文应该已经由Slick2D初始化。

public void render(GameContainer arg0, Graphics arg1) throws SlickException
 类似资料:
  • 我正在使用Java和JLWGL开发一个有趣的世界编辑器。到目前为止,一切正常。现在我试着创建一个窗口,在那里我可以添加一个地形或一个新模型来使用。问题是,当我尝试从主线程创建地形时,它被创建并显示,但当我尝试通过按钮eventlistener调用它时,我得到了一个错误:在当前线程中找不到OpenGL上下文。我基本上知道我为什么会出错。我用来获取输入并单击按钮的框架没有opengl上下文。 我现在的

  • 问题内容: 我正在使用一个有趣的世界编辑器,并使用Java和JLWGL。到目前为止一切正常。现在,我尝试创建一个窗口,可以在其中添加要使用的地形或新模型。问题是,当我尝试从主界面创建地形并创建并显示该地形时,但是当我尝试通过按钮事件监听器调用该地形时,出现错误: 在当前线程中未找到OpenGL上下文。 我基本上知道为什么会得到错误。我用来获取输入并单击按钮的框架没有opengl上下文。 现在的问题

  • 问题内容: 我正在关注youtube上的教程,但是OpenGL存在我无法解决的问题。我不知道该如何解决。 主要 问题答案: 您需要调用glfwMakeContextCurrent将OpenGL上下文绑定到您的线程。LWJGL网站上也有一个工作示例。

  • 我正在使用入门示例(来自https://www.lwjgl.org/guide{which unchanged works fine}),但将其更改为使用OpenGL ES 3.0(出于与此问题无关的原因)。 我正在使用最新的LWJGL版本3.1.1,选择最小的OpenGL ES作为我的预设(从https://www.lwjgl.org/download)以及使用windows本机。(我正在运行W

  • 问题内容: 我正在玩纸牌游戏,目前拥有良好的基础,但是在eclipse中运行它时遇到了错误。我也使用光滑的2d。 这是来自控制台的错误。 线程“主”中的异常java.lang.RuntimeException:在当前线程中找不到OpenGL上下文。在org.lwjgl.opengl.GLContext.getCapabilities(GLContext.java:124)在org.lwjgl.op

  • 我在LWJGL 3中使用OpenGL,我得到以下错误; 这是RenderUtil类,initGraphics是从我的主类的构造函数中调用的。在使用GLFW创建了一个窗口后,我还尝试调用initGraphics,该窗口也生成了类似的错误消息。 另外,我没有使用多线程。要创建一个窗口,我调用方法from my main method."