我开始做一个游戏,我正在试验图形。一段时间后,我想检查任务管理器,看看程序使用GPU而不是CPU的效率如何。而我看到的是,我的GPU忙了98%,因为那个程序正在运行。我在屏幕上画了大约100个纹理。我把它减少到9个,但还是... 30%的忙。我把所有的东西都注释出来,想找到问题所在,但没有成功。最后,我只有一个看起来像这样的裸露的框架
GLProfile.initSingleton();
profile = GLProfile.get(GLProfile.GL2);
GLCapabilities caps = new GLCapabilities(profile);
window = GLWindow.create(caps);
window.setSize(screenWidth, screenHeight);
window.setRealized(true);
//window.addGLEventListener(new EventListener());
//window.addMouseListener(new MouseInput());
FPSAnimator animator = new FPSAnimator(window, 60);
animator.start();
window.setVisible(true);
我也在这个网站上试过别人的代码。http:/schabby.dejogl-example-hello-world。
我加了一个 FPSAnimator
当我用普通java绘制100张图片时,我的CPU可以比GPU和openGL更好地处理这个问题。这听起来绝对是错误的。我到底做错了什么?我已经没有办法了。
我的显卡是Geforce gtx 660 ti。
编辑
我注意到,当我启动程序时,一切都很好,但随着时间的推移,我的GPU变得越来越忙,10秒钟后就达到了30-40%。但是随着时间的推移,我的GPU变得越来越忙,10秒后就达到了30-40%。这听起来像是某种内存泄漏,但我不知道这样的事情是否适用于GPU。
原来是windows的问题。每次我重启任务管理器,GPU负载都会回到6%左右,这完全是正常的。所以说,windows 10任务管理器确实有问题。这也是极端奇怪的,但我认为是有问题的。Thaks for your time! (现在我可以安心的开始我的项目了:)