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

Merge from scene confusion (maybe bug) #32039

Closed
danilw opened this issue Sep 8, 2019 · 2 comments · Fixed by #45943
Closed

Merge from scene confusion (maybe bug) #32039

danilw opened this issue Sep 8, 2019 · 2 comments · Fixed by #45943

Comments

@danilw
Copy link

danilw commented Sep 8, 2019

maybe this same like this, my less complicated #31744

Godot version:
3.1.1 stable

OS/device including version:
Editor Linux

Issue description:
On Merge from scene, created in editor resources shared only for current session, reopening editor unlink them all from each other.

Steps to reproduce:
Create Root Node: 2D scene (two scene, two editor tabs), save them.

first tab(scene1): create Sprite, on first scene, create new Gradient texture->new Gradient, save

second Tab(scene2): press Merge from scene, select scene1, Sprite

now editing(change any color) Gradient on Sprite in any of tabs(Scenes) make it same change to second Sprite Gradient.

Save everything, close Editor.

Reopen Editor: now changing Gradient do not set same value to other Sprite in other scene.

The problem is - it exist in all materials(particle material/spatial material/other), Gradient and Curve

Copying objects form scene to scene with material that has saved local created elements, global editing does not work after Editor restart.(I did not knew that and now need to remake 6 scenes with 6 copyes on each 2 material per object to make it work again in my project)

Minimal reproduction project:
not needed

@danilw danilw changed the title Merge from scene confusion(amybe bug) Merge from scene confusion (maybe bug) Sep 8, 2019
@KoBeWi
Copy link
Member

KoBeWi commented Sep 9, 2019

Yep, this is a bug. It should always behave like after reloading. The fact that editing seemingly built-in resource on one scene edits the resource on the another one leads to unwitting lose of changes. It happened to me few times actually, and it's especially terrible with scripts :/

@KoBeWi
Copy link
Member

KoBeWi commented Sep 1, 2020

This is still valid in d70a17d

This is not really a bug, but the way how resources work. Though this behavior is unexpected and might lead to data loss and other bad stuff. Fixing it would require making a deep copy on the merged nodes. My copy-paste PR has the same problem when you copy nodes across scenes.

@akien-mga akien-mga added this to the 4.0 milestone Feb 18, 2021
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging a pull request may close this issue.

3 participants