SplittingPixels
10-06-2003, 10:36 AM
"But LightWave doesn't do scanline rendering!!!" you say. Well, actually, yes it *does* have the beginnings of a scanline renderer under the hood, but it's pretty primative in its current incarnation... If you've ever used the VIPER feature in surface editor, you've seen the early steps towards a scanline renderer that not only understands geometry, surfaces, and some degree of lighting, but also has amazing potential in that it understands object "footprints" within a frame.
What's so exciting about identifying object footprints? Why, rendering speed of course! Think about what normally happens when you render a frame : every single pixel in the camera's view gets calculated each and every time. The current VIPER demonstrates that it can determine what part of a frame is occupied by a specific surface, so if you flag the surfaces of all the objects in motion and then combine the footprints from the previous and current frames, you can identify what parts of the current frame need to be re-rendered! :) Think of the possibilities -- for a frame where the camera and lights are stationary, you might be able to inherit a large percentage of the pixels from the previous frame (say 90%), and only recalculate the remaining percentage (10%)... What a speed boost that would offer over traditional rendering methods where every single pixel is calculated!
True, this would not be beneficial in all circumstances, and determining zones for moving shadows offers an additional coding hurdle, but think of the possibilites! Under specific conditions, it would provide a *substantial* speed boost while rendering (and if you don't meet those requirements, you're no worse off as you'd normally render the full frame anyways...) Admittedly VIPER is still very primitive and only useful as a surface preview renderer in its current incarnation, but the fact is that it *does* exist, and it is a fledgeling scanline renderer within LW (something many folks have been begging for.) I'll also remind you that VIPER has been around since 6.0 -- given the time which has passed in which development may have progressed, we can hope that it has become more than just a preview tool... ;)
Cheers
What's so exciting about identifying object footprints? Why, rendering speed of course! Think about what normally happens when you render a frame : every single pixel in the camera's view gets calculated each and every time. The current VIPER demonstrates that it can determine what part of a frame is occupied by a specific surface, so if you flag the surfaces of all the objects in motion and then combine the footprints from the previous and current frames, you can identify what parts of the current frame need to be re-rendered! :) Think of the possibilities -- for a frame where the camera and lights are stationary, you might be able to inherit a large percentage of the pixels from the previous frame (say 90%), and only recalculate the remaining percentage (10%)... What a speed boost that would offer over traditional rendering methods where every single pixel is calculated!
True, this would not be beneficial in all circumstances, and determining zones for moving shadows offers an additional coding hurdle, but think of the possibilites! Under specific conditions, it would provide a *substantial* speed boost while rendering (and if you don't meet those requirements, you're no worse off as you'd normally render the full frame anyways...) Admittedly VIPER is still very primitive and only useful as a surface preview renderer in its current incarnation, but the fact is that it *does* exist, and it is a fledgeling scanline renderer within LW (something many folks have been begging for.) I'll also remind you that VIPER has been around since 6.0 -- given the time which has passed in which development may have progressed, we can hope that it has become more than just a preview tool... ;)
Cheers