###前提・実現したいこと
Unity2dのスクリプト中で初期設定位置(Transformのposition)を取得したい
###発生している問題・エラーメッセージ
ユニティ初心者です。
ブロック崩しの「バー」みたいなものをマウスドラッグで動かすことのできるようにスクリプトを作成してみたのですが、それを適用したのちにバーをドラッグすると、transform.positionのy(高さ)がInspectorで指定しておいたものとは全然違うところになってしまいます。
(8 に設定していたのに、ドラッグした瞬間-6.2とかになってしまう。)
横軸(x軸)の移動はできています。
「x軸だけマウスの動きを適用して、あとは動かさない」で、マウスドラッグによる左右移動を実現できると思ったのですが、違うのでしょうか。
よろしくお願いいたします。
###該当のソースコード
//The original code is obtained from http://answers.unity3d.com/questions/581904/2d-mode-trying-to-make-a-sprite-dragable.html for my future reference. //By Shatcore 2013 using UnityEngine; using System.Collections; public class barMove : MonoBehaviour { float x; // Update is called once per frame void Update(){ x = Input.mousePosition.x; } void OnMouseDrag(){ transform.position = Camera.main.ScreenToWorldPoint(new Vector3(x,this.transform.position.y,this.transform.position.z)); } }
よろしくお願いいたします。
回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2017/08/22 16:42
2017/08/23 00:43
2017/08/24 03:05