Skip to content

Repository files navigation

Join Discord https://discord.gg/wMCNgFCLicenseActions StatusCodeFactor

Documentation: http://www.aximo.games

Aximo Game Engine is written purly in C#.

Features

  • Free Open Source
  • Platform independent (runs on Windows & Linux)
  • Code first: everything is defined as code.
  • Multi-Threaded
  • Dynamic Mesh Creation and Manipulation
  • Several Geometry Components.
  • Phong-Lighning
  • Multiple Lights with Shadows (Directional- and Pointlights)
  • Deferred and forward shading (can be mixed)
  • UI Components (Buttons, Panels, Labels, Performance Statistics)
  • Custom Shaders / Materials
  • Asset Management (incl. dynamic generation on-the-fly)
  • Scene Management via Actors, Components and relative transformations.
  • Audio (only global).
  • Flexible Vertex data layout.

Small sample

mkdir mkdir TestGame
cd TestGame
dotnet new console # create a new console application
dotnet add package Aximo
usingAximo;usingAximo.Engine;usingAximo.Engine.Components.Geometry;usingAximo.Engine.Components.Lights;usingOpenToolkit.Mathematics;internalclassProgram{publicstaticvoidMain(string[]args){newMyApplication().Start();}}publicclassMyApplication:Application{protectedoverridevoidSetupScene(){// it's not required, but we should have a least one light.SceneContext.AddActor(newActor(newPointLightComponent(){Name="StaticLight",RelativeTranslation=newVector3(2f,-1.5f,3.25f),}));// add a cubeSceneContext.AddActor(newActor(newCubeComponent(){Name="Box1",RelativeRotation=newVector3(0,0,0.5f).ToQuaternion(),RelativeScale=newVector3(1),RelativeTranslation=newVector3(0,0,0.5f),Material=newMaterial{Color=newVector4(1,0,1,1),},}));}}

Run your application via dotnet run.

Contributing

We are open for every kind of pull request. Response time is normally below 24 hours. You can also meet us in discord.

Build the engine from source

To clone this repository, (currently) you need git LFS, otherwise you need to download the Assets folder manually.

Don't forget the --recursive option:

git clone --recursive https://github.com/AximoGames/AxEngine.git

Build from command line:

cd AxEngine
dotnet build

Run the shipped sample:

dotnet run -p Demo
Keymapping:
C -> Control Camera (default)
B -> Control Box1
L -> Control static light
J -> Move Camera to current controlling object
W, S, A, D -> Moving object in XY.
PageUp, PageDown -> Moving object in Z.
Arrows -> Rotate
ESC -> Quit

About

Aximo Game Engine is an open source 3D Game Engine written in C#

Resources

Stars

30 stars

Watchers

6 watching

Forks

Releases

Sponsor this project

Packages

Used by

Contributors

Languages