48 comments

[ 3.1 ms ] story [ 94.9 ms ] thread
Google gave them a large gift by refunding everyone, but even still I can't imagine trust for a new cloud gaming provider being super high. If Google hadn't though, I imagine the concept would be dead in the water outside of offerings like nvideas where it is just normal steam games.
> I can't imagine trust for a new cloud gaming provider being super high

The target audience for Netflix shouldn't know they're playing a cloud game. Netflix is too big to cater to power users, casual gamers are a much much bigger group.

I think there's some hope. Netflix has good expertise in streaming infrastructure and if they play to cloud gaming's strength like turn-based games, they have a chance to last longer than Stadia (RIP).

It's actually scary how badly the industry wants cloud gaming to happen. They attempt again and again, even in the face of over a decade of failures that include Google.
Technical issues didn't doom Stadia. Being part of Google doomed Stadia.

Stadia was only going to last as long as the Google promotion cycle.

It's true, not all of the services died due to technical issues.
GForceNow and XBox Cloud are doing ok, Stadia problems where managemnt related more than anything else, how they forced rewrites, how they don't know how to talk to game devs (ads KPIs instead of game tech), and their whole promotion cycle.
In theory there is no real impediment to largely indistinguishable cloud gaming platforms using edge datacenters. Of course, Microsoft's ecosystem has resulted in depence on battlestations over tablets and laptops for gamers. Programmers depend on non-system libraries largely these days.
It solves so many problems for them. No piracy, no second-hand sales, no public libraries, no cheating, and perfect player stats. They can take the game away whenever they want, and make you pay for it again in the future.
Let’s say it together, slowly:

Cloud gaming… Is not going to take off… Until latency is unnoticeable by users.

Even turn-based and other game types that don’t require twitch reactions aren’t going to be enjoyable with input latency that is obvious to the user.

I sincerely believe that cloud gaming engines are going to have to be developed, such that the entire video frames aren’t being pulled from the cloud, and peripheral input is a first class citizen on fast networks like PON and 5G.

