/gardenrift

a dummy's game dev study with zig, vulkan, openal, and ecs

Primary LanguageZigGNU General Public License v3.0GPL-3.0

Gardenrift

The goal of this project is to create a small game in Zig, both as a learning opportunity and a proof-of-concept, to see Zig would be a good language to stick with for future game development needs.

It would also be a good learning opportunity to learn lower-level concepts such as graphics and audio APIs, and ECS implementation.

References

Zig

Vulkan/OpenGL/GLFW

OpenAL

Math/Linear Algebra

Image File Format

Audio File Format

3D File Format

Misc

Resources

Decisions

  • Files with underscores as names (e.g. _.zig) will be known as exporters. These serve as the entrypoints of a directory that expose its public contents. This should have nothing in it except a list of pub const <name> = @import("<file>");. This is as opposed to main.zig which may contain functionalities.