J3DGE is a simple 3D game engine written in java that uses LWJGL, OpenGL and GLFW. It was my senior capstone project. I picked it because I am curious about the internals of game engines.

Some features of J3DGE:

  • Window management
  • Keyboard and mouse input
  • Texture (right now it supports png only)
  • Lighting (uses Phong lighting model)
  • Material
  • Mesh (obj) loading
  • Camera and camera control
  • Animation
  • Resource management
Cube Pyramid Floor
Some objects that show off the lighting of J3DGE.

I also built a Wolfenstein 3D clone with the engine after it’s complete.

Screenshots of the Wolfenstein 3D clone.

All source code and demos are available on Github.

Technical Report