Polygons, voxels, SDFs... what will our geometry be made of in the future?


Ok, not the most appealing environment and it's quite monotonous, but holy crap! It's amazing how you can just copy/paste the same scultpure ad infinitum with no performance penalties. With a more refined artistic vision, this could be used to achieve even more impressive results, including microdetail.
 
Lin has finally released clips and information about his voxel water technology.


John Lin said:
It took a bit longer than expected, but the fluid simulation design from a few months ago has been implemented in our voxel project. It uses the same cell/particle hybrid method and is therefore fully volumetric with no height range limit beyond the 0-4095 y world boundary! It will flow through buildings, fall down into caves, flow over and under cliffs, fill up containers and lakebeds, and navigate through tunnels. The design has been adapted to run sparsely and inline with the world generation. The entire pipeline has also had its design improved to be 99% multithreaded, with a 1% critical section that has the smallest execution time. In this video, 4 CPU threads were used and the simulation time never exceeded 8ms.

Saving to/loading from disk, generating it naturally, spawning and controlling it, and not pouring into unloaded areas are implemented. Currently it only interacts with terrain and buildings as seen in the video, but player and object interactions will come soon. Some improvements to be made include the sound calculations, rendering and supplemental particles.

The video used faucets for the waterfalls that will run indefinitely (and eventually fill up the whole world), because there's no evaporative water cycle. With water being finite, waterfalls spawning from a body of water will eventually run out. I still don't have a good idea to solve this, but I'm definitely open to any ideas.

As always, thanks for all your support and patience! ☀️❤️

EDIT #1: Previous video and information:


John Lin said:
This was a research project that aimed to find a real-time realistic fluid simulation that was able to handle moderately complex scenes without taxing the GPU horribly or wiping out the entire CPU. It's a hybrid lagrangian-eulerian method based on the work by "Hu, Yuanming and Fang, Yu and Ge, Ziheng and Qu, Ziyin and Zhu, Yixin and Pradhana, Andre and Jiang, Chenfanfu" (2018). Special thanks to Grant Kot for his epic fluid simulations, for without him I never would've believed CPU fluid simulation was possible and tore my hair out trying to figure out how he made his stuff look so awesome. Give him a follow for even cooler water stuff: twitter.com/kotsoft

The entire core of the simulation, as well as the CPU-GPU transfers (which, sadly, actually have a big impact on frame times) is executed on the same main thread and is mostly accelerated using AVX2. The GPU is of course used to do all of the particle & scene rendering, and if it used multithreading the rendering could definitely appear smoother. It uses C++ and Vulkan, and was ran on a base i7-8700K and 2080 Ti.

Spoilers: This is going in the game I've been showcasing, hence not wanting to bottleneck the entire system. Expect to see this in a prettier environment soon! ;)

EDIT #2:


John Lin said:
One-way coupling between rigid bodies and water has been implemented. Buoyancy is simulated volumetrically, and the fluid velocity field is sampled where the objects collide with it. Because the coupling is just fluid-on-objects, air does not factor into water displacement and the splashes seen are just visual, so moving objects themselves will not fill up (though anything built in the world will as shown in the previous video). I hope to implement two-way at some point in the future. Neither butterflies nor trees get affected by the water yet.

Also briefly showcased is the WIP object building system, which has the same fidelity as normal building in the world. In this case these objects were basic cylinders, two boats and a raft. There's no limit to what you can design, and the system simulates it right out of the box. In the next video I'll showcase how rigid body constraints can be attached to these objects to create a really interactive scene.

EDIT #3:


John Lin said:
This video is showcasing creating dynamic rigid body objects that update in real time, react to water, can be destroyed, and can have constraints attached to them. A nice UI will help make this easier to work with. I considered having a separate in-game window where you don't have to deal with physics while building objects, but in-game building would encourage users to build construction rooms with benches and ropes to attach to objects. I feel it'll get met with mixed reactions at first, but hopefully grow on people as the system matures.

This also showcases a motor concept test where a water wheel is hooked up to a gate. Of course this gate and the water wheels are simple objects that I threw together, but you can create whatever you want. The text, although a joke, was meant to show that you can modify stuff down to the single voxel. Mass distribution and surface area greatly affect the behavior of the wheels as well, as can be seen in the later parts of the video.

