以下是一个简单的示例,演示如何在控制台实时打印 Panda3D 中的帧率:

from direct.showbase.ShowBase import ShowBase

class MyApp(ShowBase):
    def __init__(self):
        ShowBase.__init__(self)
        self.accept('escape', self.quit)
        self.taskMgr.add(self.printFrameRate, 'printFrameRateTask')

    def printFrameRate(self, task):
        frameRate = self.getAverageFrameRate()
        print('Frame rate: {0:.2f} fps'.format(frameRate))
        return task.cont

    def quit(self):
        self.userExit()

app = MyApp()
app.run()

此代码引入了 ShowBase 类,该类是 Panda3D 中的主要应用程序类,它提供了许多常用的功能,如窗口管理,任务管理和输入管理。在类构造函数中,我们添加了一个任务(printFrameRate),该任务在每一帧中都会执行,以打印实时帧率。

printFrameRate 方法中,我们使用 getAverageFrameRate 方法获取当前的平均帧率,并使用 print 语句将其打印到控制台中。最后,我们使用 task.cont 返回任务继续执行的信号,以确保该任务在每一帧中都会执行。

另外,我们添加了一个 quit 方法,它在按下“Esc”键时退出应用程序。最后,我们创建了一个 MyApp 实例,并运行它。

Panda3D 实时帧率监控 - 控制台打印 FPS

原文地址: https://www.cveoy.top/t/topic/oVBb 著作权归作者所有。请勿转载和采集!

免费AI点我,无需注册和登录