FirstVR로 로켓 펀치 해 보았습니다.

2833 단어 아 RFirstVRVRUnity
바로 FirstVR에 익숙해져 가려고 생각해 손과 오브젝트의 제휴를 일으켜 로켓 펀치를 하기로 했습니다.

만드는 법



먼저 SDK 장면 FVR/Samples/Scenes에서 OutputViewer를 엽니다.
그리고 Hierarchy의 MuscleSensorViewer와 Debug Tools를 지웁니다.

이런 느낌의 외형이 될 것.



그리고 좀비와 손을 넣어 이런 느낌



그런 다음 SceneManager의 SampleViewManager를 엽니다. 위의 파란색 테두리를 클릭합니다.

변수로서public GameObject cube;
이런 느낌이 선언되어 있기 때문에 우선public GameObject Hand;어쨌든
Start(){
    Hand = GameObject.Find(“Hand_right”);
}

합니다. ”Hand_right” 부분은 적절히 손에 연동시키고 싶은 오브젝트의 이름을 넣어 주세요.

그런 다음 적절하게 C# 파일을 만듭니다. 여기서 handControl이라고 합니다.

열면 먼저 using FVRlib;을 쓰고,
FVRConnnection 변수를 선언하여 Hierarchy에 있는 FVR 객체의 FVRConnection 구성 요소를 가져옵니다.

다음 느낌,
FVRConnection fvr;fvr = GameObject.Find("FVR").GetComponent<FVRConnection> ();

다음에 일정 이상의 가속도가 있으면 팔이 튀어나가도록 합니다.

무려 그런 가속도가 임계값 이상인지의 여부를 판정할 때 사용할 수 있는 fvr.accel.magnitude라는 변수가 있습니다.
덧붙여서 날릴 때는 Vector3형의 변수를 버퍼로서 준비해 줄 필요가 있습니다.

다음 코드를 FixedUpdate에 넣습니다.

코드는 이런 느낌
using System.Collections;

using System.Collections.Generic;

using UnityEngine;

using FVRlib;



public class handControl : MonoBehaviour {

  
    FVRConnection fvr;
   
    GameObject hand;
 
    Vector3 buffPosition;

 
    // Use this for initialization
   
    void Start () {
      
        fvr = GameObject.Find("FVR").GetComponent<FVRConnection>();

        hand = GameObject.Find ("Hand_right");
   
    }

 
    void FixedUpdate(){
      
        if fvr.accel.magnitude > 1.0f || Input.GetKey("z")) {

            buffPosition = hand.transform.position;
  
            buffPosition.z += 1.0f;
          
            hand.transform.position = buffPosition;
      
        }
    
    }

 
}


이것을 움직이고 싶은 객체 (이번에는 Hand_right)에 연결하고 스마트 폰으로 실행해보십시오.

이런 느낌

바로 FirstVR로 이렇게 만든 ww #FirstVR 피 c. 라고 r. 코 m / 9 쿠스 M5 아 8P — Satosh (@satosh28425184) 2018년 4월 26일


다음에 가속도를 사용하여 물건을 던지는 것을 시도해 보겠습니다.


좋은 웹페이지 즐겨찾기