LoginSignup
5
5

More than 5 years have passed since last update.

【Unity】float値がinspectorとconsole出力が違う?!

Posted at

はじめに

パズルゲーム開発中にinspectorに表示されるPosition(Vector2)とConsoleで出力したfloat値が違うことに気付きました。何でなんだろう?

問題

例)
Vector2 pos = new Vector3(-2.46, -4.46f);
Debug.log("pos : " + pos);

出力)
pos : (-2.5, -4.5)
勝手に小数第1位を切り上げされた?!

結論

float値をConsoleに出力するときはVectorのToStringメソッドが勝手に小数点1まで切り上げしてるらしいです。

解決

float値のみ出力する

例)
Debug.Log(pos.x);
Debug.Log(pos.y);

出力)
-2.46
-4.46

桁数を指定する

例)
Debug.Log("pos : " + pos.ToString("F2"));

出力)
pos : (-2.46, -4.46)

Reference

5
5
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
5
5