Skip to content

A simple OpenGL 3D game creator and a sample game created with it

Notifications You must be signed in to change notification settings

DarthXerox/SimpleGameEngine

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

67 Commits
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Simple Game Engine

Hello, this my very simple game engine created using OpenGL (exactly OpenTK + C#).
3D game creator is probably more accurate, as it offers no UI to interact with objects, lights etc.
and add them directly to a specific place on a map, but rather all changes have to made in code, but this process is very simple. These features can be easily played around with:

  • Normal mapping technique
  • Adding a new 3D object to the game, using:
    • an .obj file containing a single-mesh 3D model and assigning it multiple positions, scales and rotations within the game world
    • any 2D diffuse texture and any 2D normal texture
    • any material using an .mtl file
  • Creating an arbitrary text GUI with clickable text boxes that get highlighted and play a sound
    when a mouse hovers over them
  • Playing .wav sounds (supports playing only one sound at a time)
  • Detecting collisions of ingame objects on 1 to N scheme (e.g. player and trees) using simple hitboxes
  • Specifying the world's surface based on a heatmap
  • Adding multiple light sources with diferent light casting types (:grey_exclamation: right now this might lead to FPS drops)

Forest

This is a sample game to show the features of the program.
All objects have increased shininess level to make the normal mapping more visible.
The difference between normal mapping technique which determines normals based on normal texture as opposed to determining normals from the surface of the given 3D model.

No normal mapping
without

With normal mapping
without

The game also uses a simple fog effect
without

Here we can see a simple highlight effect applied to a textbox
without

Requirements

To launch Forest game

  • Download the repository
  • Head to SimpleGameEngine/bin/Release and launch Forest.exe (Windows OS is necessary)
  • Ingame controls can be found in HELP option in the Main menu

To open the code in VS

  • .NET Framework 4.7.2

⚠️ If any problem occurs with nuget packages (I included them in the repository but just in case)
download these packages:

  • OpenTK 3.2.0
  • AssimpNet 4.1.0
  • SharpFont.Dependecies 2.6.0
  • SharpFont 4.0.1

About

A simple OpenGL 3D game creator and a sample game created with it

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published