4 ms·
That was my first question. They mention in the article the high number is for close ups.
by have_faith 7y ago
That was my first question. They mention in the article the high number is for close ups.
- Joeboy 7y agoAlso says: > Every shot in Piper is composed of millions of grains of > sand, each one of them around 5000 polygons. I'm guessing the article is just confused. The important point, I think, is about using real geometry for sand particles rather than the beach being a surface with a displacement map.
- jobigoud 7y agoBut with instancing. So they could have a few dozens of grain types 5K tris each and the total number is from instances, no need to load 5 billion triangles into memory.
- mschaef 7y agoWhat does that look like from a data structure perspective? Each grain has a bounding box and you only look at the geometry for that grain if a ray crosses the box? (I'm way, way out of my wheelhouse here, if it's not already obvious.)
- w0utert 7y agoReduced ad absurdum I thinks that is pretty much how it works. There is an acceleration structure that is traversed for each ray, to reduce the search space for ray-geometry intersections (probably a bounding volume hierarchy of some sorts), and using instancing only a very small subset of the total of all grains of sand actually need to be stored and processed. I imagine the sand is modeled using some particle system where each particle is actually a small scene of sand grain models in itself, with its own BVH etc, and the raytracer somehow reuses whatever happens inside them for every other particle that has the same lighting conditions. It’s probably way way more complicated than that though. Extremely interesting stuff.
- elil17 7y agoThey have some close ups of the sand and it effects light transport