各位大家好!
我经常遇到一个视觉问题,无法摸清楚它的来龙去脉,因此希望在这里有人能认出它或指点我们哪个方向去...
我超级极度焦虑了 ☹️

我正在开发的手绘,2D,精灵基色的游戏(Deperson),观察到一种稳定的视觉副产品

当角色行走时(例如,摄像机完全静止,摄像机靠近一个房间的边缘),脚部和下肢显示出一种双像/尾随效果。这个效果类似于在帧之间的位置之间的阴暗叠加

一些附加说明:

  • 由于动画速度增加,问题会减少可感知度

  • 在高对比动态部位(尤其是脚部)最容易察觉到

  • 在动态摄像机的帮助下(即使稍微移动),变得难以察觉(但是仍存在)

  • PPU(每单位像素)100,21帧步行循环

现在,让我们下面的内容一起看,这些可能很重要:

目前的架构:

运动: “Rigidbody2D.linearVelocity”在“FixedUpdate”中处理
动画: 在 “Update” 中更新状态
摄像机: 在 “LateUpdate” 中测试“SmoothDamp”、“Lerp”和“MoveTowards”

排序: 在 “LateUpdate” 中自定义的 Y排序系统

执行顺序:
CharacterController ---> YSortingManager ---> CameraMovementController

我到现在试过的内容:

-- >Rigidbody2D 滴式模式:
- >Interpolate(默认)
- >Extrapolate
- >None

-- >运动方法:
- >linearVelocity
- >MovePosition
- >transform.position

-- >这些固定时间步长值:
- >0.02(50HZ)
- >0.0133(75HZ)
- >0.01(100HZ)

-- >动画器更新模式:
- >Normal
- >Fixed
- >Animate Physics

-- >动画样本率匹配目标帧率

-- >精灵设置:
- >Mesh Type: Full Rect
- >高分辨率纹理(1K)

-- >自定义shader 的 PixelSnap模式

-- >在 “LateUpdate” 中严格在摄像机逻辑

-- >已测试:
- >SmoothDamp
- >Lerp
- >MoveTowards

-- >还有试过手动像素整理使用 Mathf.Round 测验摄像机位置(而且测试没有它)

-- >VSync: On 和 Off

-- >Application.targetFrameRate:
- >60
- >-1

-- >测试在多个显示器上

所以,给所有这些…我开始怀疑这根本不是一个渲染或同步问题...

如果它是“手绘”或 2D 的问题,其他游戏都没有出现这种问题…… 我差点哭了

在这个阶段,已经经历了太多的技术方面,所以感觉像是在追求错误的层面。