Logic Editor Lag

  • Author
    Posts
  • May 5, 2025 at 12:43 pm #1510

    Hi, when working on larger projects, the Logic Editor starts lagging so much that I’ve started calling it the LAGic editor 😀
    I just wanted to make a couple of suggestions:

    1. Are connection lines between nodes still being updated if the nodes are out of the user’s view?
      – If they are, please consider turning them off while they are not in view.
      – Nodes can be turned off, culled, while they’re not in view, as well, and start rendering them only if they are within a certain distance of the user’s view.
    2. Turn off node connections when zoomed out. Simplify nodes when zoomed out, they can be shown only as rectangles, no text, no connection circles.
    3. Consider adding some sort of caching to speed up the editor
    4. Optimise Node rendering and update where possible

    Thank you! All the best.

    May 6, 2025 at 9:55 am #1521

    Yes, but you can prevent the lagging if you divide your project up into groups (select a number of nodes and create a node called “Group” which will hide the nodes inside and automatically create connectors to the logic tree outside of the group).

    We already optimized as much as we can, except for a LOD logic which we plan to integrate eventually. The LOD logic will reduce the drawing load in the way you described.

    You wrote: “If they (connection lines) are, please consider turning them off while they are not in view” Consider this: Is a line out of view if their start and endpoint is out of view? The answer is no. 😉 If you think about it, the complexity is mind-boggeling…

    May 8, 2025 at 9:40 am #1526

    I know implementing this feature is challenging, but one approach is to track what the user sees on their screen, calculate the view rectangle, and cull any lines that start and end outside this area. This calculation can also support a Mini Map feature, giving users a preview of their view compared to the entire node setup. I’ll upload image examples as soon as the forum allows it.

    Disabling connection lines while panning the view can significantly boost performance in the logic editor. A UI toggle to show or hide these lines would give users more control over visibility and optimization.

    Grouping nodes is a great tool, but in my experience, it works best for packing specific functionalities rather than large portions of a node setup. I have worked extensively with node-based systems like Substance Designer, Unreal Engine, and 3DS Max Material Editor, and I know how quickly node graphs become complex. Every feature that helps users organize and accelerate their workflow improves efficiency and makes their work easier.

    You’re doing incredible work! I just want to contribute feedback based on my many years in the gaming industry to help this tool grow even further. Logic Editor is the beating heart of the World Builder, so I’ll likely provide a lot more feedback and suggestions to help refine it.

     

    May 13, 2025 at 7:32 am #1541

    Thank you Boris! Your input is greatly appreciated. Currently, we’re thinking of having a ‘map’ overview where we only display nodes as square boxes (no rounded corners) and without the connecting splines so you can navigate more easily to the set of instructions you are looking for. Then, we could actually suppress drawing splines for connections which are completely above, below, to the left or to the right of the view window. We’re slowly getting there…

    May 21, 2025 at 12:30 pm #1587

    I just want to add to this conversation that I’ve used the Group feature in the node editor to group many different functionalities and the performance of the node editor improved dramatically. I would suggest to use the logic editor normally when creating and testing new functionalities and then, once satisfied, grouping them inside a single node.
    Just select all the nodes you would like to group, press the right mouse button, type “group” in the search window, and choose Group node. This will group all the selected nodes into a single Group node.

    Group Node 01a

    Many nodes can be grouped and organized this way. Enter the group by pressing the arrow buttons in the group node’s right side to edit and rename the node group. Use Node Connector nodes to make inputs and outputs to the group node.

    May 21, 2025 at 12:31 pm #1588

    In the image below many different functionalities have been grouped. This is represented by the purple nodes with longer, descriptive names.

    Group Node 02a

    Node groups can be copied and pasted now, so you can reuse functionalities more easily.

    All the best,
    Boris

    May 22, 2025 at 9:47 am #1603

    Great work, Boris! 🙂 And btw, we improved drawing nodes dramatically on our side as well. Next release…

    May 23, 2025 at 10:45 am #1610

    That’s great news! Can’t wait to test it out.

    May 27, 2025 at 5:10 pm #1635

    Cool 🙂 (I always have to have the last word because that’s how I know that all questions have been answered. there is no way to ‘close’ a thread here…)

  • You must be logged in to reply to this topic.