DiRT – Dust in Real-Time CS 426 Senior Projects Team 3 Advisors Marcos Bagby Ryan Romero Brett Sulprizio Hiroko Uda Sergiu Dascalu Brian Westphal Fredrick Harris, Jr. Joseph Jaquish
Overview Project Description Practical Applications Objectives & Development Design Demo Future Work Questions/Comments
DiRT (Dust in Real-Time) is … Dust in Real-time (DiRT) is a 3D dust visualization program and interactive computer benchmarking tool designed to model real world dust dynamics in a virtual environment in real-time. The interactive benchmarking tool allows users to track and gauge the performance of their system’s ability to render the dust by issuing real-time system and environment related reports. The system reports update in accordance with the users play. Similar to a video game, users will be able to “play” during the simulation by way of a simple vehicle simulator. This paper presents details of DiRT’s UML requirements specification, software architecture specifics, high and low-level design details, user interface principles and snapshots.
Practical Applications Military The modeling of dust for use in simulations may help modern combat experts plan for or pre-empt the affects of dust caused by vehicles or the atmosphere. Video Games Low resource gaming engines. CAVE Project Immersive virtual environment.
Main Objectives Simulate/Model Dust Realistic Real-time
Development Three Methods Volumetric Fog Diffuse Reflection (future work) Particle Systems (future work)
Method: Volumetric Fog Large affected area divided into small volumes. Different Densities Volumes will translate, morph, etc… Translation, morphing specified by airflow parameters. Stencil Buffer and Alpha Blending with multipass rendering creates the illusion.
Design: System Architecture
Design
Demo
Future Work Diffuse Reflection and Particle System methods Reflection probably most difficult to implement. Less resource intensive than a particle engine. Particle probably easiest to implement, but very resource intensive. Implement for CAVE use. Voxel Processing Method
Any Questions/Comments?