Advanced Compositing, Texturing and Volume Rendering
CSE 788.14A Special Topics Course
Vital Stats
- Last Offered: Spring 2004
- Instructor / Facilitator: Prof. Roger A. Crawfis
- Class Lectures: DL266 MW 9:30-10:18
- Class Project time: CL 112D F 9:30-10:18
- Project 1: Comparative study of existing volume renderers
- Project 2: Selected projects in Compositing, Texturing or visualization
middleware
- Project 3: Entire class project on building a 3D texture-based volume renderer
Overview
Realistic renderings and even good black-and-white illustrations make heavy
usage of patterns and textures. Quite often, these textures attempt to mimic
the characteristics of an underlying three-dimensional material, rich in intricate
details. In computer graphics, materials such as marble, knotty pine wood, and
granite can be modeled using a 3D texture and 3D sampling algorithms. In this
course, we will examine the features of texture-mapping available in current
hardware, and explore techniques for creating procedural textures for three-dimensional
objects. Texture-mapping is also used to resample and composite many semi-transparent
geometric proxies for volume rendering algorithms. We will examine state-of-the-art
and efficient implementations for 2D and 3D texture-based volume rendering on
modern day GPU’s, such as the Department’s ATI Radeon 9600 Pro’s.
The course will offer a good mix of theory and practical software development.
Expertise in OpenGL is a prerequisite, CIS 781 would be preferred, but CIS 581/681
is acceptable. However, we will also examine issues in direct-manipulation and
user-interfaces for volume rendering. In particular, we will look at the .NET
framework and how to coordinate disparate control devices remotely to a rendering
engine. As such, anyone familiar in these areas should contact me and we can
discuss expectations. Anyone interested in high-performance graphics, advanced
pixel and vertex shaders, novel techniques and uses for texture-mapping, and
volume rendering should attend. The emphasis will be on scientific visualization,
but the techniques will apply equally to game design and Hollywood special effects.
The course format we will be mainly project development, student research and
presentations, with a few lectures. A primary goal of this course is the design
and implementation of a modern Volume Renderer or Compositing Engine.
Topics
- Compositing
- Binary masks
- Screen-door compositing
- Alpha compositing
- Compositing versus refraction
- Pixel Masks and Dithering or Halftoning
- Specular highlights
- Advanced GPU Texture Capabilities
- Applications for Visualization
- Psuedo-coloring
- Adding curvature or three-dimensional cues to surfaces
- Clipping and masks
- Mip-mapping
- Averaged filtering
- Controlling for added details or blurring
- Multi-texturing
- Combining data mappers for bivariate coloring
- Controlling the application of psuedo-coloring
- Surface representations
- Calculating gradients or normals
- Dependent Textures
- Environment Mapping
- Render to Texture
- Three-dimensional textures
- Fragment Programming
- Assembler, OpenGL ARB
- Cg or HLSL
- Other Issues
- Subtexture loads
- Texture Matrix
- Texture Binding
- Anisotropic Filtering
- Texture Mapping for iso-contour surfaces
- Technology Based
- Procedural Textures
- Texture Synthesis
- Separable 3D textures
- 3D texture mapping
- Effect Based
- Silloutte Rendering
- Semi-transparent surfaces
- Mesh renderings
- Partial coverage surfaces
- Principal Curvatures
- Visibility Shading
- Volume Rendering
- Image Warping and Compositing
- Volume Rendering Equation and Integration
- Other volume integration models
- Slice-based Volume Rendering
- Function Reconstruction
- Specifying the proxy geometry
- Sorting and compositing
- Rasterizing the proxy geometry
- Texture coordinates
- Fragment shaders
- Normals, function values, etc.
- Slice-based Operations / Shaders
- Normal Estimation
- Shadow generation
- Multi-variate representations
- Warping the resulting slice or image
- Compositing of the slices
- Segmentation
- Contouring
- Lighting and shading
- Post-classification
- Occlusion testing
- Advanced Shaders
- Non-Photorealistic (NPR) shading
- Vector Field or FLow Visualization
- Mixed Modality rendering
- View-Dependent Shaders
Reference Materials
Slides
Lab Assignments
Lab1: Pick one of the options below (Preliminary results due 4-12-2004,
final 4-16-2004).
- Sprite Engine - Spatial Partitioning
and Compositing (groups of at most 2)
- Rendering Glass - Studies in Specular
Highlights, Textures, and Blending (individual projects)
Students
Last Modified by Roger Crawfis,
April 26, 2004