UI feedback and suggestions for potential solutions #21
Replies: 2 comments 4 replies
-
Hi Nathan, You have quite a lot of ideas here. I like some of them, and some of them will be made obsolete by future changes I'm planning. The addon is using MsehInstance3Ds to render the shapes. But they do not appear in the scene and cannot be manipulated directly. The CyclopsBlocks node adds them as children and makes sure they're up to date during the _process() loop. The main reason I'm not using the raw components is that I need to manage mesh and collision as a single unit. One of the big changes I'd like to make is to allow blocks to exist individually in the scene and not have to be children of the CyclopsBlocks node. If I can do this, it should be easier to use Godot default tools. One limitation of Godot plugins is that they are sensitive to the object currently selected in the toolbar. So if I want receive input events, one of the Cyclops* objects must be selected in the outliner. So the toolbar in the editor functions partly to alert the user that Cyclops is active. It would not be possible to draw blocks or prisms otherwise. Like the idea of having a separate docks for more complex tools, but I feel retain in the toolbar for quick access and to alert the user still makes sense. Shortcuts are a good idea. I still need to look into how to do this. Icons are a good idea, but someone would need to design these. Maybe I could grab a few open source ones. Unfortunately, Inkscape is not the easiest tool to use. I think you ideas for the material editor make sense. I've worked with styles a bit, but not editor styles specifically. How do you access those? The UV Editor dock is not something that can be easily integrated into the inspector since it depends on the current object and face selection and can also edit multiple faces at the same time. It has very basic functionality at the moment. Eventually I'd like to replace it with a projection tool that operates in the viewport. Anyhow, for now it might be best to work on small UI fixes if you're interested. If you could get the UI components to use the 'editor styles' you mentioned, that would be helpful. |
Beta Was this translation helpful? Give feedback.
-
I think you're being too formal about this. Issues work best when they're small and focused. If you look at the issues Calinou submitted to the issue tracker, you can get an idea of a good way to format them. An issue is best when it's focused on one specific problem that can be easily tested for. What you've submitted here is more of a general design document. While I do think there are some good ideas here, it's too sweeping for me to just approve the whole thing. If you could instead submit issues for individual things that need fixing, I could do a better job of addressing them. |
Beta Was this translation helpful? Give feedback.
-
Hey, I'm Nathan from GDQuest. This follows up on our short exchange on your channel.
For convenience, I went ahead and compiled all the notes in a single post. That way, you can review quickly and filter desired changes before opening too many unwanted issues in the tracker.
I kept the feedback focused on what the add-on is currently at, it seems to be what you desired.
Please don't hesitate to take and leave what you want, ask for more details and whatnot. I'm happy to help wherever you'd like help, and happy to not touch or bother you with areas you'd rather keep full control of.
Initial question
I was wondering if you tried leveraging built-in nodes, such as MeshInstance, and if you faced specific limitations that prevented you from using them?
I'm asking because you need to re-implement features Godot provides for them such as simple and box selection, focus, etc. And this choice will affect future UX improvements the Godot developers bring to the 3D editor.
Toolbar
Observations:
Proposal:
Materials dock
Observations:
Proposal:
Other suggestions:
UV dock
Observations:
UV transform options feel like inspector properties but are put in a separate dock with a pretty different user experience.
Proposal:
Use the inspector plugin API to integrate the UV controls and future block-level properties into the inspector. On top of offering a feel similar to the rest of the inspector, it could be extended with interactive widgets or modal windows if needed.
Making this work with probably involve using the scene API to select Block nodes in the scene dock when using the Block tool.
Note that selecting individual block nodes in the scene dock with your Block tool would allow you to leverage the Focus command in Godot (F key), allowing the user to recenter the camera just like when they select regular 3D meshes.
I hope that some of the above is useful. You are welcome to take or leave anything, of course. I'm happy to participate in further discussion or help tackle some issues if desired.
Beta Was this translation helpful? Give feedback.
All reactions