Most of my thinking was just that if the left and right clip planes were freely positionable rather than hardwired to be at x = ±z then portal rendering would be extremely cheap. So if you're in a convex room A, which has one 'wall' W that is actually a doorway to convex room B then you can draw all of A, adjust the clip planes so that you're only allowing drawing to the left/right extent of W, then draw room B. And so on. With vertical fixed height walls you can get away with only supporting movable vertical clip planes.
Of course, it'll look pretty jumpy if increasing precision in my matrix calculation stuff doesn't have a strong enough effect. But that's scheduled for after I've made some multiplication improvements. On Fri, Jul 11, 2008 at 10:58 AM, Colin Piggot <[EMAIL PROTECTED]> wrote: > Thomas Harte wrote: >> Oh, but it did also occur to me that I could create a convex-sector >> and vertical portal Wolfenstein-type thing for just an extra couple of >> multiplies per vertex. >> .... >> Then maybe use coherence stuff to produce a filled display, >> so you're mostly just extending or shrinking already filled areas of >> the screen frame-to-frame rather than having to carry the costs of a >> full redraw. Which I think you said was what Chrome was up to? > > Yes, Chrome was just going to extend or shrink what was already drawn there, > and redraw complete strips only when there had been a sprite drawn over the > top. > > It was something I was thinking of - your maths could be used for that sort > of style of 3D engine, and sounds like you have all the bases covered > already! Essentially, just hold a map with the 2D wall positions, your maths > code would then calculate which walls were visible and where, then just draw > the walls - either vector or filled. > > Colin > ===== > Quazar : Hardware, Software, Spares and Repairs for the SAM Coupe > 1995-2008 - Celebrating 14 Years of developing for the SAM Coupe > Website: http://www.samcoupe.com/ > >