godotengine / godot-proposals

Godot Improvement Proposals (GIPs)
MIT License
1.07k stars 68 forks source link

Allow dismissing node configuration warnings #10003

Open AverseABFun opened 1 week ago

AverseABFun commented 1 week ago

Describe the project you are working on

A small 3D game where you interview "AIs"(in quotes as they're basically a bunch of if statements)

Describe the problem or limitation you are having in your project

I am using a CollisionShape3D to show me where the player can reach things(as you can't move) and it has a warning symbol on it as it has no CollisionObject3D parent.

Describe the feature / enhancement and how it helps to overcome the problem or limitation

Add some way(maybe a button or keyboard shortcut) to dismiss these warnings and have them not be shown.

Describe how your proposal will work, with code, pseudo-code, mock-ups, and/or diagrams

When the user presses a button(possibly in the popup shown after clicking on a warning symbol) it dismisses the associated warning.

If this enhancement will not be used often, can it be worked around with a few lines of script?

Not sure, it might be possible but I can't think of a way.

Is there a reason why this should be core and not an add-on in the asset library?

This isn't realistically possible with an add-on, I don't think.

Zireael07 commented 1 week ago

This is a bad idea. If you dismiss a warning, you won't fix it.

The way you're using the node is simply put not the way it should be used

AverseABFun commented 1 week ago

Yes, but in my case(at least) I am using the CollisionShape3D to show as a dev tool where things can be placed. There is no easy other way to perform this, as I don't want a giant MeshInstance3D obscuring the player's view.

AThousandShips commented 1 week ago

I think we should focus on the ways to handle the warnings when using the engine as intended, otherwise it gets a bit confusing

Normally the warnings are things that you shouldn't ignore because things won't work

AverseABFun commented 1 week ago

Fair, but I'm suggesting a feature I guess meant more for power users who know what they're doing and are using nodes in unintended ways as either to help show something for them/their dev team that can't be easily shown in another way.

AThousandShips commented 1 week ago

I'd say the case you're suggesting above should be handled by power users with plugin gizmos or markers etc., and the same would apply to general cases like that, so I don't know that there are really any warnings that are highly relevant to hide, can you pinpoint some cases when used as intended make sense being hidden?

AverseABFun commented 1 week ago

As I said in the main issue, I am using a CollisionShape3D to show where I can place objects. I don't know how common this is, but the warning says that it has no CollisionObject3D parent, which I know.

AverseABFun commented 1 week ago

Just thought of another example: When you change the Z-Index of a control, it gives a warning that it doesn't change the input handling order, which I know and don't care about.

Calinou commented 1 week ago

Just thought of another example: When you change the Z-Index of a control, it gives a warning that it doesn't change the input handling order, which I know and don't care about.

That warning was removed in 4.3: https://github.com/godotengine/godot/pull/89956

AverseABFun commented 1 week ago

Oh whoops, sorry.

On Fri, Jun 21, 2024, 5:37 PM Hugo Locurcio @.***> wrote:

Just thought of another example: When you change the Z-Index of a control, it gives a warning that it doesn't change the input handling order, which I know and don't care about.

That warning was removed in 4.3: godotengine/godot#89956 https://github.com/godotengine/godot/pull/89956

— Reply to this email directly, view it on GitHub https://github.com/godotengine/godot-proposals/issues/10003#issuecomment-2183547652, or unsubscribe https://github.com/notifications/unsubscribe-auth/ATOOUFUGPRIAN7BOMTKTUE3ZISTKFAVCNFSM6AAAAABJUPWYV2VHI2DSMVQWIX3LMV43OSLTON2WKQ3PNVWWK3TUHMZDCOBTGU2DONRVGI . You are receiving this because you authored the thread.Message ID: @.***>

Mickeon commented 1 week ago

These warnings are meant to explicitly tell you something won't work or will fail. If they can be "silenced" there must be a dang good way to know they exist, and be able to see them anyway, otherwise most users would be casually shooting themselves in the foot.

In GDScript, the @warning_ignore annotation accomplishes both, but it's difficult to come up with something similar for the rest of the editor. Warnings are currently sent as a list with no way to identify each one.

Regardless, for the more intrusive warnings it's always worth questioning their existence. The warning in the Proposal is fair game, however.