user 发表于 2018-7-4 15:57:33

7-4 工作笔记

有时,我们希望角色在向左、右移动时,角色本身依旧朝向摄像机的前方

一般这种情况下,我们在Character中激活Use controller rotationyaw,
这个时候如果你Add Movement Input时传入的是Character的RightVector
在联网的情况下,会发生抖动,抖动的原因是因为角色在向右移动时会将character 本身旋转,但是同时又使用了
Controller的rotation,这时服务器就会修正,不停的偏移和修正导致了角色的抖动,

解决方法,在CharacterMovementComponent中有一个名为Orient Rotation to movement 这个点似乎默认为true
将其置为false就可以了。

补充,在角色没有联网时我的角色没有表现出抖动的现象,我想这个应该是和网络延迟有关,也就是服务器在本地时虽然有冲突,
但是能够被极快的修正,导致我们没有发现问题,当服务器与客户端分离后,会有一定的延迟这时才会导致角色出现抖动

user 发表于 2018-7-4 16:00:06

这个问题看起来似乎很容易,但是由于其只会在联网时 被发现,和那个并不常见的节点,我足足花费了一天半的时间去解决这个问题,也希望能够帮助遇到同样问题的朋友

dududu_2004 发表于 2018-7-5 19:30:53

谢谢分享经验!

虚幻4工程师 发表于 2018-7-6 10:40:06

谢谢分享

qa3540170 发表于 2018-7-9 10:04:22

谢谢分享

叮当来学习 发表于 2019-4-21 00:17:56

楼主说的比较详细,之前自己也遇到类似的问题也是找了别的老哥的指点才解决的
页: [1]
查看完整版本: 7-4 工作笔记