I have discovered that different way of picking objects gives quite different performance results
I have 2 objects, in local variable of one i store the UID of the other
Then i want to pick them together, every pair by itself, and here's 2 ways i can do it:
When i multiply the pairs a bit i got drastical difference in FPS
with Group1 I pick the second object by UID and got 60fps
with Group2 I pich the second object by Local Variable and got 10fps
Can anyone explain why is that?
Could it be the difference in events?
In Group one you have a pick event, while in group two you have a compare event..
Develop games in your browser. Powerful, performant & highly capable.
Not sure what is the difference in computing it....
the actual effect I get is the same both ways - for each of the sprites i got the pair selected and can interact with it.
One possible explanation:
In the first case, Pick by UID knows that there can only ever be one object with that UID, so it will stop once it finds it. In the second case C2 can't know that, so it has to check every Sprite object's variable to see if the value matches or not, as there may be more than one Sprite with that value.
It's also likely that C2 has an optimal way to pick by UIDs since it's a common operation.
Well that makes a lot of sence, cheers.
Now will have to walk over my code for some optimisations.