2

我有一个正在运行的应用程序,它是用 Processing 创建的,我在屏幕上绘制了很多对象。通常,草图以 60 fps 的速度运行,并且可以预见,当很多东西被绘制到屏幕上时,它开始减少。我想看看更改处理的渲染器会做什么,因为在设置大小时有一个 P3D 选项。P3D 是一种“使用 OpenGL 兼容图形硬件的 3D 图形渲染器”。

我注意到当我使用它时性能有所提高,因为我可以在帧速率下降之前将更多对象绘制到屏幕上,而无需真正更改代码中的任何内容。然后我注意到了一些奇怪的事情。

第二天我启动了电脑,再次运行程序,发现帧率突然变低了,大约 50 fps。我的电脑似乎没有任何问题,因为它没有做任何其他事情。然后我想这可能与显卡有关。我打开了一个 youtube 视频,它似乎很好。然后我再次运行草图,它又回到了 60fps。

我只想知道硬件方面可能会发生什么。我正在使用 NVIDIA GTX970(我认为它的 OC 版)。在我看来,观看视频有点启动卡并使其在处理草图上正确执行。为什么草图本身没有做到这一点?

举个例子:

Vector<DrawableObject> objects;
void setup()
{
   size(400,400, P3D); /// here is the thing to change.  P3D is an option  

  objects = new Vector<DrawableObject>();
  for(int i=0;i<400;i++)
  {
    objects.add(new DrawableObject());

  }

}

void draw()
{
  for(int i=0; i<objects.size(); i++)
  { 
     DrawableObject o = objects.get(i);
     o.run();
  }
}
4

0 回答 0