I m writing a volume renderer for GeForce3 and above card and have these experiences.
- Store gradients in a 3D texture for binding to texunit 1.
- Store intensity in a 3D texture for binding to texunit 0
- For each polygon, specify multi-texture coord from texunit 0 and 1.
- register combiners to calculate shading etc.
I realized that doing the above slows down rendering by half compared to if I store both gradients and intensity together in one 3D texture and not use multitexture.
Is this normal?
Is multitexturing done at a cost?
Or is it that an extra trilinear-interpolation is done when gradients are in a separate texture?