Skip to content

vayun-mathur/ThreeD

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

124 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

ThreeD Game Engine

This is a 3D game engine for Windows.

Current Features

  1. Creating a window
  2. Rendering
  3. Input
  4. Scene System
  5. 3D Audio
  6. Scripting System
  7. GUI System
  8. Soft-Body Physics

Currently Working On

3D Graphics Engine

Completed
  1. Rendering Background Color
  2. Render triangles
  3. Render quads
  4. Shaders
  5. Transformations
  6. Rendering 3D Objects
  7. Camera
  8. Texturing
  9. Loading Model
  10. Directional Light
  11. Skybox
  12. Point Light
  13. Loading .mtl files
  14. Clouds
TODO
  1. Spot Light
  2. 3rd Person Camera

Scene System

Completed
  1. SceneSystem class
  2. Scene Objects
  3. Camera Object
  4. Mesh Object
  5. Directional Light Object
  6. Reading from scene file
  7. Point Light Object
  8. Audio Source Object
  9. Script Object
  10. Number/Vec3 Objects
TODO

Nothing for now

Audio System

Completed
  1. Load audio from files
  2. Play audio
  3. Create multiple audio sources
  4. Move audio sources
  5. Edit pitch and gain
  6. Loop sounds
  7. Moving sounds: Doppler effect
TODO

Nothing for now

Scripting System

Completed
  1. Print values in scene
  2. Edit values in scene
  3. Write code in seperate file
  4. Mouse Click event listener
  5. Variables
  6. Operators
    • Arithmetic + - * /
    • Assignment = += -= *= /=
    • Relational == != > < >= <=
  7. If/Else statements
TODO
  1. More Operators
    • Boolean ! && ||
    • Modulus %
  2. Loops (For, While, Do-While)
  3. Functions
  4. More event listeners
    • Key listener
    • Click listener for meshes

Physics Engine

Completed
  1. Soft Body Physics w/ Spring & Mass
  2. Euler-Cromer Method
  3. GPU calculations
TODO
  1. Soft Body Physics w/ Finite Element Method
  2. Fluid Dynamics

GUI System

Completed
  1. Render White Rectangle
  2. Rounded Rectangles
TODO
  1. Different Colors / Textures on elements

Features to come

  1. Scene Creation Tool

Getting Started

Installation

  1. Start by cloning the repository with git clone https://github.com/vayunmathur/ThreeD
  2. Open "ThreeD.sln" in Visual Studio
  3. You can start using it

About

A 3D Game Engine for Windows

Resources

Stars

Watchers

Forks

Packages

 
 
 

Contributors

Languages