https://github.com/inerska/blazoraxolotlengine
Blazor game engine based on Blazor Canvas Extension
https://github.com/inerska/blazoraxolotlengine
blazor blazor-webassembly blazorwasm canvas canvas2d dotnet game-engine gameengine webgl webgl2
Last synced: 8 months ago
JSON representation
Blazor game engine based on Blazor Canvas Extension
- Host: GitHub
- URL: https://github.com/inerska/blazoraxolotlengine
- Owner: Inerska
- License: gpl-3.0
- Created: 2022-11-26T07:29:02.000Z (over 3 years ago)
- Default Branch: main
- Last Pushed: 2022-12-06T16:22:41.000Z (over 3 years ago)
- Last Synced: 2025-04-03T00:30:29.509Z (about 1 year ago)
- Topics: blazor, blazor-webassembly, blazorwasm, canvas, canvas2d, dotnet, game-engine, gameengine, webgl, webgl2
- Language: C#
- Homepage:
- Size: 672 KB
- Stars: 2
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
Blazor Axolotl Engine
Blazor Axolotl Engine aims to be a simple, lightweight, and fast 2D game engine for the web. It has an integrated Entity Component System (ECS) and a simple API to create games.
The game engine is based on the [Blazor Canvas Extension](https://github.com/BlazorExtensions/Canvas) and uses the [Blazor WebAssembly](https://dotnet.microsoft.com/apps/aspnet/web-apps/client) framework.
Example of some code with ECS (Entity Component System):
```csharp
var world = new World();
var entity = new TestSystem(); // You must create a class that inherits from ISystem, it can be a tank, a player, a bullet, etc.
world.AssignTo(entity);
if (entity.Has()) {
var transform = entity.Get();
transform.Position = new Vector2(0, 0);
}
```
The ECS part is made to be mindless, so you can focus on the game logic. The rendering part of the engine will be either wrapped or either made by the user.
The ECS part is optional, you can use the engine without it.
This README.md is minding to be updated with more information about the engine.
Feel free to leave a star and contribute to the project!