评论 15

BlackGlory 1年前

你只是把情况细分罢了, 而且举得还是极端例子, 无论是固定还是动态的流逝时间, 实际上都受限制于游戏的帧数表现, 不管帧频是不切实际的.

大城小胖 [作者] 1年前

还真不是这样。

大城小胖 [作者] 1年前

在外面,回去聊

BlackGlory 1年前

你新的更新只是把之前的意思重复了一遍, 看来你还是不明白.

大城小胖 [作者] 1年前

我只是告诉你一下 你说的『无论是固定还是动态的流逝时间, 实际上都受限制于游戏的帧数表现, 不管帧频是不切实际的』不对。 为什么不对 可能要写个几千字你才能明白。

BlackGlory 1年前

@大城小胖 ‍ 同感.

大城小胖 [作者] 1年前

@BlackGlory‍  , 你原文中的这一大段:
如果不锁定帧数, 那么就需要在游戏内部的每一次循环里计算距离上一次循环所经过的时间, 并用这个时间来计算出当前内容应该怎样变化, 由于帧数存在波动的可能性, 所以这个计算增加的量不再是一个固定的数值, 而是需要通过加入时间这个变量来计算, 这也显著增加了程序的计算量.


有比较本质问题. 
1)  如果使用固定流逝时间, "这个计算增加的量"就仍然是一个固定值.
2)  对于绝大多数游戏, 即使锁帧了, 也仍然要加入时间来计算(只是这个时间值相对稳定,比如锁30帧的话, 通常每次都是33毫秒左右) .都用固定增量是不现实的, 尤其是很多以时间为输入的函数.  比如运动相关的函数, 物理引擎相关的函数. 都需要时间 速度来参与计算的.  
3) 对于"动态流逝时间"的游戏而言, 即使锁帧了, 也并不能保证游戏一定在锁定的帧频上运行.比如《守望先锋》在低配机器上锁定30FPS, 但是我在机器后台跑一堆乱七八糟的东西, 那么游戏FPS还是会跌倒30FPS以下的,如果按照你的逻辑(锁帧了,就不用时间来参与计算), 那游戏就乱掉了。

我觉得你还是把  『锁帧』和『固定流逝时间』这两个没有绝对必然联系的东西给联系到了一起。

BlackGlory 1年前

@大城小胖 ‍ 你有没有看见我一开始就写的"早期主机游戏"跟我瞎喷什么?

大城小胖 [作者] 1年前

@BlackGlory ‍ 我也没喷你啊. 我就是觉得你说的不太对. 其实早期主机游戏都没有"锁帧"的概念.另外我看了几个GameBoy游戏的源码, 也都是用时间做参数的. 你不能把反推的声音都当做"喷"啊.

大城小胖 [作者] 1年前

@BlackGlory ‍ 我是 gloria 的用户 , 非常佩服你写的这个东西. 你的其他repo我也很欣赏.我怎么可能喷我的偶像呢.

大城小胖 [作者] 1年前

@BlackGlory‍  , 你应该也是做游戏开发的程序员, 我估计我说这些你肯定都不能认可, 我说多了你还会觉得我『同行相轻』啥的。建议你多看看那些开源的游戏引擎和游戏, 找著名的去看, 不著名的估计你会觉得『他们做的不对』。

BlackGlory 1年前

@大城小胖 ‍ 我从一开始就说了, 你不过是把情况细分罢了, 没有不认同你的观点, 只是你这个角度考虑问题太片面, 不要自顾自脑补一堆东西出来.

大城小胖 [作者] 1年前

@BlackGlory ‍ 我并不是把你的观点做了细分.  我俩观点的差异是  你觉得 "锁帧" 和 "固定流逝时间"是一个范畴的事情,  而我认为"两者没有关系" , 而题主的问题本身, 也和"固定流逝时间"没什么关系. 但是你用很大的篇幅来讲了"固定流逝时间", 而不是"锁帧".

大城小胖 [作者] 1年前

我并不是把你的观点做了细分.  我俩观点的差异是  你觉得 "锁帧" 和 "固定流逝时间"是一个范畴的事情,  而我认为"两者没有关系" , 而题主的问题本身, 也和"固定流逝时间"没什么关系. 但是你用很大的篇幅来讲了"固定流逝时间", 而不是"锁帧".

BlackGlory 1年前

不争了, 各自保留意见吧.

登录奶牛关账号即可参与讨论