|
I have a driving game and am displaying the speed in the corner. This is my code var mph = rigidbody.velocity.magnitude * 2.237; mphDisplay.text = mph + " MPH"; It works fine except it displays to like 5 decimal points because I converted it to MPH. I need to round it up to .5 and I know I need to use Mathf.Round, I just don't know how, can anyone help?
(comments are locked)
|
|
If you want to round a number to an integer, Mathf.Round is the thing for you. If you only want to limit the number of significant figures, you can do something like this: But that's pretty hacky. There's probably a better way in the Float library in .net, but you can look that up yourself if you run into any more trouble.
(comments are locked)
|
|
To display a single digit after the decimal point, you can use the "F1" format:
var mph = rigidbody.velocity.magnitude * 2.237;
mphDisplay.text = mph.ToString("F1") + " MPH"; // displays one digit after the dot
But if you want to display multiples of 0.5, @syclamoth's idea can do the job with a little change:
var mph: float = Mathf.Round(rigidbody.velocity.magnitude * 2.237 * 2)/2;
mphDisplay.text = mph.ToString("F1") + " MPH"; // displays one digit after the dot
Thanks thats super helpful
Apr 20 '12 at 03:10 AM
Fitty_Spenc
(comments are locked)
|
