Download Presentation - Department of Computer Science and Engineering

Survey
yes no Was this document useful for you?
   Thank you for your participation!

* Your assessment is very important for improving the workof artificial intelligence, which forms the content of this project

Document related concepts
no text concepts found
Transcript
Computer Science
Final Year Project
2002/2003
Firework Studio
Project Team ( BR1 ):
Advisor :
Chan Wai Wa ( Raymond )
Cheng Fun Hop ( Brian )
Ng Yat Wah ( Fat )
Dr. Michael S. Brown
Overview of Presentation
•
•
•
•
•
Introduction
Design & Implementation
Results
Conclusion
Q&A
Introduction
• Project background
• Originated in ancient China
• Joy & happiness in celebrations
events
• Motivation
• Commercial
• Design & testing efficiently
• Firework enthusiasts
• Free creation
and design
• Safe and legal
(in HK)
Introduction
• Description
• Software for designing fireworks/
fireworks shows
• Challenges
•
•
•
•
Realistic results
Real time performance
Easy to use
Diversified design
System Design
• Architectural Overview
• Design Pattern
• Model-View-Controller (MVC)
− Advantage: Clarity of design, ease to growth...
• Components
•
•
•
•
Composer
Simulator
Controller
Viewer
Composer
Sound System
View
Controller
Model
Simulator
Model
View
Viewer
Sound System
Components
• Simulator
• Core part
• Based on Particle System
• contains all calculations
• Viewer
• For showing simulation
• Composer
• Graphical User-Interface (GUI)
• Sound System
• API for generating sound
• Eg: explosion sound effect , background
music
Particle System
By Newton’s 2nd law : F = ma i.e.
a = F/m
v(tn) = a(tn) + v(tn-1)
x(tn) =v(tn) + x(tn-1)
position
velocity
Force accumulator
t1 – t4 : f1=f2=f3=t4=Gravitational force
-> the velocity changes
t3
t5 : Collision –> f5 = f4 + external force
f : for update position & velocity
t3
Modified Particle System
Assumption : No collision among firework particles
Force acting on particles : Gravitational force ONLY
By Newton’s 2nd law : F = ma i.e.
Initial position
a(t) = F(t)/m = constant = a
Initial velocity
v(tn) = at
a+
v(t
vn-1
a +v(tvn-2
) )initial
= ... =velcoity
atn + v(t0)
0 is
n +
0 ) = a + (where
x(tn) =atn2/2 + v0tn + x(t
x0 0)
where x0 is initial position
Advantages :
•System can be updated at any timer value
preview firework at any timer value
x0
v0
x
v
f
Data structure
Design time
Run time
Scene
Firework
Firework template
Scene
Particle Group
Emit action
Particle
Particle template
Explosion
- Create particles
- Make differences for a firework
design
• Explosion types example
Firework Trails
Implementation
• Simulator (simulation engine)
• VC++
• Viewer
• OpenGL SDK
• Composer (GUI)
• OpenGL User Interface (GLUI)
• Sound System
• OpenAL
Performance
Configuration
CPU
Memory
Video Card
Computer A
Computer B
Computer C
Computer D
Computer E
Pentium 4
2.26 GHz
Pentium 3
1 GHz
Intel Celeron
600 MHz
Pentium 3
733 MHz
Pentium 3
667 MHz
512 MB Ram
256 MB Ram
256 MB Ram
512 MB Ram
256 MB Ram
NVIDIA
Geforce 2
MX/MX
400
Intel(r) 82815
Graphics
Controller
NVIDIA
Geforce 2
MX/MX
400
On board S3 S3 Graphic Inc.
Graphic
Savage4
Inc.
ProSavage
FPS result of different scene on each computer
A
B
C
D
E
A empty scene
86
9
60
6
5
A complex scene (texture disabled)
47
6
17
5
3
A complex scene (texture enabled)
20
3
5
2
2
A normal scene (texture disabled)
60
8
42
6
3
A normal scene (texture enabled)
39
5
28
5
3
Conclusion
• Summary
• Realistic simulation
• Easy to use
• Real time result
• Possible Future Extensions
• Ranged parameters
• Movie export
• Customization
Demonstration
Related documents