/katabasis

XNA re-imagined.

Primary LanguageC#OtherNOASSERTION

Katabasis - XNA re-imagined.
The software developer journeys to the underworld in search of augmented knowledge of game development.

Katabasis is built for programmers to make games using C#. It's not an engine, but rather some fundemental APIs glued together to form a framework. These include: playing audio, rendering of 3D and 2D graphics; and handling input such as mouse, keyboard, gamepads.

News

To see what's new, check the development log! docs/dev/LOG.md
Lastest update: - - 2022-08-01: C2CS Update & Katabasis.Bedrock

Background: Why?

Problem

For creating games with C#, there are a couple options. However, the majority are engines, which offer you pre-made wheels to build your car. To those who want to just create a game without focusing too much on programming, like designers or artists, this is desired. But, for those who want to take an epic journey to hell and back for augmented knowledge of programming, engines can be unsatisfactory. The options which are not engines are MonoGame and FNA. However, both are laying bricks ontop of the XNA API. This heritage makes it more difficult than it needs to be for game developers. This is especially true considering the advancements in technology since XNA was in active development.

Solution

Katabasis is a fork of FNA adapted to be more modern and simple. The idea is to take and improve upon the good things of the XNA API and dump the rest. Some inspiration is also borrowed from other frameworks such as LÖVE and libGDX. The promise is that by using Katabasis to build your game you will: have fun programming, adopt a growth mindset, and enter the gateway to computer science.

Developers: Documentation

For documentation, see docs/README.md. This includes architecture, development logs, how to build from source, NuGet packages, samples, migration guides from MonoGame/FNA, and versioning.

License

Katabasis is licensed under the Microsoft Public License (MS-PL). This is because a constraint of forking FNA. There are a few exceptions to this detailed below. See the LICENSE file for details with this license and this main product.

Katabasis uses SDL2, FNA3D, FAudio, and Theorafile, all of which are released under the Zlib-Libpng License (zlib).