Thanks! Yeah, I've been a big fan of the 2D cloud game streaming (though always felt they should dig into co-op/multiplayer more with that). I was originally going to rely on things like Parsec Arcade but they shut it down. What's exciting is that with this, everyone can render their very own uncompressed high-res view, with raytracing.
Cool! I never would have thought that you can stream that much data over networking. This is amazing! Athough I do wonder if doing a level of detail simulation of the fluid would work for multiplayer since most of the actions of a player far away wont ever effect the close actions. This way you would only need to stream the player interaction with the fluid.
Thanks! I hope to get that much smoother soon. Maybe limit the decompression work per frame and spread it out. Also, there's some duplicate voxel management happening in JS that needs to be ported over to C++/Wasm.
Cool idea for sure. My machine wouldn't contribute much, sorry. How would it all stay synced up, and how would the data get to people before it's outdated?
I will probably set up a dedicated server via Hetzner, surprisingly cheap these days. The latency shouldn't be too bad if on the same continent. It would be similar to my previous Parsec experiment: ruclips.net/video/4qtX2OkMN4Q/видео.html Except here I'm streaming voxel data instead of video data.
Thanks! This is the perf for 500k particles, simulation, compression and decompression once per frame. I don’t speed up my recordings and I am working to improve the performance even more
I could use accounts and auth to only allow logged in users to host physics sessions. And maybe some secret obfuscated in the client wasm. On the server side before broadcasting I’ll also check the data for irregularities. Or I might just set up my own cloud server.
@@GrantKot remember that client obsufaction never guarantees protection. If someone targets your project, they will still be able to hack the client anyway
Hey Grant, this project has been a big inspiration to me for about a year now, thank you so much for sharing this online!
loving your devlogs Grant! excited to see this executed in a 3D world finally!
Thanks! Yeah, I've been a big fan of the 2D cloud game streaming (though always felt they should dig into co-op/multiplayer more with that). I was originally going to rely on things like Parsec Arcade but they shut it down. What's exciting is that with this, everyone can render their very own uncompressed high-res view, with raytracing.
Very impressive! Staying tuned :D
Those dev updates are really interesting. Fascinating work
What you are doing is very cool, I hope dynamic water in games with larger worlds will become a reality someday.
You're doing great work, please continue with these updates.
that sounds fucking sick, looking forward!
Looks good!
Cool! I never would have thought that you can stream that much data over networking. This is amazing! Athough I do wonder if doing a level of detail simulation of the fluid would work for multiplayer since most of the actions of a player far away wont ever effect the close actions. This way you would only need to stream the player interaction with the fluid.
Thanks! Yeah, level of detail would make more sense. Would be great to have a shallow water equation sim.
Synchronizing tiles seems to stall the system from time to time but you'll figure it out. Keep it up!
Thanks! I hope to get that much smoother soon. Maybe limit the decompression work per frame and spread it out. Also, there's some duplicate voxel management happening in JS that needs to be ported over to C++/Wasm.
Please add controller support because in mobile the controlls are a bit of a headache
Thanks, I will try to get that in soon, will be a good combo once the streaming physics are working.
Cool idea for sure. My machine wouldn't contribute much, sorry. How would it all stay synced up, and how would the data get to people before it's outdated?
I will probably set up a dedicated server via Hetzner, surprisingly cheap these days. The latency shouldn't be too bad if on the same continent. It would be similar to my previous Parsec experiment: ruclips.net/video/4qtX2OkMN4Q/видео.html Except here I'm streaming voxel data instead of video data.
Wow! What's the performance like?
Thanks! This is the perf for 500k particles, simulation, compression and decompression once per frame. I don’t speed up my recordings and I am working to improve the performance even more
Great! but what if someone uses hacks, they could control the fluid
I could use accounts and auth to only allow logged in users to host physics sessions. And maybe some secret obfuscated in the client wasm. On the server side before broadcasting I’ll also check the data for irregularities. Or I might just set up my own cloud server.
@@GrantKot remember that client obsufaction never guarantees protection. If someone targets your project, they will still be able to hack the client anyway