マウス操作とスクリーン座標 (1/4)
作成:2014-09-15 09:45
更新:2014-09-15 09:58
更新:2014-09-15 09:58
■マウスボタンを利用する
キーボードと並んで多用される入力デバイスといえば、「マウス」でしょう。マウスの利用も、前回キーボードの時に使った「Input」クラスを利用します。
まずは、マウスボタンについてです。マウスボタンは、Inputクラスにある以下の3つのメソッドを利用して状態をチェックすることができます。
・ボタンの押し下げ状態
・ボタンを押したかどうか
・ボタンを離したかどうか
引数にはすべてボタンを示す番号(整数)が指定されます。これは以下のように決められています。
0 左ボタン
1 右ボタン
2 中央ボタン
下に実際の利用例を挙げておきます。前回までと同様、シーンにCubeが1つ配置され、そのCubeにC#スクリプトが組み込まれている状態を想定してあります。シーンを実行するとCubeが表示されます。画面内でマウスの左ボタンを押すとCubeが黄色に変わりゆっくりと回転します。ボタンを離すと元の色に戻り静止します。
まずは、マウスボタンについてです。マウスボタンは、Inputクラスにある以下の3つのメソッドを利用して状態をチェックすることができます。
・ボタンの押し下げ状態
Bool 変数 = Input.GetMouseButton( 番号 );マウスボタンが押されているかどうかを調べるものです。引数には調べるボタンの番号を指定します。ボタンが押されていたらtrue、いなかったらfalseが返されます。
・ボタンを押したかどうか
Bool 変数 = Input.GetMouButtonDown( 番号 );マウスボタンを押したかどうかを調べるものです。これはボタンを押した直後に呼び出されたときだけtrueが返り、以後は(ボタンが押されていてもいなくても)falseが返されます。つまり「ボタンを押した瞬間」をチェックするものです。・ボタンを離したかどうか
Bool 変数 = Input.GetMouseButtonUp( 番号 );マウスボタンを離したかどうかを調べるものです。ボタンを離した直後に呼び出された時だけtrueが返され、それ以外はfalseが返されます。「ボタンを離した瞬間」をチェックするためのものです。引数にはすべてボタンを示す番号(整数)が指定されます。これは以下のように決められています。
0 左ボタン
1 右ボタン
2 中央ボタン
下に実際の利用例を挙げておきます。前回までと同様、シーンにCubeが1つ配置され、そのCubeにC#スクリプトが組み込まれている状態を想定してあります。シーンを実行するとCubeが表示されます。画面内でマウスの左ボタンを押すとCubeが黄色に変わりゆっくりと回転します。ボタンを離すと元の色に戻り静止します。
(by. SYODA-Tuyano.)
※プログラムリストが表示されない場合
AddBlockなどの広告ブロックツールがONになっていると、プログラムリスト等が表示されない場合があります。これらのツールをOFFにしてみてください。
●プログラム・リスト●
using UnityEngine;
using System.Collections;
public class myscript : MonoBehaviour {
Color c;
void Start () {
}
void Update () {
if (Input.GetMouseButton(0)){
transform.Rotate(1, 1, 1);
}
if (Input.GetMouseButtonDown(0)){
c = renderer.material.color;
renderer.material.color = Color.yellow;
}
if (Input.GetMouseButtonUp(0)){
renderer.material.color = c;
}
}
}
※関連コンテンツ