X2GEngine – ICT311

Source

https://github.com/Contagious06/ICT311-X2GEngine

Second Assignment

Video

New Features

  • Animation

    • Using Cal3D
    • Bone Animation
  • AI

    • LUA State Machine
    • Waypoints
    • Fire Elemental that shoots fireballs at the player
  • Audio

    • Using FMOD

Added support for VBO streaming (for the animation)

Presentation Slides

First Assignment

Designing and implementing a game engine.

Intro and Menu

Old Trailer

Unedited Video

Gource Video

UML Diagram

X2GEngineUML

The diagram was done before the project started. It wasn’t completely completed however it did serve as a solid foundation for our game engine. The diagram was done in Star UML.

Features

Interfaced Renderer

  • VBO Support (Triangles, Triangle strips, quads, etc etc), using the IndexBufffer & VertexBuffer classes
  • 2D Rendering using a Rectangle
  • bitmap font rendering (Loaded from .fnt)
  • Texture2D, Texture3D & TextureCube
  • SpriteBatch (Not part of IRenderer.) Shaders (GLSL) — Interfaced Interfaced Window
  • Currently implemented using GLFW Physics
  • Facaded
  • Bullet Physics implemented.
  • Constraints
  • Character
  • Ray Picking
  • Heightmap
  • ConvexHulls
  • Triangle Meshes
  • Picking Up Objects LUA
  • A game can be completely created using LUA
  • World builder completely coded in LUA GameObjects Resource loader
  • Support for adding different loaders
  • Interfaced asset
  • Interfaced loader Interfaced input loader Awesomium 1.7 Alpha (HTML5 Support) – Last minute implementation

Physics: Bullet Texture Loading: Devil Majority of the models: YoFrankie – The assignment was focused on the game engine not the game. Although we did model a fair bit.

Menu: https://tympanus.net/codrops/2010/06/28/awesome-cufonized-fly-out-menu/ Menu Music: http://www.newgrounds.com/audio/listen/480533 (Author: Andersson187)

Team Members

  • Joe Skelton
  • Hatef Tadayon
  • Matthew Vlietstra