Unityに関連する記事です

※ Unity2019は下記のStandard Assetsが非推奨アセットになったため、インポートができません。
その場合、次の14.Androidでのスワイプ操作を実装する(Unity 2019以降)をご覧ください。

 Unityの「Standard Asset」の1つである「Cross Platform Input」を利用して、アンドロイド端末で実際にゲームを操作して遊べるようにします。
事前準備として「Standard Asset」のインポートの他に、AndroidStudioのインストール、Unityの設定などが必要になりますので
そちらはSlackの「01_事前準備」と「02_Unityの導入方法」内に記載してあります。

GameSceneをMainシーンに切り替えます。Scenesフォルダ内よりMainシーンをダブルクリックして切り替えてください。
ProjectビューのAssetsフォルダより、StandardAssets -> CrossPlatformInput -> Prefabsフォルダを選択します。
Prefabsフォルダ内にあるプレファブが画面のタッチ操作を可能にする機能を追加してくれます。

ヒエラルキー内に「DualTouchControls」のプレファブを選択して、ドラッグ&ドロップをして追加します。
DualTouchControlsの構成は以下のようになっています。

・MoveTouchpad
・TurnAndLookTouchpad
・Jump

今回はMoveTouchpadを使用します。他の2つは非アクティブに切り替えるか、Deleteしてください。
ヒエラルキーのMoveTouchpadをダブルクリックするとCanvasへの視点に切り替わりますので
そこでMoveTouchpadの指定範囲を画面全体にします。画面の大きさに合うように調整してください。

続いて「TouchController」スクリプトを新規作成します。
Assets -> Scripts フォルダを開いて、その中で右クリックをして create -> C# script を選択し、名前を「TouchController」にします。
「TouchController.cs」を開いて、下記のソースコードを書き加えます。

TouchController.cs
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
using UnityStandardAssets.CrossPlatformInput;      <=  CrossPlatformInputの使用を宣言します。忘れずに追加してください。

public class TouchController : MonoBehaviour
{
    public float moveSpeed;                 //  Player(バー)の移動速度。外部で設定できるようにpublic修飾子をつける          
	
   // Update is called once per frame
    void Update () 
    {
        float horizontal = CrossPlatformInputManager.GetAxisRaw( "Horizontal" );   //  水平(横)方向のタッチ入力を取得するための変数verticalを用意する。"Vertical"ではfloat型の-1〜1の数字が取得できる。 

        if(horizontal != 0){                                                     //  水平方向のタッチがあるなら(0以外なら)
            transform.position += transform.forward * moveSpeed * -horizontal;  //  移動をさせる
	}
    }
}
このスクリプト(クラス)をPlayerオブジェクトにアタッチします。

Unityのメニュー内のMobileInputを「Enable」に変更します。(黒字が選択中)
ゲームを実行し、マウスのドラッグ&ドロップでPlayerオブジェクトが移動するかどうか確認してください。

コメントをかく


「http://」を含む投稿は禁止されています。

利用規約をご確認のうえご記入下さい

Menu



プログラムの基礎学習

コード練習

技術/知識(実装例)

2Dおはじきゲーム(発展編)

2D強制横スクロールアクション(発展編)

3Dダイビングアクション(発展編)

2Dタップシューティング(拡張編)

レースゲーム(抜粋)

2D放置ゲーム(発展編)

3D脱出ゲーム(抜粋)

2Dリアルタイムストラテジー

2Dトップビューアドベンチャー(宴アセット使用)

3Dタップアクション(NavMeshAgent 使用)

2Dトップビューアクション(カエルの為に〜、ボコスカウォーズ風)

3Dトップビューアクション(白猫風)

VideoPlayer イベント連動の実装例

VideoPlayer リスト内からムービー再生の実装例(発展)

AR 画像付きオブジェクト生成の実装例

AR リスト内から生成の実装例(発展)

private



このサイト内の作品はユニティちゃんライセンス条項の元に提供されています。

管理人/副管理人のみ編集できます