最初に言っておくと、今回の話は3Dの方にはあまり参考にならないかもしれない。
どうしてもということであれば、前回のスクリプトの
「Vector2」を「Vector3」に変えて、Z軸を追加すればいい。
例:Vector2(2.0f, 3.0f) → Vector3(2.0f, 3.0f,0.0f)
▶︎ UNITY* Vector2 オブジェクト位置の設定・変更
それではやっていこう。
今回はマウス位置をVector3値に変換して、
それにオブジェクトに反映、追従させること。
将来的にはパッドやゲーム機でも展開するので、
マウス以外のUIも取り入れていく予定だが、テスト時はマウス操作が基本。
なので覚えておくべき基本UIスクリプト。
前作より視認性を高めた新しいポインタ。
通常カーソルは Start メゾッドで隠しておく。
ただ、Win は知らないが MAC の場合なぜかプレビュー上で表示されてしまう。
ビルド後はちゃんと非表示になるので、もしそうなっても気にしないように。
あとポインタは止まることがないので、基本宿敵 void Upfdate ベタ張り。
◆このオブジェクトをダイレクトにマウス操作
◆他のオブジェクトをマウス操作(オブジェクトのアタッチ忘れずに)
さすがに配列型は使わないw
ちなみに「Input.mousePosition」を下記のように
world_position_name = Camera.main.ScreenToWorldPoint(Input.mousePosition);
ダイレクトに入れても新しいバージョンでは動かないので要注意。
必ずカラ箱(position_name)にマウス位置を入れる。
Z位置は対象カメラのZ位置からの距離で、デフォが-10なので+10としている。
2Dのカメラは舞台の少し手前にあるということ。
結論:
2Dで空間調整まじ辛い
調整しないと、あさっての方向から反応が出る。
0コメント