editor
editor copied to clipboard
Engine Version UX
With more slippage of recent updates with bugs and unintended consequences, I can clearly see why the engine version has been added to the Editor. While I still believe always updated approach while has more requirements on the quality of development it is a great way to not to worry about updates altogether. Migrations and other processes that affect other engines/tools - often lead to pain, especially if multiple versions are behind and the migration process is complex. More robust testing would ultimately minimize issues:
- Have engine rendering tests with image comparisons.
- Editor tests using node+webkit approach, which allows simulating mouse/keyboard actions.
Nevertheless, here are some UX improvements for version workflow that would be great to have:
-
Would be great to see a current version running in Editor, something subtle like this:
-
When switching version in Editor settings, offer a reload button right beside the select box, with a warning below something like: "Editor needs to be reloaded to take version change into account".
-
When publishing builds, would be great to default engine value to the one used in Editor currently, as it might lead to unintended results when a version is not checked and the developer will publish a version with an unintended version.
-
Version should be saved per project-branch and persist taking into account the collaborative environment.
From the intention POV, the user should always be using the Current version and that wouldn't be too far behind the actual engine release. This release has slipped due to team members being ill/on holiday.
Using the Release Candidate version or Previous version is meant to be a temporary measure either to test the project against an upcoming release ahead of time or temporary unblock themselves if there is an issue with the current release. Hence this is not a saved setting.
I agree with the current version being shown somewhere more visible
Just want to point out that the engine version selector doesn't affect the editor, only the launch and publish. (So refreshing the editor tab isn't needed).
Would it make sense to have the engine version selection persist for a given project?
In our case we have been developing against the upcoming 1.49.0 RC, our project doesn't really run on the current stable version. Each time we reopen editor/launch windows, we need to go back and make that selection again. Of course we can set bookmarks using the version
param, just talking about convenience.
I understand that this option can potentially lead to more complex support requests (which engine version is your project running on?). But if it's a user's choice I think it is not easy to set that by accident to a different setting.
I'm not personally against persisting this option. @slimbuck @vkalpias - any reason why we shouldn't do this? I mean, it might even help us find regressions/bugs more easily in the Release Candidate if more people are on it.
I'm not sure if this is clear but the engine version is only affecting the launch page. It does not affect the editor version and a refresh is not required as it just appends the version number as a query parameter in the launch page url.
We were probably going to move this in the launch button options eventually.
Launch button selections are persisted, so if you move it there and it follows the same behavior that works for us.
Our main issue is team members starting their work in the morning, pressing launch and the project doesn't run because they forgot to go to project settings and set engine version to RC.
I'm not personally against persisting this option. @slimbuck @vkalpias - any reason why we shouldn't do this? I mean, it might even help us find regressions/bugs more easily in the Release Candidate if more people are on it.
The risk with persisting the option is people might forget their selection and end up using Previous or Release Candidate without realising.
Perhaps we can persist the option and look at adding an indication of which release is being used on the launch page? Ideally we'd show 'Previous' or 'Release Candidate' rather than just engine version, since most users won't know which engine versions are currently previous / release candidate.
@slimbuck You can address that with UI. Maybe with the Stable/Current engine version, you don't display anything in the front-end - but as soon as you switch to Previous or Release Candidate, we can put up some text in the corner of the 3D view perhaps (or some other reasonable place in the UI).
@yaustar is this one the same as #659? if so, we can close this one.