あなたの世界を作りなさい
ユーザーインターフェース

ジャイロセンサーの活用

7min

ZEPETO Worldを作成する際、デバイスの傾きに応じてさまざまなワールドプレイのアイデアを実装するためにジャイロセンサーを使用できます。このガイドでは、ZEPETOScript内でInput.gyroを活用する方法を示します。



オブジェクトの設定

1) 階層に追加 > [+] > 3Dオブジェクト > 球体オブジェクトをシーンに追加します。

2) オブジェクトの名前をBallに変更し、Rigidbodyコンポーネントを追加します。

Document image




スクリプトを書く

1) TypeScriptを追加し、スクリプトの名前をRollingBallに変更します。 以下のようにサンプルスクリプトを書いてください。

TypeScript




スクリプトの説明

  • ボールオブジェクトに付属しているRigidbodyコンポーネントを取得します。
  • 次の値を丸めます:Input.gyro.gravity.xInput.gyro.gravity.z の値を取得して、gyroValueX、gyroValueZの値を得ます。
  • ボールオブジェクトに速度を与えるために、gyroValueXとgyroValueZの値をvelocityMultiplierで掛け算して、velocityに代入します。
  • その Input.gyro.gravity の値は、Text UIを通じて画面に表示されます。



2) あなたが書いたRollingBall ZEPETOScriptをボールオブジェクトに追加します。 ヒエラルキーウィンドウで、ZEPETOScriptインスペクタウィンドウに表示されるプロパティにText UIをドラッグアンドドロップして接続します。

Document image




モバイルでのテスト

1) QRモバイルテストで例の世界を実行します。

2) ボールオブジェクトはデバイスの傾きに応じて動きます。

Document image




❗️ 注意 ご注意ください、Input.gyro はモバイル環境でのみ動作します。



例の適用

Input.gyroを適用することで、ZEPETOワールド内でZEPETOキャラクターを移動させることができます。

1) TypeScriptを追加し、スクリプトの名前をGyroMovementに変更します。 以下のようにサンプルスクリプトを書いてください。

TypeScript




スクリプトの説明

  • ローカルプレイヤーがシーンに追加されると、ZEPETOキャラクターのインスタンスを受け取ります。
  • 値を丸めて、gyroValueの値を取得します。
  • ZEPETOキャラクターをZ軸方向に移動させるには、directionをパラメータとしてMove()関数に渡します。

2) シーンにGameObjectを追加し、GyroGravityと名前を変更します。作成したGyroMovement ZEPETOScriptを追加します。

Document image




3) QRモバイルテストとして例のワールドを実行すると、ZEPETOキャラクターはデバイスの傾きに応じて移動します。

Document image




👍 ヒント

  • この例で使用されているInput.gyro.gravityに加えて、さまざまなInput.gyro関数を使用できます。
  • さまざまなアイデアに適用できます。ZEPETOで楽しいワールドをリリースしてみてください!



更新日 11 Oct 2024
Doc contributor
このページは役に立ちましたか?