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

Add a 'always on preview engine' option in projects/accounts? #659

Closed
yaustar opened this issue Jan 14, 2022 · 12 comments
Closed

Add a 'always on preview engine' option in projects/accounts? #659

yaustar opened this issue Jan 14, 2022 · 12 comments

Comments

@yaustar
Copy link
Collaborator

yaustar commented Jan 14, 2022

This is for users that always want to be on the cutting edge and help us review upcoming engine changes. Similar to Google Chrome Canary and Safari Tech Preview in workflow.

Unsure if this should be on a per user or per project setting though

@leonidaspir
Copy link

I would vote per project!

Example case:

  • we had to use the new box reflections solution in a project so we selected the preview engine version.
  • At the same time that engine version brought changes in the clustered lights API.
  • We updated the API on that project, but in other projects that used clustered lights with the legacy API we didn't have the bandwidth to update it at that moment.

A per user setting would have made it very hard for us to work on both projects that targeted different engine versions.

@Maksims
Copy link
Collaborator

Maksims commented Jan 14, 2022

I believe it should be per project, and all: Editor, Launch, and Publish. To reduce inconsistencies and confusion.
If you choose to be on latest per project, then it is everywhere and everybody the same.
Otherwise there will be confusions due to different versions, etc.

@jiajasper
Copy link

jiajasper commented Jun 14, 2022

Please see this Figma link for design: https://www.figma.com/file/USwW0a6rU12PJkcz4wfwzg/PlayCanvas-Editor?node-id=2%3A2

The goal we want to achieve is to inform user that there is a new release candidate engine version to launch their game with and we need to ensure that they are making an aware decision to opt in using the less stable version of the engine.

The user flow is as follow:

  1. A orange interactive hotspot appears on top of the launch button
  2. User can click on the red hotspot to trigger the popup modal for opting in using the release candidate version
  3. User can also just hover on the launch button which will open a dropdown menu - a new checkbox "Test release candidate" will be presented along with the red hotspot
  4. User can check the "Test release candidate" box which will bring out the popup modal for opting in. User can check the "do not show again" box to remove the hotspot and also prevent the modal to show up again when they check the "Test release candidate" box again. If the user does not check the "do not show again" box, the opt-in modal will show up every time they check the "Test release candidate" box (unchecking the box does not bring out the modal)
  5. If the user launch the game with ""Test release candidate" box checked, when the game is loaded up, we will show a dismissible popup on the bottom of the screen to remind them that they are currently using the release candidate engine version.
Screen.Recording.2022-06-14.at.13.38.01.mov

@yaustar
Copy link
Collaborator Author

yaustar commented Jun 14, 2022

What happens if they have previous engine selected in project settings and the Test Release Candidate ticked?

@jiajasper
Copy link

jiajasper commented Jun 14, 2022

@yaustar good question

When the test release candidate ticked, it will always take priority.
And when release candidate is unchecked, the engine version will revert back to previously selected engine version (if it was current, it'd revert back to current. if it was previous, it'd revert back to previous)

One design changes I'd make, based on this feedback, is that the secondary CTA on the opt-in modal will be dynamic - depending which version the user is currently using.

image
image

@yaustar
Copy link
Collaborator Author

yaustar commented Jun 14, 2022

Feels a bit weird to have multiple ways to set this. Could we have it so that when the 'Test Release Candidate' is ticked/unticked in the play button, it sets the engine version in the project settings?

And when the user sets it from RC to current/previous, the tickbox is unticked in the play button too?

@jiajasper
Copy link

jiajasper commented Jun 14, 2022

@yaustar, yes, by design, it will set the project settings as you opt in
but we also need to design for when the release candidate is unchecked, it needs to go back to the version that user was previously on before opting in

re: yes, the two settings are essentially bound

@yaustar
Copy link
Collaborator Author

yaustar commented Jun 14, 2022

Would that matter that when unchecked it go back to previous version that the user was on? At the moment, that setting is on 'saved' for the tab so if they refresh, they would be back on current anyway

@jiajasper
Copy link

@yaustar, oh i didnt know that, then we can simply set the engine version to stable when they uncheck the release candidate!

@yaustar
Copy link
Collaborator Author

yaustar commented Jun 29, 2022

Another request from a user for this

@albertvanveen
Copy link

It would be great if the popup, with the new release candidate, could be shown when opening the editor.

@yaustar
Copy link
Collaborator Author

yaustar commented Jun 29, 2022

@jiajasper Can you make this comment a new ticket please if we haven't got one of these already?

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

No branches or pull requests

5 participants