1 / 42

Developing a 3D game using spark engine

Lauren Bissett, Daniel Maguire, Nicholas Woodfield. Developing a 3D game using spark engine. Background. Background. Two overall goals: Expand upon 3D game engine built last semester. Create a fun, interactive game built on top of the engine. Background. Using:

shani
Download Presentation

Developing a 3D game using spark engine

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. Lauren Bissett, Daniel Maguire, Nicholas Woodfield Developing a 3D game using spark engine

  2. Background

  3. Background • Two overall goals: • Expand upon 3D game engine built last semester. • Create a fun, interactive game built on top of the engine.

  4. Background • Using: • Microsoft’s XNA framework (C#). • Visual Studio 2008. • Additional software for art and music development.

  5. Project Schedule

  6. 2. Schedule, Lauren

  7. 2. Schedule, Dan

  8. 2. Schedule, Nicholas

  9. 2. Schedule, Analysis • Schedule only started to fall apart toward the end of the semester. • Got most individual items done! • It was only the final integration that fell behind.

  10. Completed Features

  11. Engine Architecture Scene graph Rendering System Materials & Lighting Animation Input Content Pipeline

  12. Engine Architecture Materials & Lighting Normal mapping Environmental mapping Light mapping Specular mapping Rim lighting Light objects

  13. Diffuse Map Normal Map Specular Map

  14. Engine Architecture Collision Detection Bounding Volume Hierarchy AABB OBB Sphere Physics Files Integrated with 3D Editors

  15. Engine Architecture Animation GPU Skinning Play Speed up Slow down Reverse

  16. Artificial Intelligence • Check visibility • Rectangle intersections • Corner intersections • Lion Move • If visible, move toward player • Newly visible? • Roar • Fresh in Memory • Go towards player • Check for collisions • If not visible • Forgotten? • Sleep • Slightly remember? • Forget a little more • Pursue (choose viewpoint) • Check for collisions • If frozen, move around object

  17. Art Models Animations Textures Levels Props Character

  18. Additional Features

  19. No heap allocation per frame Avoiding excessive garbage collection Allocate everything up front Value types Avoiding box/unboxing w/ enums/ints Render queue Reduce state switching Cache states Optimizations

  20. Cut Features

  21. Cut Features • Particle Engine • Very complex. • Not enough time to implement correctly. • Would have meant cutting other features. • Inventory System • UI • The ability is there, but ran out of time!

  22. Difficulties

  23. Difficulties, General • TIME! • The biggest problem is we ran out of TIME! • Integration • All the pieces are there, but we lacked time to fit them together. • We ran out of time for integration.

  24. Difficulties, General • Man/womanpower • Could have gotten a lot done if we had a small team dedicated to each development area.

  25. Difficulties, Gameplay • AI algorithms were based on a 2D algorithm. • Translation to 3D proved challenging.

  26. Difficulties, Art • Lack of suitable textures • Each texture needs a diffuse, normal and specular map. • Could only find a handful of suitable textures. • Painting by hand is too time-consuming. • Resulted in lots of tiling, which makes the art looks overdone and bland. • Inexperience • Apparently this art stuff is kind of difficult.

  27. Video Demonstration • And now, the moment you’ve all been waiting for… • Video

  28. Overall Assessment

  29. So how did we do? • Basically, all the pieces are there, we couldn’t put them all together in time.

  30. So how did we do? • We did, however, accomplish a LOT!

  31. So how did we do? • The engine is at the stage where anyone could pick up our code and build a game right now.

  32. So how did we do? • The engine is at the stage where anyone could pick up our code and build a game right now.

  33. So how did we do? • The game itself is not very playable, but there’s something there you can interact with.

  34. So how did we do? • As a group, we consider the underlying code and art a success, but the lack of final integration our only weak point. • Overall, we are satisfied.

  35. The End

More Related