We propose a method to accelerate direct volume rendering using programmable graphics hardware (GPU). In the method, texture slices are grouped together to form a texture slab. Rendering non-empty slabs from front to back viewing order generates the resultant image. Considering each pixel of the image as a ray, slab silhouette maps (SSMs) are used to skip empty spaces along the ray direction per pixel basis. Additionally, SSMs contain terminated ray information. The method relies on hardware z-occlusion culling and hardware occlusion queries to accelerate ray traversals. The advantage of this method is that SSMs are created on the fly by the GPU without any pre-processing. The cost of generating the acceleration structure is very small with respect to the total rendering time.