Presentation is loading. Please wait.

Presentation is loading. Please wait.

Neo-Breakout Sonhui Schweitzer CS 470 Spring 2005.

Similar presentations


Presentation on theme: "Neo-Breakout Sonhui Schweitzer CS 470 Spring 2005."— Presentation transcript:

1 Neo-Breakout Sonhui Schweitzer CS 470 Spring 2005

2 Project Overview Goal –Develop an action arcade game Using –Visual Studio.NET 2003 –3D Studio Max 5 –Photoshop CS / Illustrator CS –Cool Edit Pro

3 Why Simple but contains many of the elements of game development –Rendering of graphics –Collision detection –Collision response –Sound –Particle System –UI

4 Requirement Categories Basic –Three side walls and a void –A paddle and a ball with no acceleration –Breakable objects in the middle area –Power ups –Sound effects –Mouse input –1 game level and 1 difficulty level –Basic collision detection –Collision response

5 Requirement Categories Enhanced –Basic plus… –Floating objects to provide more challenging environment –Curved spline for the path of the paddle –A paddle and a ball with acceleration –Floating objects that regenerate as time passes –Paddle with missile as a power up –Up to 5 game levels and 2 difficulty levels –Background music –User Interface (menus, score, etc) –Particle effects

6 The adventure began…

7 Back to the basics

8 Progress – Breakables and PowerUps

9 Progress - Particle Effects and Sounds

10 Progress – 2 nd Level with Missile PowerUp

11 Progress – 3rd Level

12 Back to using the sample framework

13 Almost a game…

14 System Design: Simplified game flow Setup controls (UI) Load level entities While ( !quit ) { Process input (if it exists) Update game entities Render game Render UI (score, balls left) } Cleanup Exit

15 Algorithms: Collision Detection Each object’s bounds will be defined. Collision detection occurs when two or more bounds overlaps. Between two circles –fDistance = Distance between the center of the circles – sum of radius * If fDistance is <= 0, the collision is detected.

16 Algorithms: Collision Response Between two circles Static circle Moving ball

17 Algorithms: Collision Detection This is a valid collision as the circle is moving toward the line. It is detected by taking the dot product of V and N. If it is < 0 then, they are colliding and the collision detection begins by comparing D with the radius of the Circle. When D <= radius, collision response starts.

18 Algorithms: Collision Detection In this case the dot product of V and N is > 0 which indicates that the ball is behind the wall. No collision detection is required. The use of D and V for the dot product would allow a double sided collision. Single sided collision is needed because discrete collision detection could allow the center of the ball to pass through the wall making it seem like the ball is on the other side.

19 Algorithms: Collision Response

20

21

22 Algorithms: Fixed Intervals

23 Algorithms: Particle Systems Particle system is used to simulate explosions, collision impacts, and smoke trails. What is it? –Made up of particles –A particle is a small object, a triangle in this case. –Properties of a particle Position Velocity Color Age

24 Tools : Cool Edit Pro for Sound Effects

25 Tools : 3ds max for texture

26 Tools : Photoshop for texture

27 Resources Books –3D Game Engine Design Using DirectX 9 and C# –Physics for Game Developers –3D Math Primer for Graphics and Game Development –Linear Algebra and its Applications SDK (Software Development Kit) –Tutorials from DirectX 9.0c SDK

28 Conclusion The project was a success. It was challenging but covered many useful aspects of game development and computer science. I have begun to learn DirectX, 3DStudio Max, and Cool Edit Pro. Download my game and try it out. http://student.uaa.alaska.edu/assys1/NeoBreakOut.html


Download ppt "Neo-Breakout Sonhui Schweitzer CS 470 Spring 2005."

Similar presentations


Ads by Google