所以我在学习如何将纹理加载到LWJGL OpenGL中时遇到了麻烦。所以我上网并出于学习目的,我从Space Invaders示例中复制了TextureLoader类。
URL url = TextureLoader.class.getClassLoader().getResource(ref);
我不知道那是什么,我在哪里放置我想要加载的文件?它使用getClass().getClassLoader().getResourceAsStream(ref)
将资源加载到BufferedImage中。
我尝试将文件放在我的bin和src中的每个文件夹中都有一个类文件。
我正在使用Eclipse,如果它与它有任何关系。
答案 0 :(得分:0)
您需要将文件放入包中,或者主要放入项目源文件夹中。
更容易展示出这是如何工作的,而不是解释它!
当您尝试使用getResourceAsStream()
获取流时,如果找不到资源,它将返回null,如果找到该资源,它将返回BufferInputStream
的实例。
正如您在右下方的示例中看到的那样,当我们尝试获取BufferedInputStream
时,第一个返回file_1.txt
的实例,那是因为它存在,当它返回null
时我们尝试获取file_2.txt
,因为它不存在。