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

And what do you subdivide it to? How do you trace rays against it? How do you map textures on to it? How do you visualize it in real time? How do you work with it in a different program?


You don't subdivide. It's a mathematical intersection.


Right, but the rest of the questions remain, along with the usefulness of CSG in real scenarios. CSG can be interesting, but it does end up being very impractical for anything except for some specific effects that are then turned into polygons. It is technically possible to create sdfs and trace against those I'm sure, but csg is rarely used and baking it to sdf instead of polygons even more so.


POV-Ray disagrees. It renders CSG. It never converts to polygons. So stop saying what a 30 year old program does is "impossible".


I didn't say it was impossible, I'm talking about why these other geometry types aren't typically used instead of polygons.

I asked 'how do you trace rays against it' because to do it directly is not fast, yet you are left with all the problems I stated that you skipped over. Think about what it would take to directly trace lots of overlapping primitives. What you gain from tracing it directly is minimal and what you give up is substantial.


Look at the POV-Ray source code. It does it. Again, I am literally telling you how the software under discussion works. and you keep insisting it is not so. It's open source!


I'm guessing at this point you are purposely ignoring what I'm saying, but again, I'm explaining why it isn't used in production 3D very often. I know how to collide rays with csg, I'm trying to get you to think about how that needs to happen so you understand why it is slow. If you have a surface made up of lots of overlapping primitive shapes, what do you think the performance will be like when you need to intersect thousands of rays and figure out shading information for them?

Beyond that, again, you have to confront textures, motion blur, visualization and of course the elephant in the room, the fact that csg is not a good tool for arbitrary modeling to say the least. Think about these things before you reply "it's literally possible" again. Technically possible and useful for production animation are two very different things.


POV-Ray is not yet open source, although the remaining authors hope to be able to solve that problem soon. (Its license contains a field-of-use restriction.) Also, I don't think BubRoss was claiming that rendering CSG directly was impossible, just that it's a bad tradeoff.




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

Search: