我尝试使用 OpenGL ES 2.0 在 Android 上设计自己的游戏引擎。
到目前为止,我有一个球体沿 x 轴移动,方程 x(t) = v*(t-t0) + x0。假设球体的半径为r。我使用SystemClock.uptimeMillis()
函数来计算时间t
。
有两堵墙,x=1 和 x=-1。当球体接触到这两个壁之一时(即当球体和一个壁之间的距离小于 r 时),它就会反弹回来。
我的计算是在onDrawFrame()
我的渲染器的方法中完成的。
因此,仅在渲染帧时进行计算。因此,“碰撞检查”的频率取决于应用程序的帧速率。唉,有时下一帧渲染时间太长,翻译需要墙后的球体,就像某种量子粒子:)。
是否可以对我的应用程序的帧速率进行某种控制?你知道避免我的球体轨迹出现这种不连续性的方法吗?
非常感谢您的举办!