【3Dゲームエンジン】Unity質問スレッド14 [転載禁止]©5ch.net
■ このスレッドは過去ログ倉庫に格納されています
0334名前は開発中のものです。
2014/12/22(月) 00:00:40.27ID:vLjoTVUlマウスでクリックしたらクリックした場所に物体が来るようなスクリプトを組みました。
ですがうまく動いてくれません。
作成したスクリプトは下記です。
if(Input.GetAxis("Fire1")){
var Mo:Vector3=Input.mousePosition;
var aa:Vector3=Camera.main.ScreenToWorldPoint(Mo);
aa.z=transform.position.z;
transform.position=aa;
}
かなり試行錯誤していたのですがどうもMo.zの値が0の状態でScreenToWorldPointにかけるとおかしな挙動になってしまうようです。
そこで下記のようにMo.zに先に値を与えてからScreenToWorldPointをするときちんと動いてくれました。
if(Input.GetAxis("Fire1")){
var Mo:Vector3=Input.mousePosition;
var t:Vector3=Camera.main.WorldToScreenPoint(transform.position);
Mo.z=t.z;
var aa:Vector3=Camera.main.ScreenToWorldPoint(Mo);
transform.position=aa;
}
すみませんが、Mo.zが0のときにScreenToWorldPointをするとおかしな挙動になってしまうのはなぜなのか教えていただけませんでしょうか。
よろしくお願いします
■ このスレッドは過去ログ倉庫に格納されています