clock() 在 MTKView 绘制方法中使用时不准确

问题描述 投票:0回答:0

我注意到,如果我尝试在

clock()
draw()
函数中使用
MTKView
,则时间会关闭大约 10 倍。

最小可重现示例:

在 Xcode 中创建一个新的 'Metal' 游戏模板。应该渲染旋转的彩色立方体的那个。然后,在每帧更新的

draw
方法中,添加行:

// Objective-C
printf("%f\n", (double)clock()/CLOCKS_PER_SEC);
// Swift
print(Double(clock())/Double(CLOCKS_PER_SEC))

构建并观察打印的数字和控制台。

问题:

数字以不规则且缓慢的速度增加(大约每秒 0.1 个),而不是稳定地每秒增加 1 个。

为什么 C

clock()
函数在与 Metal 游戏结合使用时会中断?我还可以使用什么来代替,例如,计算 Metal 中帧更新的时间步长?

研究:

关于将

clock()
与金属游戏一起使用,我可以找到零。

c time metal clock mtkview
© www.soinside.com 2019 - 2024. All rights reserved.