I think it's much more likely that P2P-hosted gaming would succeed, and even that would probably fail. If I could rent out time on my gaming PC or console to my neighbors, they'd be able to play with low enough latency they would probably never notice it. (There's also probably no money in it.)
Yep. 100%.

Doesn't matter how good the graphics or pricing is, if there's a delay between inputs you've certainly ruled out almost every multiplayer game and most single player games.

Meanwhile, on a cloud gaming service that has already taken off:

A native Xbox Series X test running at 60Hz gets an 85ms average - from a trigger pull to the first flash of gunfire. Xbox is far off a native PC result, which comes in at just 49ms. And the big surprise is that GeForce Now using the PC app beats a local Xbox Series X in latency, coming in at 81.7ms - while a Shield test is comparable to Xbox at 86ms.

https://www.eurogamer.net/digitalfoundry-2022-geforce-now-rt...

It will never cease to amaze me how consistently far behind HN’s user base is on this topic, the average 20 something service worker will watch a movie like Dune on an illegal streaming site through their cracked phone screen in 720p, but we’re actually entertaining the idea non-PC native latency is a requirement for playing video games without spending >$500-$3k.

The market for these services is slightly larger and more diverse than the folks currently running 4K@144hz setups.

(comment deleted)
This is a really good way to describe the argument for cloud gaming! Easy to forget that space is large
(comment deleted)
> It will never cease to amaze me how consistently far behind HN’s user base is on this topic

You will see the same bias when talking about game development, it is all about FOSS and portable APIs over here, when driking bears at GDC(E) it is all about IP, publisher deals, raw platform features, and who cares about the portability versus getting that deal that puts one on the spotlight.

The communities couldn't be further appart in culture.

It's already unnoticeable by the average human, though. Not everyone plays CS:GO at Platinum. I went from using a PS4 to Stadia (I know....) and latency was not a big deal for me at all.
Another turn off is the fact that like other streaming platforms you lose the sense of control over your media. You'll own nothing, be a renter, and forced to be happy and put up with it. You are essentially renting a game on someone else's platform therefore you will always play by their rules and policies, no matter how awful they may be.
Planimeter founder here. I remember doing back of the napkin calculations on frame time and latency years ago and thinking that the fundamental constraints game developers face could not be overcome. The closest you could get would be to have edge nodes everywhere, and even then, you couldn't do it.

That is to say, there is no future in this universe where real-time, predicted gameplay can currently fit within 16ms (60 FPS) let alone 6ms (144 FPS).

You blow the budget immediately. Today's implementations lag several frames (overbudget). For myself and other game developers I work with, that's just unacceptable, and I don't know anyone right now who is considering software-level or gameplay-level accommodations for streaming the game over a service.

Take an empty game (update nothing, draw nothing) and send black over the wire. You blow the budget.

Let's not dice words: cloud gaming is the cloud industry's perpetual motion machine.

> Take an empty game (update nothing, draw nothing) and send black over the wire. You blow the budget.

You say that, but as a user I wouldn’t notice the difference in this game played on cloud versus locally.

Speak for yourself. I've tried every iteration of cloud gaming and the frame lag is painfully obvious to me. Maybe it's because I've been gaming on a PC for 28 years.
This dichotomy of player opinions seems to be present any time I see a discussion about Stadia or cloud gaming. I haven't tried it myself so I don't have a truly informed opinion, but just based on technical factors I'm extremely skeptical.

However there does seem to be legitimate portion of the audience that either can't tell or simply doesn't care about frame lag/latency issues. I would guess that group is relatively small though. Also as PC and console hardware continues to improve and 4k+/144hz+ gaming becomes more commonplace, cloud gaming is just going to be left in the dust.

Whenever I've advised VCs on cloud gaming tech, I always point out that you can have the beefiest most expensive hardware at the edge, but you'll never be faster than a one meter HDMI/VGA/RCA cable. It's just physics.

Cloud gaming will work great when we have FTL transmission of data or possibly a datacenter in every 7-11/Walmart.

Well, they did speak for themself.
Absolutely. There are certainly classes of games where several frames of input lag don't matter, but look at the big AAA titles, look at the popularity of challenging action games like Elden Ring, of multiplayer shooters and MOBAs.

It is, at best, a niche service.

Isn't Elden Ring the kind of game where you start an animated attack then basically wait for it to finish? So the game locks in your moves? Meaning some lag may be less noticeable?
It locks you after you start the animation, but the key here is when you start the animation.

If you see someone is going to attack you, you want to dodge right away, wait for the animation to finish and attack after. With cloud gaming you see someone is going to attack you, press dodge, get attacked, you die.

Unless you compensate. Receiveing a button press means the button was pressed <latency> ago. Rewind simulation to that moment, apply input to game state, replay to current moment, send result.

Of course, single-player games don't usually do this, because it's very complicated.

You are sort of comparing apples to oranges. Like consider a beefy gaming computer, but the mouse is some junk with an input latency of 10ms. Can this computer do 144fps? It most certainly can. Despite the input latency, 144 frames are rendered every second, and 144 frames are displayed on the monitor every second. Movement and animations will be butter smooth. For the player the latency is frustrating but consider the friend looking over his shoulder. He can't tell. All he knows is that there are in fact 144 frames per second.

So you gotta ask yourself, well when does this make sense? Does it make sense in a twitch shooter? It doesn't. Does it make sense in a popular mmorpg that runs with a tickrate of 600ms? Yes. Does it make sense in a RTS? Probably, except at maybe the highest levels. Does it make sense in a train simulator? Yes.

I think it works if you do it over a generation (of people). Never give a kid less than 50ms of latency and they won’t even realize they’re missing out.

The whole industry will attack the goal from multiple angles and make it happen. I think making GPU ownership expensive to improve the value proposition of streaming services is one of the goals.

On paper I think it should be a total failure. In reality, I tried the RTX 3080 tier of GeForce Now and I couldn’t notice the input latency playing Last Epoch. If triple buffering was accepted, 3 frames of latency for streaming will be too, won’t it?

I hope it fails because never owning anything sucks, but I think it’ll be extremely successful.

Triple buffering does not inherently introduce any latency. It's a technique of using more memory to smooth out synchronization issues.

Single buffering: You're drawing pixels directly on screen. Problem: Drawing isn't instant across whole screen, so human eye sees a blend of old and new image (and since screens draw top to bottom, this produces a horizontal "tear" somewhere, thus "screen tearing").

Double buffering: You're drawing pixels on a hidden screen while the previous image is displayed, then flip screens. This flip action is so fast it's practically instant, so tearing is solved. However, screens can only flip at set intervals (refresh rate). Problem: What if your drawing finishes even a little bit late, just after refresh rate sync? Now your program has to wait for the next opportunity to flip, which just makes everything hang.

Triple buffering: 3 is the magic number to fix all these problems. You always have two virtual screens to flip between, and a third one you can draw to regardless of flipping.

But isn’t the drawn screen always two frames (32 ms) behind the game loop’s current frame?
No.

If the game renders on time, what you see on screen is always the latest completed image that was ready at previous vsync.

With two buffers, if you render too long and miss vsync and then call flip() which waits until the next vsync, you're wasting the frame waiting (because the system can only swap buffers at vsync, to prevent tearing).

The third buffer only exists so that the game can start working on the next frame, while two of the buffers are "locked" (one on screen, other ready for display, third available).

Latency perception is highly game dependent.

I worked on the netcode for EA games at one point in my life.

The highly popular battle royal and competitive shooters will never go cloud.

>Never give a kid less than 50ms of latency and they won’t even realize they’re missing out.

The majority of the people now think 24 frames a second looks natural and 60fps looks fake. They're twisted by their malevolent environment into a wrong and unnatural state, like elves into orcs.

Well, that may be true with having to send the entire payload over a distance of space-time. However, if AI-based rendering could sufficiently predict the next frame, then you can just simulate the next frame without lag. Given it can predict enough frames in the future in relation to compute requirements, then all renders are local-only with "online synchronization" - at least, this will probably be how we do long-distance "calling" when we are a multi-solar system species; unless we find a way to break the speed of light limit. In a way everyone you talk to really would be a simulation; and they'd "sync" up to new data every so often for alignment.
> However, if AI-based rendering could sufficiently predict the next frame, then you can just simulate the next frame without lag.

How would you predict / simulate when an opponent jumps or crouches? And how much processing power would AI rendering take? I don’t know anything about AI.

I think the idea is to run the client side on a potato.

I'm not convinced that 16ms or 6ms is the right budget to talk about. Sure, if you want someone to see the picture, make a decision and reflect it back in the next picture, that would be the budget. But take a comparison to telephony, the ITU says the budget for unnoticeable latency is 150ms. So I can talk to you on the phone with 150ms latency and not even notice. Now, I think gaming is probably lower than 150 because the timing of speech is fairly slow compared to twitch shooters, but I don't think it's 6ms. You might be right it's still unachievable (and I agree, the only viable solution might be to boil the ocean by sticking data centres on the end of every street and create a new guaranteed low latency protocol that takes precedence over all other TCP traffic), but I'm not as certain.
Don't forget about the baseline input latency that even local games experience. The best case scenario is PC, which would add in the realm of 10-20ms of input latency to your network latency. TVs (which are the target for this stuff) have hilariously large input latency.

You're teetering on the budget before you even hit the network.

(comment deleted)
I have two thoughts on this:

1. This is all about control over users. There won't be mods in the cloud.

2. The lag issue is going to be very hard to solve in the US, where consistently fast internet is not available to a lot of people.

Why don't they buy Stadia?
Their infrastructure may be too dependent on Google Cloud platform services for it to be worthwhile.
The company that is actually going to crack cloud gaming, and do so without really trying is valve.

they already have all the games, remote play together, steam link. at some point they will offer cloud machines you can rent to run your games.

I highly doubt that, the biggest hurdle to solve in cloud gaming is having a widespread network with edge points close to anybody who wants to play cloud games. Valve has nothing even close to that, compared to Google, Amazon or Netflix.
You don't think putting out a triple A 80 Gb game on release day needs a robust distribution infrastructure?

Yeah yeah, I know, bulk vs low latancy, but it is there.

None of the others have compute at the edge. All the compute is in the datacenter, the edge just has distribution.

Does anyone actually want Netflix Games ? I could see Zygna type games doing well with the netflix audience. But if they want the call of duty, fortnight, minecraft audience. I foresee them having a very hard time. At least to me those games were lightning in a bottle. Many clones but few can match their unrivaled success.