You are missing the point Colin. It is not a waste of anything. They have got to be unpacked to be usable so why bother packing them in the first place. You are unnecessarily wasting processor time, restricting the range of parameters and not even saving a memory as your packed array of rules is a waste of space once they are unpacked to be usable - and don't even think of unpacking them in the timer loop -there is no processing time to spare in there so they will have to be present as ints and doubles ready for use.Im utterly convinced that using 32bits each to store the spread, gravity etc is a waste - and by fitting these into less bit can get the whole rule into a Double so the array of rules is a simple array of Doubles.
Wrong. This IS unpacking and it takes time you cannot afford. You cannot just pick an int from a double. Ints don't live in doubles! You obviously know nothing about how a number is represented as a floating point double.its transfered directly from the second half of the Rule Double. Nothing could be faster!
You can't afford the time to pick out the 16 bits which don't necessarily exist in the format you believe. You need to unpack it first.pgravspread= last 16 bits of Rule(col1*64+col2)
You cannot do bit operations on a double without transforming it to an int!and things like is grav negative is just if gravbits&10000000 ==1 etc
No it's not. You just don't understand the costs in time of what you are saying. You are making assumptions that are outside your sphere of knowledge and I am fed up with trying to explain that.all fast and simple
Frame=Frame+1
If Now >= Lasttime+ 10000000 then
FPS.text= "FPS:" & Frame
Frame =0
Lasttime=Now
end if