Unity5(C#)初心者・入門者向けチュートリアル ひよこのたまご

AndroidやiOS向けアプリを簡単に作れるゲーム開発環境Unity(ユニティ)の使い方を、チュートリアル方式で一緒に学びましょう!

【Unity】とりあえずPlayerキャラクターを作成【Photon3】

いつもひよこのたまごをご利用下さいましてありがとうございます!
おかげ様でチュートリアル数も10ゲーム目となりました!
チュートリアル一覧は
こちら からどうぞ!


スポンサーリンク

前回の続きです〜

Photonを使えば簡単にネットワークゲームが作成できるということで、とりあえず
①Playerの出現
②Playerの移動
③Playerの攻撃・死亡
などといったものを作成していきます!

というわけでまずはPlayerを作成します〜
(今回はネットワーク部分はやりません)



1.Playerを作成する
Playerを作成します〜
いつもお世話になっているぴぽやさんから、2Dの素材をお借りし、2Dアニメーションをするキャラクターを作成します〜
アニメーションの作り方はこちらを参照にして下さい!
【Unity開発】2Dアニメーションの作り方 Animation, Animator Controller【ひよこエッセンス】 - Unity5(C#)初心者・入門者向けチュートリアル ひよこのたまご

老人が歩いているアニメーションをするキャラクターを作成しました!

f:id:hiyotama:20160704011455g:plain
歩く老人

f:id:hiyotama:20160704011606p:plain
PlayerのInspector

f:id:hiyotama:20160704011709p:plain
PlayerのAnimator

Animatorでは、方向キーの入力に合わせてアニメーション遷移するよう設定しています〜
例えばWalkForward@Player→WalkRight@Playerだったら、horizontalが0.1以上の時に遷移、といった感じです〜
アニメーターについては、詳しくはこちらをご参照下さい〜
【Unity開発】Animator Controllerまとめ 3Dユニティちゃん【ひよこエッセンス】 - Unity5(C#)初心者・入門者向けチュートリアル ひよこのたまご


続いてアニメーションとPlayerの移動を管理するPlayerスクリプトを作成します〜以下ソースです〜

using UnityEngine;
using System.Collections;

public class Player : MonoBehaviour {

	private Rigidbody2D _rb;
	private Animator _anim;

	void Start () {
		_rb = GetComponent<Rigidbody2D>();
		_anim = GetComponent<Animator>();
	}

	void Update () {
		//→キー:h = 1, ←キー:h = -1
		float h = Input.GetAxisRaw("Horizontal");
		//↑キー:v = 1, ↓キー:v = -1
		float v = Input.GetAxisRaw("Vertical");
		//左右の動きを優先
		if(h > 0.1f | h < -0.1f){
			v = 0;
		}
		//方向キー入力の方向へ移動
		_rb.velocity = new Vector2(h, v);
		//Animatorのパラメータに値を設定
		_anim.SetFloat("horizontal", h);
		_anim.SetFloat("vertical", v);
	}
}

Player.cs

こちらをPlayerオブジェクトに取り付ければ・・・

f:id:hiyotama:20160704012809p:plain
ドラッグ&ドロップ!

キーボードの方向キーを押すことで、上のgifのように移動することができます〜

ネットワークに関係する部分は次回以降に回します〜
今回はここまでです、ありがとうございました〜