今回はレイキャスターを使った
オブジェクトクリックでシーン移動について勉強するッピ!
レイキャスター?
まだ習ったことないわ!
レイキャスターは、
Unityのカメラに写ったものから当たり判定を受け取るシステムをッピ!
これからこのオブジェクトクリックでシーン移動を一緒に勉強して行くッピよ~
レイキャスターでオブジェクトクリックについて学ぼう
必要なもの
まずは必要なものを用意するッピ!
- Unity
- Windows または Mac のパソコン
が必要ッピよ~!
まだ Unity をダウンロードしてない人は
↓ の記事を参考に必要なものをインストールするといいッピ!
移動前シーン・移動先のシーンを確保
移動先のシーンと移動前のシーンはあるッピか?
あれ、シーンどうやってつくるんだっけ?
オレまだ用意できてないぞ
わたしもだわ・・・
どうやって用意すればいいのかしら?
シーンの作成は
Assets→右クリック→作成→シーンで
つくることができるッピ!
用意できたッピか?
次はシーンの登録をしていくッピよ~
シーンの登録
シーンの登録は
ファイル→ビルド設定→移動先のシーンをビルドに含まれるシーン
へドラッグ&ドロップしてつくるッピ!
あれ、でも
どうしてシーンを登録するのかしら?
それは、このシーンを使いますよ!
とゲームプログラムにお知らせしないとシーン移動が使えないからッピ~
へー!そうだったのか
よくわかったわ!
イベント検知システムを設定する
次はイベント検知システムをつくっていくッピ!
ヒエラルキー→右クリック→UI→イベントシステム(スクリプト)
で第一のシステム設定ができるッピ!
レイキャスターを設定
第二のイベント検知システムをつくっていくッピ♪
メインカメラをクリックして
インスペクター→コンポーネントを追加→Event→Physics 2D Raycaster
を選択するッピよ~
当たり判定を追加する
次は当たり判定をつくって行くッピよ~
クリックするオブジェクトを選択して、
インスペクター→コンポーネントを追加→Physics 2D→Circle Collider 2D
をえらぶッピ!
緑の枠の当たり判定ができたッピ!
インスペクターの【コライダー編集】で形を整えていくッピよ~
クリックプログラムの作成
クリックプログラムをつくっていくッピ!
コンポーネントを追加→NewScript→[click]と名前をつけて保存
するッピ!
Assetsの場所に【Click】プログラムがつくられているッピ!
ダブルクリックをして、スクリプトを編集するッピよ~
↓の文をコピーして
using UnityEngine;
using UnityEngine.SceneManagement;
public class click : MonoBehaviour
{
public void change_scene()
{
SceneManager.LoadScene("after");
}
}
と入力→実行するッピ!
ちなみに
using UnityEngine;
using UnityEngine.SceneManagement;
public class click : MonoBehaviour
{
public void change_scene()
{
SceneManager.LoadScene(“after“);
}
}
という意味になるッピよ~
こういうことだったのか
勉強になったわ
using UnityEngine;
using UnityEngine.SceneManagement;
public class click : MonoBehaviour
{
public void change_scene()
{
SceneManager.LoadScene("after");
}
}
イベントトリガーの作成
次はイベントトリガーを作成するッピ!
イベントトリガー?
なんだよそれ
イベントトリガーは、
オブジェクトにボタン機能のようなクリックイベントを組み込めるシステムッピ!
これからこのイベントトリガーを作っていくッピ!
クリックするオブジェクトを選択して
コンポーネントを追加→Event→Event Trigger
を設定するッピ!
インスペクターの
新しいイベントタイプ→Pointer Click→「+」ボタン
を選択するッピ!
オッケー
【なし(オブジェクト)】へ
クリックするオブジェクトをドラッグ&ドロップするッピ!
できたわ!
いい感じッピ♪
次は
【No Function】→click→change_scene()
で、実行スクリプトを選択するッピよ~
テストプレイ
テストプレイッピ~~!
できた~~~
やったねっ!
学習のまとめ
using UnityEngine;
using UnityEngine.SceneManagement;
public class click : MonoBehaviour
{
public void change_scene()
{
SceneManager.LoadScene("after");
}
}
- 【2D版】
- シーンの作成
- オブジェクト素材のインポート
- シーンのビルド登録
- レイキャスターの設定
- イベントシステムの設定
- 当たり判定の設定
- スプリクトの作成
- |イベントトリガーの設定
- テストプレイ
上手くできたッピか?
これからも色んなゲーム作りやプログラムの解説をしていくッピ!
次回も楽しみにしているッピよ~~!
UnityはC#を元に作られているッピ!
まだまだ Unity や C#について勉強したい人は↓の記事を参考にするッピ♪