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

Material3D appears in multi node edit inspector window but cannot be multi edited. #91843

Open
OctagonalHexy opened this issue May 11, 2024 · 1 comment

Comments

@OctagonalHexy
Copy link

OctagonalHexy commented May 11, 2024

Tested versions

  • Reproducible in: v4.3.dev5.official [c9c17d6]

System information

Godot v4.3.dev5 - Linux Mint 20.1 (Ulyssa) - X11 - Vulkan (Forward+) - dedicated NVIDIA GeForce GTX 1060 (nvidia; 535.171.04) - Intel(R) Core(TM) i7-7700HQ CPU @ 2.80GHz (8 Threads)

Issue description

Then testing how the use of add_undo_redo_inspector_hook_callback() in Godot's source would be effected if the bug I reported with it not calling back on multiple simultaneous node editing was fixed how I'd like (#91816 ), I discovered that that its use in material_editor_plugin.cpp seemingly cannot exhibit this bug on account of multiple Material3D resource properties not being editable at the same time.

As for what I would expect this to do, While I think it would be nice to make editing multiple unique sub resources of the same type like Marerial3D work with multi node editing, I recognize would be more of A feature request if that was the desired solution.
I only ran into this because I was testing for another bug that I'm invested in and even then I had some trouble figuring out what was and wasn't being edited.
I recommend that the property inspector hide any properties or resources that will not be multi edited when multiple nodes are selected, with perhaps the exception that if the resources references are the same there would be no need on account of them all sharing edits to that resource anyway.

void EditorInspectorPluginMaterial::_undo_redo_inspector_callback(Object *p_undo_redo, Object *p_edited, const String &p_property, const Variant &p_new_value) {

Steps to reproduce

1: Start an empty project.
2: Add 2 mesh instances to the scene tree and give them each A unique Material3D.
3: Select both mesh instances in the scene tree and try editing any of either of the Materials.
4: Only the first selected mesh instance's Material3D will be changed.

simplescreenrecorder-2024-05-11_13.08.47.mp4

Minimal reproduction project (MRP)

N/A

@jsjtxietian
Copy link
Contributor

See also #91637, another multi node edit issue

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

No branches or pull requests

2 participants