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

Replace editor renderer dropdown with icon next to version button #103042

Open
wants to merge 1 commit into
base: master
Choose a base branch
from

Conversation

Calinou
Copy link
Member

@Calinou Calinou commented Feb 19, 2025

The rendering driver is represented by the icon, while the rendering method is represented by its color (green for Forward+, purple for Mobile, blue for Compatibility).

This allows saving space at the top of the editor while providing more information than before on editor screenshots and videos, which is useful for technical support purposes. As a bonus, the rendering driver and method are now visible in the project manager.

EditorVersionButton is now based on Button instead of LinkButton so that it can display an icon. However, this means its text is no longer underlined on hover.

In a future PR, we can also expand the usage of these icons to be displayed next to each project on the project list.

Preview

Mobile in the editor

Image

Image

Forward+ in the project manager

Image

Tooltip with rendering driver and method

Image

TODO

  • Add icons for Vulkan, Metal, OpenGL, OpenGL ES, ANGLE and use them.
    • We could also use their respective official logos like we do for platforms, but ANGLE doesn't have an official logo and other logos may not scale well to a 16×16 pixel grid.

The rendering driver is represented by the icon, while the rendering method
is represented by its color (green for Forward+, purple for Mobile,
blue for Compatibility).

This allows saving space at the top of the editor while providing
more information than before on editor screenshots and videos, which
is useful for technical support purposes.

EditorVersionButton is now based on Button instead of LinkButton
so that it can display an icon. However, this means its text is no longer
underlined on hover.
@bruvzg
Copy link
Member

bruvzg commented Feb 19, 2025

We could also use their respective official logos like we do for platforms, but ANGLE doesn't have an official logo and other logos may not scale well to a 16×16 pixel grid.

ANGLE can use OpenGL ES icon, it's emulating GL ES and on platforms it's used there's no native GL ES support.

@bruvzg
Copy link
Member

bruvzg commented Feb 19, 2025

We could also use their respective official logos like we do for platforms, but ANGLE doesn't have an official logo and other logos may not scale well to a 16×16 pixel grid.

So only DX12 is a issue (current logo won't be ok for 16x16), but I guess old XII logo can be used: https://upload.wikimedia.org/wikipedia/commons/6/67/DirectX_12_Ultimate.png

@AThousandShips
Copy link
Member

I think having to go under project settings to change this (in a place that might be hard to find) is a significant loss of usability, especially for new users who likely have no idea where to look in the project settings to find this

@TX256
Copy link

TX256 commented Feb 20, 2025

If discoverability is a concern (finding it in the project settings), how about a compromise: add a "Rendering Method" sub-menu in the Project-menu under "Project Settings..."?

@clayjohn
Copy link
Member

I think having to go under project settings to change this (in a place that might be hard to find) is a significant loss of usability, especially for new users who likely have no idea where to look in the project settings to find this

How often are users changing the setting? I suspect that most people set it when creating the project (its a required setting in the project creation menu) and then never touch it again.

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

Successfully merging this pull request may close these issues.

Remove rendering method selector from main editor interface
5 participants