首先,让我说几个月前这个代码在49 FPS左右运行良好。从那时起,一个重大变化就是我从Windows 7“升级”到10。
我的系统非常好:
我已经研究了这个问题好几个小时了,并提出了一些人们试过的修复方法。有趣的是,大多数集中在1月下旬 - 2017年2月初。
这些都没有解决我的问题。
有关我的代码和代码样式的一些细节。这个项目是我多年来一直致力于使用LWJGL 2.9.3库通过Java和OpenGL创建完整3D引擎的大型项目的一部分。我的代码结构的方式是我将每个概念组织成单独的库,然后我将其导入到我正在处理的任何项目中。
例如,我有一个名为“Foundations”的库,它处理打开OpenGL窗口本身,从外部文件加载设置,以及跟踪时间增量和FPS。另一个示例库是“Text2D”,它处理向屏幕显示文本。
这样,我可以更有效地追踪错误。每个库都有自己的测试和诊断类,以验证库是否按预期工作。通常,许多不同的库对某些特定的其他库具有依赖性,因此可以进一步独立地验证该测试。
问题:
我遇到麻烦的人被称为“实体”,它处理将3D物体放入世界。正如我之前所说,我之前已经使用过此代码,无法确定出现了什么问题。
代码分为设置和测试部分。设置代码生成一个对象网格,供我环顾四周,并与阳光源等基础一起移动。测试代码只是为每个对象添加一个小旋转,以便它们旋转到位。
现在,当我的测试代码运行时,我看到显示窗口中生成的对象很好,在加载时填充新对象和纹理。我每帧平均得到2-4秒。 (是的,秒/帧)
在43秒到92秒之间,产生大约12-15帧,它失败并给我以下错误信息:
C:\Users\Zaanzabar\AppData\Local\NetBeans\Cache\8.2\executor-snippets\run.xml:53: Java returned: -1073740791
BUILD FAILED (total time: 43 seconds)
通过插入大量输出消息并确定在某些消息之后哪些行是正确的,我已经跟踪了导致速度减慢的特定代码行。
当我将纹理加载到程序中时,一切都会顺利而迅速地运行直到它到达该行:
glGenerateMipmap(GL_TEXTURE_2D);
这些并不是大纹理,我认为最大的纹理是PNG格式的512x512。我使用SlickUtil将它们加载到OpenGL中。
一旦我完成加载纹理,它就会在该行暂停大约相同的时间:
Display.update();
然后最终崩溃。这两行代码都是openGL功能,而不是我的代码的一部分,所以我遇到了一个关于从这里看哪里的问题。
有谁知道如何解决这个问题?
答案 0 :(得分:0)
它实际上是一个NetBeans问题,它基本上说在run.xml中存在问题
C:\用户\ Zaanzabar \应用程序数据\本地\的NetBeans \缓存\ 8.2 \执行人-片段\ run.xml
既然你已经提到你已经更新了你的窗口,我猜测必须更改的元数据被删除,所以Netbeans基本上找不到你的主类因此抛出错误,你确实提到一切正常,所以它不能成为依赖问题。
这谈到了同样的问题 Netbeans not running my project
<强>解决方案强>
尝试在命令行上运行代码
javac YourMain.java <br>
java Yourmain
或者在另一个IDE上,如果可以
如果工作正常,那么它确实是一个NetBean问题:) 您可以直接运行主类,或者通过转到项目的属性选项卡提及项目文件夹中的主类
希望有所帮助:)