32VR开发之狩猎项目

一、项目资源的导入##

32VR开发之狩猎项目_第1张图片
资源导入结果

二、项目流程##

1.导入地形。


32VR开发之狩猎项目_第2张图片
地形导入

2.SteamVR导入。

32VR开发之狩猎项目_第3张图片
SteamVR导入

3.弓箭的模型的导入与在手柄位置调节。

左手拿弓,右手拿箭,调节合适的位子.调节左右手柄的位置,拿起弓箭自然.
32VR开发之狩猎项目_第4张图片
对箭的处理代码
public class GameManagerPer : MonoBehaviour {

    public static GameManagerPer _instance;//单列模式

    public GameObject currentArrow;
    public GameObject prefabArrow;//箭的预支物
    public SteamVR_TrackedObject trackObject;//获取输入设备


    // 拿到弓弦在弓位置信息
    public GameObject ArrowStartPoint;
    // 复制的弓弦位置
    public GameObject StringStartPoint;



    // 真正意义上的弓弦
    public GameObject StringWithpoint;



    private void Awake()
    {
        _instance = this;
    }



    void Start () {
        trackObject = GetComponent();
    }
    
    
    void Update () {
        CreateArrow();
    }

    public void CreateArrow()//创建箭的方法
    {
        if (currentArrow==null)
        {
            currentArrow = Instantiate(prefabArrow);
            currentArrow.transform.parent = trackObject.transform;
            currentArrow.transform.localPosition = new Vector3(0, 0, 0.3f);//箭在右手柄的合适位置,调节结果
            currentArrow.transform.localRotation = Quaternion.identity;
        }
    }


    //调整箭头
    public void StartArraw()
    {
        currentArrow.transform.parent = ArrowStartPoint.transform;
        currentArrow.transform.localPosition = Vector3.zero;
        currentArrow.transform.localRotation = Quaternion.identity;
    }
}

4.弓的位置调节。

32VR开发之狩猎项目_第5张图片
弓位置调节
32VR开发之狩猎项目_第6张图片
箭预支物
public class ArrowPerson : MonoBehaviour {

    
    void Start () {
        
    }
    
    
    void Update () {
        
    }

    private void OnTriggerStay(Collider other)//触发事件
    {
        print("123");
        StartTrigglerArrow();
    }
    public void StartTrigglerArrow()//一触发就调用,把在右手柄的箭的位置放在一个我们想要的位置
    {
        var device = SteamVR_Controller.Input((int)GameManagerPer._instance.trackObject.index);
        if (device.GetTouchDown(SteamVR_Controller.ButtonMask.Trigger))
        {
            GameManagerPer._instance.StartArraw();
        }
    }
}

你可能感兴趣的:(32VR开发之狩猎项目)