The Mud PuddleHome of Jon "evincarofautumn" Purdy Heuristic Rendering?Yeah, why not? Read on. This idea has been wriggling around in my mind for a while. Say you want a really fast, really simple software renderer (3D, of course). The principal thing you must do is draw triangles. And lots of them, and swiftly. And in many different colours. To do that, of course, a lot of people will tell you to actually draw triangles. By the scanline! Do not listen to these people. With heuristics in mind, it's possible, if not actually rather easy, to figure out the following:
Since it requires the renderer to keep track of a lot of rectangles, an algorithm of this sort is increasingly memory-intensive as models have more and more edge cases. Hence it's best for rendering objects without many holes. Figuring out where the rectangles actually go is no more difficult than drawing a triangle by scanlines. The simplest method that I have found is to subdivide a square bounding box using a quadtree. This has the benefit of being both independent of screen resolution and easy to arbitrarily limit to a maximum number of subdivisions. That and a quadtree class is ridiculously easy to implement, especially when only leaf nodes have to keep track of only a Boolean ("marked" or "unmarked") status. I'll post code (and rewrite this crappy explanation) once I finish writing it. Note that if no one has come up with this specific idea before me (which I'm fairly sure they haven't, even if, by my description, they have), I'll accept credit for it. And my internet keeps disconnecting and reconnecting. It's painful to be on IM like this. Oh, well. Dial-up sucks. At least at RIT I'll have good service. last updated 4 months ago # |
Welcome to my infogami page. If you don't find something interesting, I won't blame you for trying. Hey. If Obama gets elected, we'll have created an Obamanation. XD But if Hillary gets the vote, well then... Hillarity will ensue.
|