starter template for odin
this is my starter template for odin projects, setup for use with raylib.
caveats (things you should know if you want to use this)
- i use linux (arch btw)
- i use fish shell so all the scripts and helper functions are fish based
- i use gpu-screen-recorder for capturing my screen
- i use direnv to setup my path
supported platforms:
- desktop
- planned, not implemented mobile (android)
- web
- script to screen record my main screen, 1fps (scripts/record.fish)
- build script that manages everything for me (scripts/build.fish), including auto-reload/building
- dev build that will automatically rebuild the game library + assets (
build.fish -d)
commit-notesis a scratch pad that i write things that i did / worked on that is automatically pulled onto my commit via a git-hookpost.fishis a script used by my template script, executes these commands on a new projectscripts/builds.fishcontains all the varibles that define the various builds used inbuild.fish, that way you don't need to get lost in the build script but can just edit the params
there are three main packages: src (package game), runner (package main), shared (package shared). the idea is that all the game logic is platform
agnostic (in the src) and all the platform specific things will be in runner.
src/is the main game folder, all code should be in hererunner/contains all the platform runner wrappersrunner/releaseis the main desktop releaserunner/devis the library based development build
shared/has small things that i want to have access to insrc, probably will be pulled out at points into libraries