This is the result of a final project for a class I've taken on visualization. It is an implementation of a single-pass ray casting volume renderer, accelerated with fragment_shader2 GPU instructions.
My initial implementation (left hand side) ray casted the volume's bounding box, sampling at every point within it.
As a final, I optimized the ray casting technique so that only points within a bounding isosurface (based on density) are traversed and sampled, instead of a bounding box. This technique achieved speedups of around 4x, restoring reasonable real-time interaction. The speedup is demonstrated in the back/to/back footage here.
How did you do this?
utube4jhb 2 years ago
awsom , thanx
sobajo 3 years ago