Precalculated bumpmapping?

Started by
2 comments, last by Gammastrahler 21 years, 1 month ago
Hi, i´m very new to bump mapping. And i have seen some NVidia demos about it for realtime per-pixel effects with dynamic objects/lightsources. Since i want to use bumpmapping for static geometry in a 3D-Shooter project, and most light sources are also static, would it be possible to prerender all bumpmaps? And what is with the standard lightmaps? Are they still needed or do i use only the bumpmap. How could i implement this technique? thanks Gammastrahler
Advertisement
Bumpmapping only makes sense when you''re also using dynamic lights or you''re doing per-pixel specular.

So, you really can''t precalulate a bumpmap and still call it a bumpmap.

I suppose you could use bumpmaps as a way of augmenting your geometry while you''re building standard lightmaps, but it''s probably not worth the effort - It''s just as easy to have your texture artist draw the static bumpiness right into the base texture.
it would also take up far too much memory to store a precalculated bump map at even 1/10th the resolution of real time bump mapping.
Gammastrahler, like CheeseGrater has pointed, if you really want to implement bumpmaping in your engine, you''ll have to do dynamic lighting. In this case you don''t need lightmaps anymore since the lighting is computed realtime. Note that per pixel dynamic lighting will eat a lot of fillrate compared to the lightmaps.

However, you could change the program that generates the lightmaps so that it can handle bumpmaps. In this case :
- You don''t even change your engine, you still use lightmaps, only nicer ones.
- You need the bumpmaps when you generate the lightmaps, but you don''t need them in the actual game.
- You certainly won''t use OpenGL/Direct3D since I suppose that the lightmap generator uses the CPU to compute them (no realtime here).

So, basically, you could use prerendered bumpmaping but be aware it''s not the same thing as the demo you''ve seen, it''s much more like renderers that handle bumpmaps (3DSMax can do it for instance, if memory deserves).

This topic is closed to new replies.

Advertisement