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

CSGPolygon in path mode scales do not work correctly #48234

Open
HaSa1002 opened this issue Apr 27, 2021 · 5 comments
Open

CSGPolygon in path mode scales do not work correctly #48234

HaSa1002 opened this issue Apr 27, 2021 · 5 comments

Comments

@HaSa1002
Copy link
Contributor

Godot version:
3.3

OS/device including version:
Windows 10 (19042.928)

Issue description:
The question is how to scale a path based CSGPolygon. We tried both scaling the path and CSGPolygon and neither resulted in stable scales. I kind of expected that, but the question still is how to scale it properly. But, the scale changes randomly when switching scenes.

csg_bug.mp4

Steps to reproduce:

  1. Open the project
  2. Scale the Path node up
  3. Create a new scene
  4. Switch back
  5. Scale path node down

Minimal reproduction project:
CSG Path.zip

@Calinou
Copy link
Member

Calinou commented Apr 27, 2021

See also godotengine/godot-proposals#2412 and godotengine/godot-proposals#1062 (possible duplicate?).

@Xrayez
Copy link
Contributor

Xrayez commented Apr 27, 2021

See also godotengine/godot-proposals#2412 and godotengine/godot-proposals#1062 (possible duplicate?).

But, the scale changes randomly when switching scenes.

Looks like a bug to me in either case...

@kb173
Copy link

kb173 commented Sep 29, 2021

My initial report for this at #32171 was moved to godot-proposals (godotengine/godot-proposals#2412), where a PR (#53195) that implements various scaling methods was just referenced 🎉

However, I agree that this behavior described here needs to be addressed, as it does feel like a bug (especially given the reset on scene switch). Perhaps, with the new PR, an editor warning like "Scaling the CSGPolygon here does not work. Please use [functionality added by the PR]." could be added?

@stebulba
Copy link
Contributor

stebulba commented Oct 2, 2021

I tried to reproduce the bug.
I try with godot 4.0 dev.
I found a weird behviour. The CurvePath is all set to 0 in Y axis. When you scale the curve at Y axis, that look be not a scale (multiplication) of the curve vector points, but look to be scale of the CSGPolygon.
When the curve is not setted to 0 in Y axis, the scaling scale the point of the curve, like as expected to me.
image
On this picture, the CSGPolygon is scale at 1 and the polygon is 1 m.
What expected to me should be leave the size of the mesh at 1 m and scale only the path curve point. But it's scaling only the vector of the curve not setted to 0, like the point in the back of this picture.

For me it's a bug. Scalling a Path3D, should not scale the csg polygon but only the vector of the Path3D.
vice and versa, because when I scale only the csgpolygon, a scale look to be apply on the path3d.

We normaly want this behviour only if one of those node is inherit.
image

@stebulba
Copy link
Contributor

stebulba commented Oct 2, 2021

One more bug is when we change the transform of the Path3D (scale, position etc), dirty and gizmo are not updated. We have to select a another node to update the shape.
probably add [ property_list_changed ] as signal.

// If MODE_PATH, check if curve has changed.

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