Hacker Newsnew | past | comments | ask | show | jobs | submitlogin

From the paper: "We use the rasterizer as a potentially-visible set optimization to iterate only over pixels for which rays might intersect a voxel, and then execute a small ray tracer in the pixel shader. That is, we “splat” billboards that give coarse visibility and compute exact visibility in a pixel shader. This works for any pinhole perspective projection, including eye rays and shadow rays, so we use it for the shadow map rendering pass as well"

Neat - I used a similar technique [1] in the last iteration of Voxel Quest, but I only rasterized single points/pixels then raytraced them into filled cubes (was not efficient other than on fill rate). However I did not invent the technique (I'm not sure who did, but I first got the idea from talking to Florian Boesch [2])

[1] https://twitter.com/gavanw/status/717265068086308865 [2] http://codeflow.org



> We use the rasterizer as a potentially-visible set optimization to iterate only over pixels for which rays might intersect a voxel, and then execute a small ray tracer in the pixel shader.

I was just thinking about doing this last weekend (in the context of drawing exact reflections off reflective surfaces defined by arbitrary meshes). Nice to see it actually works, at least for voxels!

The fact that raytracing (onto a 2D plane) and rasterization are essentially isomorphic to one another is a powerful observation.


> The fact that raytracing (onto a 2D plane) and rasterization are essentially isomorphic to one another is a powerful observation.

Hasn't this been a pretty well-known perspective (no pun intended) for a couple of decades now?


Of course, but it's only relatively recently that we've had the graphics APIs to make full use of that observation.


<notices username>

Will this somehow turn into faster CSS and/or SVG render times for Firefox? :)


I really liked the concept of Voxel Quest. did you stop the project?

recently I saw two posts related to volume rendering, this and dreamworks' VDB. I immediately thought about voxel quest. I liked it supporting smooth surfaces, not like minecraft.


Still working on it actively, although in the past two years I also dabbled with two other side projects (a node js / web gl / electron side-scroller game and a compiler). Progress is very slow due to real-life constraints but at least steady now. I will be presenting the newest progress soon. :)


Wow, I am really happy to hear that! I have been following Voxel Quest for a few years now, and I was really sad when you stopped working on the project. Looking forward to see what are your new developments!


As an original KS backer, that is awesome news to hear! You produced a wonderful code base and I learned a ton from your blog posts and streams. Any thoughts of streaming/blogging about the progress in the future?


I will definitely blog soon, may stream soon as well although it would be more of a coding stream than anything else.




Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: