A WebGL / PlayCanvas EMU Manifesto?

I have a more profound suggestion in relation to the challenges with WebGL as technology and PlayCanvas as an, even more, professional platform. My suggestion is (by far) not written in stone, and I only aim to start a very relevant debate, which I came about while working-and-compromising with Fullscreen/Platform challenges (in case this doesn’t get any traction, I will at least use the Preloader myself - cf below).

Open the project; PlayCanvas | HTML5 Game Engine, to find and read the DOCS, where the first " Analysis for a ‘PlayCanvas, EMU Manifesto’ " reach out to all stakeholders in our PlayCanvas community. The second doc " WebGL is here for the future ", is aimed for all other target groups. This is a draft for - potentially - an effective ‘Icebreaker’, for all those picky customers who (for the time being) possess higher regards to other technologies and platforms (Fullscreen issues shall not take us down :wink: ).

The 'Proactive Compromise Preloader’
Open and launch the project above to watch the draft preloader in action

@YauStar, @max, @dave, @Leonidas and @all other good community-people :slight_smile:

Not 100% sure what you are proposing here.

For advances in WebGL and other rendering technologies, the best place is to be part of the Khronos Group mailing lists: https://www.khronos.org/

They are responsible for the WebGL standard. We will be implementing WebGPU at some point in the future too.

Webkit have only recently made WebGL2 available in Safari (iOS 15 for iOS) as standard.

The fullscreen and orientation issues are purely browser driven. Webkit and Chromium have different implementations and iOS webkit doesn’t support fullscreen at all. There’s nothing that PlayCanvas engine can do in that respect.

Android Chrome does support full screen and forced orientation I think though: How to Change Screen Orientation with Javascript

Ok, in that case I will put emphasis on the following from my texts:
"Needless to say that no app developers aim to annoy users, who - in the worst cases - might turn to competing platforms that provide the same kind of services. The dilemma above can easily become a do-or-die dealbreaker, while applying for jobs as a WebGL Developer in a complex and high demanding Frontend Developer business. A nightmare scenario might also occur for WebGL Game Developers specifically, where kids - not always - have the same brands of phones:
Two brothers want to play the same WebGL Game, but one of them opens it on iPhone/Chrome. He gets annoyed by seeing his brother’s Android open it in Fullscreen mode and - due to the uneven screen resolutions - he starts yelling at his parents that he wants to watch a movie instead. Seconds thereafter the Android-using brother hears the sound of the movie and gives up playing for, then, to join his brother.
"
->> which lead me to make a compromise preloader screen, that is able to avoid the highly annoying ‘Uneven screen resolution’ user scenarios - namely - the experiences at Chrome-opened-apps-on-iPhone:

image

"The preload graphics above gives the user a good overview on how-to open the preloading WebGL-app in fullscreen - if the user is opening the app by Chrome-on-iPhone, the user can restart the app in Safari to secure a Fullscreen Experience.
"

All-in-all: My suggestion is a tool that can help propagate, how the total platform landscape for WebGL and PlayCanvas appears to users. Users on the other main platforms has become extremely spoiled, and instead of being surprised negatively by the Fullscreen maximization issue (Chrome vs Safari on iPhone), people should be aware of it more, and become accustomed to - f.i. - restart in Safari right away for a better experience (in a higher resolution).

If there are other issues that differ in accessibility (compared to the other major platforms) we should pursue to make people aware of them - instead; the current strategy seem to be “let users try WebGL/PlayCanvas and hope for the best, when users are to choose between platforms”.

Yesterday I visited (by coincidence) WebGL.com, are there I found a ‘user survey’ that related to how WebGL Developers would find a future WebGL learning community relevant.
Maybe our WebGL community should try and survey, how gamers-and-webservice users rate WebGL in relation to the other platforms … I have a hunch that WebGL will be rated highly as a web-technology, but not very high as a gaming-technology ->> How do we, eventually, change that?

But what do I know really? All I know is that, Chrome and iPhones both are very popular, which eliminates Fullscreen for 11% of all internet accesses (cf my calculations in the docs).

Finally: Regardless of my discreet code overviews and/or mediocre JS skills, I still hoped to get better job appliance feedback from having; relatively broad PlayCanvas/WebGL Skills. My 60-80 PC projects is not paying off, in the way I expected, and I sincerely suspect the Fullscreen issue, to be a major issue for leaders in frontend business ->> they seem to want hightier performance on every level.
How do we enhance the respect for WebGL in relation to the HTML+CSS/None-game Frontend area?

Is this more about adoption of WebGL / interactive experiences in the browser by companies/users?

I don’t think the lack of fullscreen is the cause of this but more about what users/companies experiences want/expect.

We’ve had companies use PlayCanvas in a large variety of applications and pages. From webviews in messaging clients (WeChat, Facebook, Snapchat, Telegram) to BMW (https://twitter.com/visionaries777/status/1431139063969447938), Royal Opera House (ROH - PLAYCANVAS), virtual expos: Virtual Exhibition: Life During Covid-19, RareRooms (showcasing NFTs) Virtual Exhibition: Life During Covid-19

I’m not even including the wider range of WebGL usage from three.js or babylon.js as well.

8th Wall have done a lot of work in the WebAR sector too, making AR directly available in the browser.

(Sidenote: iOS landscape fullscreen is not available if you have more than one tab)

1 Like

If you look at Grimmy projects, they are doing a lot of work with WebAR via 8th Wall and PlayCanvas for companies.

If one counts all the devices that can execute WebGL (including Android TV’s and consoles that contains a browser), we crush everybody else by having a potential audience of (conservatively estimated) +3 billion users.

It is therefore sad if we cant exchange that in a good manner (right now: the business + users will rather have smaller and more efficient/flawless platforms). I understand your ‘good view towards the future horizon’, where you look upon the latest phone models and OS. But there will still be a major afterdrag of lowtier models and old OS … F.i: 4 years ago I worked on making AR on Samsung 6 phones, and I had to give it up, due to extreme heating that made the apps crash. I suspect this to happen on the newest models on very hot summer days as well (CPUs and GPUs are still being packed very tightly in the devices).
That scenario plus old models is something that the Business in general + Frontend business is very picky about → 95% security of flawless app accesses (old models and/or very hot summer days = 5% flaw accesses) are not good enough for most actors. They expect 99-100% :-/

Maybe we should have a monthly magazine as a new tool for better general WebGL-propagation. The summary of projects you just did, could be handled more in-depth (with heat issues, model/OS accessibility and as many useful sidenotes as possible (f.i.: “(Sidenote: iOS landscape fullscreen is not available if you have more than one tab)”))

“Conclusion: We rate this gameproject … etc”

or

“Business conclusion: Al though the project shows great promise, we don’t recommend this to be used in the Frontend development sector as it … etc”