Unity入門講座|マウスクリックで画像を表示・非表示する方法を学ぼう

Unity

同じボタンを押して画像をオンオフ

うさタブ
うさタブ

次は、同じボタンを押して画像をオンオフして見るッピ!

うさタブ
うさタブ

プログラムを↓のコードに
書き換えてみるッピ!

using UnityEngine;

public class MouseClick : MonoBehaviour
{
    public GameObject Image;
    bool character = false;

    void Update()
    {
  if (Input.GetMouseButtonDown (0)) 
  {//画像表示
           if(character != true)
           {
    Image.SetActive (true);
             character = true;
            }
            else
            {
             Image.SetActive (false);
             character = false;
            }
  }
    }
}
うさタブ
うさタブ

ちなみにこのプログラムは

using使います UnityEngineユニティエンジンの機能を;

public呼び出し可能 class クラスです MouseClick名前はマウスクリック : MonoBehaviourユニティの親クラスです
{

public共有プログラム GameObjectゲームオブジェクトです Image変数名はイメージ;
boolオンオフ変数 character 名前はキャラクター = false状態は偽モノ(OFF);

 
void引数なしプログラム Update() 随時更新します
{

ifもしも (Input入力されたら.GetMouseButton マウスが押されたら実行(0 左クリックを )){

 ifもしも (characterオンオフ変数キャラクターが != 違う時  true本物(ON)と){
 
Image.ImageのSetActive ゲームオブジェクトを (true作動して);
characterオンオフ変数キャラクター = を  true本物(ON)に; します
}

elseそれ以外で
{
Image.ImageのSetActive ゲームオブジェクトを (false作動をやめて);
characterオンオフ変数キャラクター = を  false 偽モノ(OFF)に; します
}
}

}

という意味になるッピ!

アイカ
アイカ

そういうことだったのね

ユウキ
ユウキ

なるほどなー

テストプレイ

アイカ
アイカ

できたわ!

ユウキ
ユウキ

やったなアイカちゃん!

Unityのマウス入力について

うさタブ
うさタブ

Unityのマウス入力には、

Inputメッソドを使うッピ!

プログラムメッソド発動条件
Input.GetMouseButtonマウスボタンが押されていたら発動
Input.GetMouseButtonDownマウスボタンが押された瞬間に発動
Input.GetMouseButtonUpマウス押されたボタンが開放されたときに発動
ユウキ
ユウキ

インプットメッソド~?

って何だ?

うさタブ
うさタブ

インプットメッソドというのは、

マウスキーボードなど、外部から入力があったときに

発動するプログラムをつくるときに使うものッピ!

アイカ
アイカ

そうなのね!

うさタブ
うさタブ

そしてマウスのInputメッソドは

Input.GetMouseButton

をつかうことが多いッピね~

ユウキ
ユウキ

なあ、うさタブ

using UnityEngine;

public class MouseClick : MonoBehaviour
{
    public GameObject Image;

    void Update()
    {
		if (Input.GetMouseButtonDown (0)) 
		{//Clickで画像表示
			Image.SetActive (true);
		}

		if (Input.GetMouseButtonDown (1))
		 {//右Clickで画像消去
			Image.SetActive (false);
		}
    }
}
ユウキ
ユウキ

じゃあこの、

Input.GetMouseButton(0)

(0)とか(1)ってあるけどさ??

ユウキ
ユウキ

なんで(0)なのか、

まったく理解できないんだけど・・・

どうして1とか0なわけ?

うさタブ
うさタブ

それはズバリ、この数字が

引数だからッピね~!

アイカ
アイカ

引数??

ユウキ
ユウキ

引数ってなんだっけ・・・?

オレまだそこらへん記憶あいまいなんだけど

うさタブ
うさタブ

引数というのは、
プログラムが予め仕組んだ、分かれ道条件のことだっピ!

うさタブ
うさタブ

if~~●●(分かれ道の条件
{ プログラムの命令文 }

みたいなとき、
実際にその分かれ道の条件が満たされるもの変数
仕込むことができるのが引数なんだッピ!

ユウキ
ユウキ

ど、どういうこと?

アイカ
アイカ

むずかしくてわからないわ

うさタブさん・・・

うさタブ
うさタブ

つまり今回みたいな

(0)なら、マウスの左クリック
マウスの左を押したら発動するプログラム

というのを組むことができるんだッピ!

引数対応するマウスの場所
(0)マウスの左ボタン
(1)マウスの右ボタン
(2)マウスのホイール
ユウキ
ユウキ

わかった!

0が左クリック、1が右クリックみたいな感じになるのか!

うさタブ
うさタブ

その通りッピ!

つまりさっきのコードも、0から1に変えると、

枝分かれの条件が右クリックを押したら~に変わってしまうんだッピよ~

using UnityEngine;

public class MouseClick : MonoBehaviour
{
    public GameObject Image;

    void Update()
    {
		if (Input.GetMouseButtonDown (0)) 
		{//Clickで画像表示
			Image.SetActive (true);
		}

		if (Input.GetMouseButtonDown (1))
		 {//右Clickで画像消去
			Image.SetActive (false);
		}
    }
}
ユウキ
ユウキ

なるほどなー

アイカ
アイカ

勉強になったわっ!

学習のまとめ
  • Assetsに画像ファイルを登録する
  • ヒエラルキーから空のオブジェクトを作成する
  • C#スクリプトを作成
  • できたスクリプト空のオブジェクトに登録
  • 空のオブジェクトに画像をドラッグ&ドロップで登録
  • テストプレイ

うさタブ
うさタブ

上手くできたッピか?

これからも色んなゲーム作りやプログラムの解説をしていくッピ!

次回も楽しみにしているッピよ~~!

うさタブ
うさタブ

UnityはC#を元に作られているッピ!
まだまだ Unity や C#について勉強したい人は↓の記事を参考にするッピ♪

スポンサーリンク

どうしてもわからない、そんなときは?

ユウキ
ユウキ

うさタブ!

オレ、もっと本格的にゲームが作りたいんだ

アイカ
アイカ

私もだわ!

もっとたくさん実用的なコードを

学ぶことってできないかしら?

うさタブ
うさタブ

おお、2人ともやる気ッピね!

ゲームの作り方を学ぶなら、コレとかどうッピか?


うさタブ
うさタブ
Udemy」テレビでも有名な動画教材
人気の機械学習からUnityゲーム講座まで選び放題ッピ!

うさタブ
うさタブ

2DアクションRPG脱出ゲーム

3Dゲーム制作講座まで

買い切り講座だからいつでも勉強し放題ッピよ~!

ユウキ
ユウキ

お!いいじゃん!

アイカ
アイカ

あと、どこか素敵な素材を売っているところはないかしら? 公式の素材販売だと、クレカ支払いしかなくて・・・

ユウキ
ユウキ

小学生じゃクレカで支払えないぜ~

うさタブ
うさタブ

ゲームの素材を買いたいなら、

DLsiteBoothとかどうッピか?

うさタブ
うさタブ

素敵なドット絵や音楽素材がいっぱい売ってるッピ!

うさタブ
うさタブ

しかもUnityアセットストアと違って

クレカ支払いじゃなく、コンビニ支払いができるのもポイントッピ!

ユウキ
ユウキ

すげーカッコいい素材がいっぱいある!

アイカ
アイカ

わたしもさっそくチェックしてみようかな♪

スポンサーリンク
Unityプログラミング動画付き
学んで遊んでジャンケンポン!
タイトルとURLをコピーしました