じ☆ve冰风 发表于 2024-11-22 16:02:00

关于Drill_LayerCamera插件弹性镜头移动后事件不断抖动的一种...

我是在mz使用的并不是mv

在使用该插件过程中发现偶尔会出现移动后地图中事件不断抖动的现象,需要再次移动才可能停止
在控制台只能怪调试发现发生在发生抖动的时候镜头更新函数会一直执行,按理说当镜头静止不动后不应该在刷新

怀疑是if条件小数点精度问题,打印差值,的确是一个极小的值
修改代码的if条件
JAVASCRIPT 代码
y2 > this.centerY()
改成
JAVASCRIPT 代码
(y2 - this.centerY()) >= Number.EPSILON

发现问题解决,然而又产生了新的问题当移动到地图的边界贴到屏幕的边界的时候,事件抖动的问题又发生了,
这时候打印scrolledX与centerX的差值发现会一直有一个0.07左右的值导致更新函数一直执行,这里目前还没找到问题
如果有大佬知道问题在哪的话可以告诉一下
            本帖来自P1论坛作者sundeshuo,因Project1站服务器在国外有时候访问缓慢不方便作者交流学习,经联系P1站长fux2同意署名转载一起分享游戏制作经验,共同为国内独立游戏作者共同创造良好交流环境,原文地址:https://rpg.blue/forum.php?mod=viewthread&tid=495620若有侵权,发帖作者可联系底部站长QQ在线咨询功能删除,谢谢。
页: [1]
查看完整版本: 关于Drill_LayerCamera插件弹性镜头移动后事件不断抖动的一种...