1 / 27

Labyrinth

Labyrinth. Zhou Zhen Barry Allison Stephen Kao Rex Ma. Software Environment. OpenGL (Graphics) OpenAL (Sound) C++ Windows Environment – desirable portable code Source Control (e.g Visual SourceSafe) Games Engine at least should be portable with wrapper for Environment specific code

leanna
Télécharger la présentation

Labyrinth

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Labyrinth Zhou Zhen Barry Allison Stephen Kao Rex Ma

  2. Software Environment • OpenGL (Graphics) • OpenAL (Sound) • C++ • Windows Environment – desirable portable code • Source Control (e.g Visual SourceSafe) • Games Engine at least should be portable with wrapper for Environment specific code • Coded with Multi Processor / Dual Core PC’s in mind • Client Server (MMOG) • Efficiency - Trade-offs if 60fps is goal, Full Screen more efficient, Compromises to Software Engineering • Staged realeases – e.g. box without textures, no holes, no friction etc.

  3. Architecture

  4. Engine Components • Renderer – First thing we need to see anything • Texture Maps (MIP mapping), bump mapping (for ball) • Model of World (Objects) – polygons (triangles), patches/surfaces, LOD • Physics • Collision Detection • Sound • Spatial Partitioning / Culling, Use view frustrum (volume) with Octrees, Binary Space Partitioning (BSP), Portals. • AI – Covered in other projects • Animation/Simulation - Mesh, Skeletal (hierarchical), Inverse Kinematics • Network/Internet (MMOG)

  5. Sound • OpenAL or Commercial (Licensed) • Stereo, Surround Sound – positional (but not above/below) • Mood Music – can depend on what is happening (e.g. search, fight) • Filters due to environment (e.g. under water) • Use samples or procedurally generated sounds • Complications - Mixing sounds, volume of each and synchronizing with events (e.g. collisions). • Occlusion (blocking – muffled & muted), obstructed (hear reflections) • WAV, MP3, WMA, MIDI Samples – Maximum Memory vs. Channels • Labyrinth – Mono (stereo if time allows), Rolling based on speed, Collision with walls

  6. References (Game Engine) • “Game Development – Harder Than You Think” (2004) ACM Digital Library (See last years notes) • “Designing a PC Game Engine” (1998)IEEE Digital Library • Last Years 777 Notes • COMPSCI 715 Resources • Game Engine Anatomy 101www.extremetech.com/article2/0,3973,594,00.asp

  7. Modeling • Three Stage of Development • Stage One: Simple Model • Single colour model • No hole in the labyrinth. • Stage Two: Texture • Put the basic texture into the labyrinth and ball. • To have proper reflection on ball.

  8. Modeling • Stage Three: The complete labyrinth • Build the complete labyrinth. • With friction • Enhancement (If we have time) • Different environment (i.e. on the moon or Mars

  9. Texture mapping Aims • Make it as realistic as possible • Provide more details on the surface

  10. Texture mapping cont.. Ideal • Provide multiple choice for user (ie Labyrinth can have multiple skins, user even can design their own skin)

  11. Texture mapping cont.. Ideal • First step Only use Phong shading algorithm for the ball • Second step Texture map a certain pattern on the ball, from that we can see how the ball actually rolling. • Third step Produce reflect image on the ball at real time

  12. Texture mapping cont.. Technologies • Bitmap A traditional texture mapping method • Bump mapping Creates apparent alteration to the geometry of the object surface

  13. Texture mapping cont.. Technologies • Procedural textures Can get arbitrarily high resolution 3D textures for natural materials like wood and marble.

  14. Interface • Simple DirectMedia Layer (SDL) A cross-platform multimedia library designed to provide low level access to audio, keyboard, mouse, joystick, 3D hardware via OpenGL. http://www.libsdl.org/index.php • For Labyrinth user input: • Keyboard • Mouse • Command base user interface • Windows menu user interface

  15. References (texture mapping) • "Texture Mapping" Techniques (2004) http://undergraduate.csse.uwa.edu.au/units/233.413/Handouts/Lectures22and23.html • Burkhard's Lectures Texture Mapping (2005) http://www.cs.auckland.ac.nz/compsci372s1c/burkhardLectures/372Handout6_1up.pdf • Nvidia (1999) Demos: Bubblehttp://www.nvidia.co.uk/object/IO_20011113_6700.html • Solid Texturing of Complex Surfaces D. R. Peachey (SIGGRAPH 1985) Reading material Andy G. Ye & David M. Lewis Procedural texture mapping on FPGAs http://www.hwswworld.com/downloads/y13/05_2.PDF

  16. Physically based modelling • Physically based modelling is important in game development nowadays. • Laws of physics evaluated by the most modern 3D games for both motion and graphics calculation. • E.g. Collisions detection, Movement, Weather. • Physically based modelling engine has been used by many of simulator program too.

  17. In 80s, games is 2D and simple. Colourful, interesting game style and system requirement are the number of main factor to develop game. Games in 1980s Vs Now • Now, many games use 3D engine and physics engine to model. “Realistic” is the main factor for the game.

  18. Games in 1980s Vs Now (Cont’d)

  19. Physics Chips • Because physics factor become more important in games today. Some computer add-on card for physics calculation have been developing too.

  20. Particle systems • We will use Particle Systems to evalute our physical model. • It need many of particle to support our the calculation. • But it have many of advantages: • Reduces need for human animators • Reusable and react whatever user input

  21. We will use some formula in Newton’s laws and Circular motion to evaluate our physical model. Physics model evaluation

  22. There are 3 stage of the ball: Rolling We need to find out the location, velocity, acceleration. Stable When and why it is not rolloing. Crushing Collisions detection Labyrinth ball model

  23. In real world: The movement of the ball is curve. Friction on the wood plate. Collisions when ball crush the wall. Wood is not “perfectly” hard. Challenge(Realistic Vs Performance) • In Computer: • The movement is not curve but close to curve if large number of time calculation in a second. • Friction and Collision detection model development.

  24. Another challenge in development • How many percentages of the ball, or which part of the ball on the hole to represent the ball is drop in the hole or just roll around it? • When the ball is fly over the hole but not drop?

  25. References (Physical Model) • “Approximate and Probabilistic Algorithmn for Shading and Rendering Structured Particle Systems” in SIGGRAPH 1985 porject • Notes of Physically-Based Modelling for Compsci 777 2004 in University of Auckland • http://www.cs.auckland.ac.nz/compsci777s2c/archive/lectures/Burkhard/777Handout6.pdf • Introduction to physically-based animation • http://www.cg.tuwien.ac.at/courses/Animation/I_Physically_Based.pdf

  26. References (Physical Model) • Microsoft Flight Simulator Century of Flight • http://www.microsoft.com/games/flightsimulator/ • EA - Battlefield 2 • http://www.eagames.com/official/battlefield/battlefield2/us/features.jsp • 80’s games in 80s Music Lyrics • http://www.80smusiclyrics.com

  27. References (Physical Model) • PC Hardware: Ageia PhysX Interview • http://www.gdhardware.com/interviews/agiea/001.htm

More Related