The building I enter is something I'm working on, and hope to showcase it next video - which may just be the one we've all been waiting for.
 
Last edited:
Same problem as I see in most of these vidoes...the leaves are "dead" (static)...which kills the suspension of disbelief in my brain.
Just asking, and not sarcastically... Does the same happen to you in any other videogame, where the leaves are equally static (being a texture, in those cases)?
 
Just asking, and not sarcastically... Does the same happen to you in any other videogame, where the leaves are equally static (being a texture, in those cases)?

Sadly yes...TW3 has made it very hard for me to play games with dead foilage...it is like AA or Raytracing...once you see it done right/better...it is impossible to go back.
 
Sadly yes...TW3 has made it very hard for me to play games with dead foilage...it is like AA or Raytracing...once you see it done right/better...it is impossible to go back.
Yes, it's a pity that we're getting better at so many things, but some other things seem to just stagnate, like fully interactable environments.

In this case, I guess a solution could be add just a few movable leaves, so that an effect is achieved.

At any rate, I like that the ground doesn't look flat and that you can appreciate true geometric detail there. Also, the sense of volume and depth in the bushes is great, they're not just a bunch of textured cards.
 
  • Like
Reactions: HLJ
Yes, it's a pity that we're getting better at so many things, but some other things seem to just stagnate, like fully interactable environments.

In this case, I guess a solution could be add just a few movable leaves, so that an effect is achieved.

At any rate, I like that the ground doesn't look flat and that you can appreciate true geometric detail there. Also, the sense of volume and depth in the bushes is great, they're not just a bunch of textured cards.

I get perhaps more "punished" by such things as I am a veteran and foliage is something I spent years observing...so dead static foliage really annoy my grey ones.
 
Look at this!


It's so amazing. Hundreds or thousands of sunflowers, hyperdense models (real geometry dew on the flowers, lol), great lighting... He even "faked" some kind of reflections on the sunglasses.

Great ligthing?
I think the lighting looks very "bloomed" and not very realistic at all.
 
Great ligthing?
I think the lighting looks very "bloomed" and not very realistic at all.
The bloomy light is a stylistic choice. And IMO the lighting does look great, indeed, no matter if it's necessarily realistic or not (which I didn't even mentioned in the first place).
 
The bloomy light is a stylistic choice. And IMO the lighting does look great, indeed, no matter if it's necessarily realistic or not (which I didn't even mentioned in the first place).

I still don't find it "great"...but then again raytracing has spoiled me /shrugs
 
Look at this!
Wow, how lovely.
I still think it's that 'puppets on ropes' physics which limits Dreams the most. You can make nice kids / casual stuff, but no serious action game, sadly.
Also in this video the TAA lag is very noticeable, which was mentioned as an issue in the paper.
Very impressive otherwise.

um... can somebody explain me what's the motivation / application here? I really don't get it yet. Compression? Detail? Rendering?
 
Wow, how lovely.
I still think it's that 'puppets on ropes' physics which limits Dreams the most. You can make nice kids / casual stuff, but no serious action game, sadly.
Also in this video the TAA lag is very noticeable, which was mentioned as an issue in the paper.
Very impressive otherwise.


um... can somebody explain me what's the motivation / application here? I really don't get it yet. Compression? Detail? Rendering?

Compression and better rendering performance are at least possible. Produced output is differentiable and also good for training other neural nets. If you go through twitter hooplaa related to this paper that would give good idea of one neural representation approach.

There is ton of twitter messages from casualeffects(click the the link). Also the authors of the paper have been very active on twitter.

 
Compression and better rendering performance are at least possible. Produced output is differentiable and also good for training other neural nets. If you go through twitter hooplaa related to this paper that would give good idea of one neural representation approach.

There is ton of twitter messages from casualeffects(click the the link). Also the authors of the paper have been very active on twitter.

you're gonna wish you had tensor cores for this.
 
It's just amazing how far rendering has come during my lifetime. I remember learning in early 90's to draw simple geometry, then flat shading, camera movement, gouraud, texture mapping, bump mapping. Implementing it all in purely motorola 680x0 assembler. And now we have freaking neural nets and what have you. Time has truly passed what I know about 3d graphics.
 
Back
Top