A warning about multipass rendering

Blitz3D Forums/Blitz3D Programming/A warning about multipass rendering

JoshK(Posted 2004) [#1]
Contrary to what Simon said, the RenderWorld() command does create a significant amount of overhead. With just 20 boxes, rendering each face individually became unusably slow. 15 plain cubes render at 30 fps individually.

I had been using this method until now to draw multi-layered materials. Now I have to scrap my whole rendering routine and start over.

Damn...this also means hardware lighting can't be used on staticmeshes, because the only way to control the lighting is to hide and show the lights and render each instance of the mesh in a separate pass. Of course, vertex lighting can't be used on static meshes either, because they all reference the same surfaces!!!


JoshK(Posted 2004) [#2]
...which all brings me back to the point of why I started
multi-pass rendering in the first place: Why not have a way to tell the renderer which lights effect which entities? That way we could run a visibility check or whatever and just enable the closest 8 lights to any given entity.

An even simpler way that would require a single command would be a LightOcclusion(light,mode) command. This could just run a visiblity check internally between a light and an entity before using the DX light on it when rendering.


jfk EO-11110(Posted 2004) [#3]
I never had such problems. Well I never used multiple rendering passes. And I still don't understand how you could use a light for occlusion - I guess in the end the visibility check works the same as with any other entity, eg. the camera. No?