Unify Control and Container nodes, allow children to pick the behavior
### Problem or limitation *I know the title may sound like this is yet another unfeasibly large rework, but trust me, it's a much smaller change than it looks. And it comes with great benefits for UI authoring in the engine. With my expertise, I wouldn't be making this proposal if I didn't believe it was realistic and respectful of what Godot already offers.* Godot provides two ways to create layouts with its UI system: **anchoring** and **containers**. **Anchors** are useful when you want to align nodes to a point of another control or create a proportional relationship. They do not work in situations where you need parent controls to account for size of their children, unless you script that behavior explicitly and manually. They also do not serve to quickly create typical layouts. This is where **containers** come in and offer the exact opposite. They combine and arrange their children (unless marked as top-level) in a certain way, force transforms on them (setting position and size, resetting scale and rotation), and completely override anchoring behaviors for them. Containers offer some ways of aligning children, but these depend on the type of container and apply with respect to other "contained" children. This separation is pretty nice at first. For simple and straightforward GUI you can make do with built-in elements exactly as designed and create layouts in no time (learning curve notwithstanding). But very quickly you will run into situations where you have to
Posted by YuriSizov on Feb 13, 2026, 12:53 PM
Tags
Related issues
- He is not weirdly political, he has just more normal views, I know that is something hard to grasp for some tech bro.
- Of course you don't have a right to murder anyone.
- I was talking about this the other day with someone - broadly I agree with this, they're absolutely fantastic for getting a prototype so ...
- In theory you could express most things as a flowchart but the complexity of doing that quickly escalates.
- It's not really hard to onboard new engineers with Scala, Clojure or even Ruby backgrounds.
Raise real-world problems, find people facing the same issue, and discuss solutions.2,000 issues0 comments
ux (EdTech)
He is not weirdly political, he has just more normal views, I know that is something hard to grasp for some tech bro.
Of course you don't have a right to murder anyone.
Unify Control and Container nodes, allow children to pick the behavior
I was talking about this the other day with someone - broadly I agree with this, they're absolutely fantastic for getting a prototype so ...
In theory you could express most things as a flowchart but the complexity of doing that quickly escalates.
It's not really hard to onboard new engineers with Scala, Clojure or even Ruby backgrounds.
Unify Control and Container nodes, allow children to pick the behavior
### Problem or limitation *I know the title may sound like this is yet another unfeasibly large rework, but trust me, it's a much smaller change than it looks. And it comes with great benefits for UI authoring in the engine. With my expertise, I wouldn't be making this proposal if I didn't believe it was realistic and respectful of what Godot already offers.* Godot provides two ways to create layouts with its UI system: **anchoring** and **containers**. **Anchors** are useful when you want to align nodes to a point of another control or create a proportional relationship. They do not work in situations where you need parent controls to account for size of their children, unless you script that behavior explicitly and manually. They also do not serve to quickly create typical layouts. This is where **containers** come in and offer the exact opposite. They combine and arrange their children (unless marked as top-level) in a certain way, force transforms on them (setting position and size, resetting scale and rotation), and completely override anchoring behaviors for them. Containers offer some ways of aligning children, but these depend on the type of container and apply with respect to other "contained" children. This separation is pretty nice at first. For simple and straightforward GUI you can make do with built-in elements exactly as designed and create layouts in no time (learning curve notwithstanding). But very quickly you will run into situations where you have to
Comments (0)
No comments yet. Start the discussion.