我在场景中创建了一个简单的关卡。
现在我想从右向左滚动此级别,但在移动构成级别的对象时会开始抖动。
我尝试了以下方法来移动关卡。有些人开始在团结播放器中完美运行,但在iOS模拟器中没有一个能够顺利运行: -
案例a)在层次结构中创建的平铺地图没有附加任何刚体。
通过直接改变立场来移动a.1]:
transform.position -= scrollLeftBy * Time.deltaTime;
- >很多混蛋
a.2]移动使用:
transform.Translate(newVector3(m_Velocity*Time.deltaTime,0,0));
- >在统一播放器中没有混蛋,但在iOS模拟器中仍然是混蛋。
案例b)在图层isKinemtic=true
添加了刚体。 Velocity iteration = 8
和Position iteration = 3
b.1]在FixedUpdate / Update中,使用velocity移动,
transform.rigidbody2D.velocity = m_Velocity;
: - > Unity Player中的混蛋,以及iOS Sim
B.2] 在FixedUpdate / Update中,使用移动,
transform.rigidbody2D.transform.position -= scrollLeftBy;
: - >在Unity Player中没有混蛋但在iOS Sim中没有混蛋。
创建的级别具有以下层次结构: -
TileMap-> Layer0-> Chunk(包含多个图块并将所有图块渲染为单个网格。)
我将rigidbody2D和滚动脚本附加到此块。
我可能缺少什么?
编辑:
请查看视频here。在设备上运行
也在设备上尝试过,它仍然感到紧张。
我也试过Interpolate,Extrapolate和None,用于Interpolate选项,但仍然感到紧张!