在物理实验室模块中,设计加一个模拟失重环境的房间,使用户能够体验到虚拟的失重的状态。
在htc vive的运行中,摄像机元素绑定在camerarig的head子物体中的eye上,使用者自身也就是camerarig,在运行时,会被添加一个rigidbody刚体组件以及一个胶囊体的碰撞体。为了更好的模拟人在环境中的交互。
为了更好的体验,我们需要设置camerarig所在的rigidbody的属性。虽然在失重的环境下,一个很小的力,也会造成很大的位移,但第一人称视角的情况下,位移的幅度太大,会产生眩晕感;这是需要调整所在的刚体的质量mass,或者增大位移阻力和旋转阻力,虽然在失重情况下,并不现实,但模拟体验效果会比较好。
我是采用增大drag和angular drag。
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
public class changeRigidbody : MonoBehaviour {
private Rigidbody rrd;
// Use this for initialization
void Start () {
rrd = GetComponent<Rigidbody> ();
rrd.drag = 100.0f;
rrd.angularDrag = 100.0f;
}
// Update is called once per frame
void Update () {
}
}
在其他的物体上添加摩擦力,质量等属性,不施加重力;设置物理属性。并添加VRTK_Interactable和