I don't consider the problem (as far as rendering is concerned) that complex of a problem.
Consider the most-likely complex case (rendering wise) of an entrance portal in front of the player, and the exit portal behind the player. First, this would seem like an "infinite loop" problem, while I beg to differ. One, you probably know the rough block of the "portal", which can be seen as a decal (for shits and giggles, we'll just say it's a "64x64 block"). Now this block can consist of a texture that is color keyed (magenta, for example), so then you can just see a huge ol' magenta 64x64 block on the wall. Now you setup different render targets, in this case rendering to textures with a camera and view matrix setup to properly catch everything that it'd "see". You'd render this to texture, and do the same for the other portal. You'd then pass these two textures into a shader that would allow for certain effects depending on the color key it encounters. As you would keep running into areas (in the nested case) of there being more magenta pixels, you could keep looping/scaling/mip-mapping these pixels into oblivion. Eventually, no magenta pixels would remain. There are also more elaborate methods that could be used (such as a dependency graph [http://www.gamasutra.com/features/20030829/vanderbeek_01.shtml] described in GDMag). Worst-case you run into a circular dependency, and there are an infinite number of solutions for solving such a case. The fact that the circular dependency is rendered only adds a minor amount of complexity... remember, games aren't all that special. 99.999999% of the time your "unique" problem has already been solved. I assure you, your graphics card will not blow up if it encountered this situation. For those of you that don't have a subscription, I strongly implore you to pick up GDMag. I've been a subscriber since 1998 and it is worth its weight in gold. _______________________________________________ To unsubscribe, edit your list preferences, or view the list archives, please visit: http://list.valvesoftware.com/mailman/listinfo/hlcoders