Talk:Function for Time of Day
Casting float to int faster than Math.Floor
I'd be very interested to know where this came from. Was there a test that was run, or is it just an educated guess based on the performance of other languages? If there was a test, I'd be really interested in the details of how it was run and what its results were.
-- Cipscis 15:43, 22 February 2012 (EST)
True, it's an educated guess. Floor() functions (and to a certain extent entire Math libraries) are notoriously slow in all languages, because they have to return correctly in all circumstances. The int cast will work in this case, because: 1) the number of game days passed should never exceed to max value of an integer, and 2) The number of game days passed will always be a positive number.
EDIT: There doesn't seem to be any way to really test this ingame. I get strange and inconsistent results for measuring the passage of small amounts of time, and I think it's because of the game's implementation of floating point numbers.
So, I'll change the main page back in light of no evidence to prove my case :D
You win this time, Cipscis!!! <shakes fist in the air> haha
-- Daemonjax
- I'm lateeee to the party, but rather one is faster or not, casting to int also allows one to avoid using a function call. Thus, this function could have only needed [GetCurrentGameTime - Utility]. --Rasikko (talk) 2018-02-11T08:46:34 (EST)
The other time functions.
Complete Example Scripts also has some time related functions to look at and possibly consolidate. I know User:Rasikko has been working on these lately, maybe its useful? Scrivener07 (talk) 2018-02-14T10:00:38 (EST)