Unity物体移动

FixedUpdate和Update的区别

FixedUpdate是固定秒数更新,Update是每帧更新一次。 Debug.Log(Time.deltaTime)输出两帧的间隔时间,在FixedUpdate里是固定值,默认为0.02s,在Update里是一个不断变化的值。 对于物理性质的移动,要用FixedUpdate,这是为了保证在不同设备和不同GPU状态下,真正的移动速度都是一样的,物理反应是同步的。

shader的选择

不同的shader类型,物体表面的纹理呈现不同的效果。

light设置

  • main light or key light
  • fill light
  • rim light(rim轮缘)

物体移动方法

float horizontal = Input.GetAxis("Horizontal");
float vertical = Input.GetAxis("Vertical");
Vector3 movement = new Vector3(vertical,horizontal,0f);
GetComponent<Rigidbody>().velocity = speed * movement;
GetComponent<Rigidbody>().positon = new Vector3(
Mathf.Clamp(GetComponent<Rigidbody>().positon.x,xmin,xmax),
Mathf.Clamp(GetComponent<Rigidbody>().positon,y,ymin,ymax),
GetComponent<Rigidbody>().positon.z);

倾斜小技巧

根据左右移动的速度(velocity)给物体该方向上的一个小rotation,有一种物体快速往左移动时向左倾斜的感觉。

bloom post effect

带来霓虹灯、灯牌那种晕染出来的效果。

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

发表于

我来说两句

0 条评论
登录 后参与评论

扫码关注云+社区

领取腾讯云代金券