Remix.run Logo
Flux159 4 days ago

> Why would I want to play a 3D game in my fucking browser of all places?

To provide users a way to instantly play a game without having to download all assets at once. Give developers a potential way to avoid app store royalties of up to 30% on desktop or mobile. With wgpu in rust, you can also target WebGPU as a shared 3d runtime that will run across OS's natively rather than having to target Vulkan, Metal, and DirectX.

> Why would I want to run an LLM in the browser, I could just run it natively for better performance?

What about users who don't know how to download a model and run it locally? I would argue this is the vast majority of users in the world. Also, this specific use case is probably not going to be generalized with WebGPU yet due to model sizes, but rather other APIs like the Prompt API in Chrome which will use Gemini Nano embedded into the browser (assume it will eventually get standardized). https://developer.chrome.com/docs/ai/built-in-apis

I agree with you that WASM and WebGPU will be used for adware, targeting, and spyware - but if you don't want to use them, you should disable them in your browser settings - there's definitely value add for other users even if you can't see any benefits.

MindSpunk 4 days ago | parent | next [-]

Browsers will never run games that aren't toys or use very simple assets in a way that doesn't completely suck. High quality assets need gigabytes of data. You either require users to download all the assets upfront (the thing we're trying to avoid) or streaming the assets dynamically.

You end up having to re-implement steam to keep a local copy of the assets on the client device yourself, expect browsers to do the same to manage caching the gigabytes of data transparently, or design your game around a very slow storage device or use tiny assets.

Flash games worked because they fit very nicely into the 'tiny assets' category.

sroussey 3 days ago | parent | next [-]

PWA to cache everything locally?

iknowstuff a day ago | parent | prev [-]

Streaming assets seems reasonable.

stackghost 4 days ago | parent | prev | next [-]

>To provide users a way to instantly play a game without having to download all assets at once

There's a reason QuakeLive didn't catch on and it's because streaming resources to the player makes for awful UX.

>What about users who don't know how to download a model and run it locally?

Those users also don't know how to compile MS Word from source but they have been getting along just fine with installers.

dartos 4 days ago | parent [-]

The ability to paste a URL into a browser and have that be everything you need to do to play a game is pretty compelling for many kinds of games.

That’s what made flash games so big back in the day.

pjmlp 4 days ago | parent [-]

URLs can also be mapped into native applications, it is a matter of the right OS.

https://developer.android.com/training/app-links

dartos 4 days ago | parent [-]

That’s a different flow though.

Pasting URL into browser, then having access to game

Vs

Pasting url in browser Get link to install app Install app Navigate to the original url again.

Technical capabilities don’t always change user experience

pjmlp 4 days ago | parent [-]

Application streaming, no need for installation before using.

int0x29 3 days ago | parent [-]

That needs a hell of a lot of sandboxing before I get anywhere near it. Which sounds like a good use for WASM and WebGPU.

skydhash 4 days ago | parent | prev | next [-]

> To provide users a way to instantly play a game without having to download all assets at once

No need for the web in that case, which is inefficient. You can do with like those 1MB installers and stream those assets.

> but if you don't want to use them, you should disable them in your browser settings

Which the majority won't. People don't even go in their phone settings, apart from connecting to WiFi and changing their wallpaper.

zztop44 4 days ago | parent [-]

I don’t want to download a random executable from some unknown source. However, I trust the browser sandbox.

skydhash 4 days ago | parent | next [-]

> I don’t want to download a random executable from some unknown source

Why would you do that?

---

There's few applications that warrant having direct access to the GPU and other devices. And for those, a native app would be a much efficient way (for the user).

text0404 4 days ago | parent [-]

yeah but users don't care about technical efficiency, they care about having seamless experiences that aren't interrupted by long downloads, app/context switching, and loading screens.

skydhash 4 days ago | parent [-]

Which the web doesn't provide. Try opening Figma and Sketch at the same time or Mail.app and Gmail. Google Doc is closer to Wordpad than Libreoffice.

account42 18 hours ago | parent | prev [-]

I however don't trust the browser sandbox when it is continuously expanded with bloat that normal websites don't need.

pjmlp 4 days ago | parent | prev [-]

Application streaming sorts that out, with much better tooling for 3D development.