Skip to content

emrebarisc/GoknarEngine

Repository files navigation

alt text alt text

Goknar Engine

Goknar Engine is -and will be forever- an open source game engine project. I have been developing it for multiple use cases. My main purpose is to develop a game engine capable of developing a wide range of game genres with it, from RTS to FPS. My other main purpose is to make it cross-platform, and runnable on all Linux, Windows, and Macintosh based systems including consoles.

How to Run

  • In order to be able to run the engine, you need to clone submodules as well.

    git clone https://github.com/emrebarisc/GoknarEngine.git --recurse-submodules
    
  • Goknar folder is for engine source and GameProject folder is for game projects.

  • You can see older projects(They may not work due to the changes I made to the engine.) or the current project settings(Always works since I test my works with this settings). You can go through the projects to make your own.

  • I have written a shell script(GameProject/Build.sh) which takes care of the build operations. It takes debug/release, run, clean commands as argument

  • If you are on a Linux or a Mac based machine, enter the GameProject folder, and type ./Build.sh debug run using the terminal for debug build and running the GameProject after the build ends. If you want a release build, then change debug with release

  • If you are on a Windows machine, run command will do nothing and ./Build.sh debug or ./Build.sh release commands will only create Visual Studio files. In such a case, enter the corresponding build folder(Build_Debug or Build_Release), and open Visual Studio by running GameProject.sln. In Visual Studio, you should set GameProject as the startup project, and you are good to run the project afterwards.

  • After build is done and GameProject is opened, you will be seeing a scene where I test the engine.

This engine is capable of:

  • Reading FBX objects, XML and image files
  • Rendering static, dynamic and skeletal meshes
  • Rendering with deferred and forward pipeline
  • Shading with 3 different light sources(Directional, point and spot)
  • Shadows mapping for all three light sources
  • Rigidbody physics and collision/overlapping events(Bullet Physics)

TODOs:

  • Implementing an audio engine(Most probably OpenAL or SoLoud will be integrated)
  • And tons of other things(Frustum and occlusion culling, multi-threading etc.)

I hope you will enjoy while analyzing or using the engine. Feel free to write anything about the engine in the Discussion part!

About

Custom Multi-Purpose Cross-Platform Game Engine

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages