Hmm, interesting, I'll fix it.
Printable View
I just noticed a few options descriptions that I never noticed before, these may be new...
Optimize events: May modify events to favorize speed.
Made me wonder how these optimized events would look, could we could learn from it.
So, would be possible to have this option as an feature that you call from inside event editor, where it modify all the events in a way we can actually see?
(May also help me suggesting more optimizations)
Yes and no. It does 2 types of modifications:
1. It re-orders conditions to make sure faster conditions are executed first. As very simple example, if you do:
- Object A overlaps Object B
+ Global value A = 1
It will exchange both conditions as testing a global value is much faster than testing collisions and the other condition won't be evaluated if Global Value A is different from 1. This could be potentially added as a manual option for each event, but well...
2. It combines some actions and conditions that can be executed together. This can't be done in the editor.
Ah I see, I thought it would do things a bit differently, like merging events with same conditions.
I guess Optimize events also take care of not moving conditions in a way that would break scoping, right?
One thing that I noticed is that a flag can be more efficient than using break, and using a flag to keep the overlap state instead of checking on multiple events is also a lot better.
Although it shouldn't be done in events that actually moves the object that you need to test for overlap.
I'm planning on making a tool that auto optimizes events with child events and some other stuff.
(it would read and interpret the events in form of text that we can copy to clipboard with 2.5+, the rest would be just an automation macro to copy and paste stuff around)
Could we get a condition like "Pick all objects in a line" for specific objects, like Active and Qualifiers?
And perhaps a expression that outputs the amount of selected objects... Please?
"Pick all objects in a line" from "New Objects" selects anything, would conflict with the expression above...
Was trying to avoid using extensions like Select Object or Scope Control because of these are Windows only, and in thing I'm working on, running a For Each loop isn't doing it like I was expecting.
Here's a example, you can see that with the flag it got a lot more FPS than using Break. 23% more efficient with a Flag. (44,4% more efficient than Negated Overlap)
Attachment 30700
Crazy how much the Debugger affects performance with that example
Debugger OFF 1000fps Debugger ON 500fps
A ram usage expression in fusion would be good for custom debuggers
Update: the build 293.9 is available, hopefully next official version.