Gyro 센서 활용하기
ZEPETO 월드를 만들 때, 장치의 기울기에 따라 다양한 월드 플레이 아이디어를 구현하기 위해 자이로 센서를 사용할 수 있습니다. 이 가이드는 ZEPETOScript 내에서 Input.gyro를 활용하는 방법을 보여줍니다.
1) 계층 추가 > [+] > 3D 객체 > 구 객체를 장면에 추가합니다.
2) 객체의 이름을 Ball로 변경하고 Rigidbody 구성 요소를 추가합니다.
1) TypeScript를 추가하고 스크립트 이름을 RollingBall로 변경합니다. 아래와 같이 샘플 스크립트를 작성합니다.
스크립트 설명
- Ball 객체에 부착된 Rigidbody 구성 요소를 가져옵니다.
- 다음 값을 반올림합니다: Input.gyro.gravity.x 및 Input.gyro.gravity.z 값을 반올림하여 gyroValueX, gyroValueZ 값을 얻습니다.
- gyroValueX 및 gyroValueZ 값을 velocityMultiplier로 곱하여 Ball 객체에 속도를 부여합니다.velocity.
- 다음 값은 Input.gyro.gravity 값이 Text UI를 통해 화면에 표시됩니다.
📘 자이로스코프.gravity https://docs.unity3d.com/ScriptReference/Gyroscope-gravity.html
2) 작성한 RollingBall ZEPETOScript를 Ball 객체에 추가합니다. Hierarchy 창에서 ZEPETOScript Inspector 창에 표시된 속성에 Text UI를 드래그 앤 드롭하여 연결합니다.
1) QR 모바일 테스트로 예제 월드를 실행합니다.
2) 볼 객체는 장치 기울기에 따라 움직입니다.
❗️ 주의 다음 사항에 유의하십시오: Input.gyro는 모바일 환경에서만 작동합니다.
Input.gyro를 적용하여 ZEPETO 월드 내에서 ZEPETO 캐릭터를 이동할 수 있습니다.
1) TypeScript를 추가하고 스크립트 이름을 GyroMovement로 변경합니다. 아래와 같이 샘플 스크립트를 작성합니다.
스크립트 설명
- 로컬 플레이어가 장면에 추가되면 ZEPETO 캐릭터 인스턴스를 받습니다.
- 값을 반올림하여 gyroValue 값을 얻습니다.
- ZEPETO 캐릭터를 Z축 방향으로 이동시키려면 direction을 매개변수로 Move() 함수에 전달합니다.
2) 장면에 GameObject를 추가하고 이름을 GyroGravity로 변경합니다. 생성한 GyroMovement ZEPETOScript를 추가합니다.
3) QR 모바일 테스트로 예제 월드를 실행할 때 ZEPETO 캐릭터가 장치의 기울기에 따라 이동합니다.
👍 팁
- 이 예제에서 사용된 Input.gyro.gravity 외에도 다양한 Input.gyro 함수를 사용할 수 있습니다.
- 이것을 다양한 아이디어에 적용할 수 있습니다. ZEPETO에서 재미있는 월드를 출시해 보세요!