Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

CSG: Resizing shapes using opposite side instead of center #21120

Closed
mrzapp opened this issue Aug 17, 2018 · 5 comments
Closed

CSG: Resizing shapes using opposite side instead of center #21120

mrzapp opened this issue Aug 17, 2018 · 5 comments

Comments

@mrzapp
Copy link

mrzapp commented Aug 17, 2018

Godot version:
3.1-dev

Issue description:
When resizing a CSG shape (or any shape, probably), the resizing is done from the center on the chosen axis, forcing us to move the Spatial node for every adjustment to the shape. Also mentioned here

Solution:
I propose that, when holding down a modifier key, the shape is resized using the opposite side as an anchor rather than the center.

@CptPotato
Copy link
Contributor

What exactly do you mean by 'opposite' side?

@nodefish
Copy link

nodefish commented Aug 17, 2018

Resizing a CSG Shape (or even things like collision shape extents) expands/shrinks both sides from the center of the shape. This makes it very hard to judge the resulting size, and very often you have to re-adjust the position of the shape after doing it.

It would be much easier to work with if you could resize non-symmetrically, in 1 direction only, e.g. in the case of a cube, moving a single face like so: https://imgur.com/a/Gyqm6OL

This is what is meant by "using the opposite side as an anchor," e.g. if I'd like to expand in the +Z direction, the shape should not expand in the -Z direction.

(The above recording is using a simple tool I wrote in GDscript to make it faster and less finicky to resize CSG shapes. I'll gladly share it if someone asks but I think it's so simple nobody will want it).

@mrzapp
Copy link
Author

mrzapp commented Aug 18, 2018

@nodefish Please go ahead and share it, I don't see how it couldn't be helpful.

And thanks for supplementing with your explanation, it was a lot more precise than mine.

@nodefish
Copy link

csg-widget.zip

The idea is to make instances of this basic EditableCSG scene and enable "editable children" to build prefabs etc.

However, if you instance it into a complex scene, it becomes a bit difficult to click and drag the widgets due to 3D selection issues (#6867).

@Calinou
Copy link
Member

Calinou commented Jun 19, 2020

Closing in favor of godotengine/godot-proposals#452, as feature proposals are now tracked on the Godot proposals repository.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

5 participants