96 lines
5.3 KiB
Markdown
96 lines
5.3 KiB
Markdown
- [JabyEngine](#jabyengine)
|
|
- [About](#about)
|
|
- [How to build](#how-to-build)
|
|
- [Building `Tools` (without VS Code)](#building-tools-without-vs-code)
|
|
- [Building `JabyEngine` (without VS Code)](#building-jabyengine-without-vs-code)
|
|
- [Building support library (without VS Code)](#building-support-library-without-vs-code)
|
|
- [`FontWriter` (without VSCode)](#fontwriter-without-vscode)
|
|
- [Building `PoolBox` (without VSCode)](#building-poolbox-without-vscode)
|
|
- [Media creators](#media-creators)
|
|
- [JabyEngine](#jabyengine-1)
|
|
- [PoolBox](#poolbox)
|
|
- [Special thanks](#special-thanks)
|
|
- [Support this project](#support-this-project)
|
|
|
|
# JabyEngine
|
|
## About
|
|
JabyEngine is my personal attempt to eventually make my own PS1 game from "ground up". Originally I didn't indented to release this code publicly but recently I decided to give it a try. If you read this, thank you!
|
|
|
|
## How to build
|
|
JabyEngine can be build with a docker image using `podman`. Simply run the `install.sh` script from the `podman` folder and you should be good to go.
|
|
|
|
`podman_jaby_engine.sh` allows you to easily run the docker image for builds:
|
|
`podman_jaby_engine.sh <project mounting folder>:<working directory relative to project mounting folder> <Command to run> <Arg1> <Args2> <...>`
|
|
|
|
The following environment variables should be set:
|
|
* `JABY_ENGINE_PATH`: The path to the root folder of this repo. If you used the `install.sh` script and the environment variable was not set, the script will have set it to the folder. Restarting the shell or VS Code might be required.
|
|
* `PSX_LICENSE_PATH`: The path to a folder containing the PS1 licenses for generating a CD.
|
|
|
|
Additionally you can also specify the following optional environment variables:
|
|
* `JABY_ENGINE_NO_DOCKER`: Turns off the usage of `podman` for builds. This is only recommended for specific development.
|
|
|
|
VS Code has build targets set for all the projects which should be build in this order:
|
|
* `src/Tools/Tools.code-workspace`: Build all tools
|
|
* `src/Library/Library.code-workspace`: Build JabyEngine for the configurations you need
|
|
* `support/src/SupportLibrary.code-workspace` (optional): Build for using support code
|
|
* `examples/PoolBox/PoolBox.code-workspace`(optional): Build for an example "game"
|
|
|
|
### Building `Tools` (without VS Code)
|
|
`make` requires the following values to be passed:
|
|
* `CARGO_CMD`: `build`
|
|
* `BUILD_PROFILE`: `debug`/`release`
|
|
|
|
### Building `JabyEngine` (without VS Code)
|
|
`make` requires the following values to be passed:
|
|
* `BUILD_PROFILE`: `debug`/`release`
|
|
* `PSX_TV_FORMAT`: `PAL`/`NTSC`
|
|
* `CUSTOM_CONFIG`: Empty or folder name under `./config`
|
|
|
|
### Building support library (without VS Code)
|
|
These projects shall eventually turn into useful extensions for the engine. So far they are more tests then proper code. However `PoolBox` is depended on `FontWriter`.
|
|
|
|
#### `FontWriter` (without VSCode)
|
|
`make` requires the following values to be passed:
|
|
* `BUILD_PROFILE`: `debug`/`release`
|
|
|
|
### Building `PoolBox` (without VSCode)
|
|
`PoolBox` is the one and only example project so far.
|
|
`make` requires the following values to be passed:
|
|
* `BUILD_PROFILE`: `debug`/`release`
|
|
* `REGION`: `SCEE`/`SCEA`/`SCEI`
|
|
* `CUSTOM_CONFIG`: Empty or folder name under `$(JABY_ENGINE_PATH)/config`
|
|
|
|
|
|
# Media creators
|
|
## JabyEngine
|
|
| Art | Author |
|
|
|-----------------------------------------------------------------|------------------------------------------------------------|
|
|
| `ressources\Splash_ntsc.png` <br/> `ressources\Splash_ntsc.png` | Niuka |
|
|
| `bin/extern/32BIT.TMD` | http://psx.arthus.net/homebrew/assets/boot_logos/32BIT.TMD |
|
|
|
|
## PoolBox
|
|
| Art | Author |
|
|
|-----------------------------------------------------------------|-------------|
|
|
| `examples\PoolBox\assets\AllTheJaby.png` | Niuka |
|
|
| `examples\PoolBox\assets\IconTexture.png` | Charlie Nax |
|
|
| `examples\PoolBox\assets\Paco.png` | Paco |
|
|
|
|
| Music | Author |
|
|
|---------------------------------------------------------------------------|---------------------------------------|
|
|
| `examples\PoolBox\assets\audio\apple.wav` | ??? |
|
|
| `examples\PoolBox\assets\audio\blubb-mono.wav` | ??? |
|
|
| `examples\PoolBox\assets\audio\Evacuation_cdda.wav` | Cody the white tiger |
|
|
| `examples\PoolBox\assets\audio\Friendship_samp.wav` | From Dragon Quest VII |
|
|
| `examples\PoolBox\assets\audio\jlbrock44_Three_Kings_Funk_cdda_ready.wav` | `Three Kings Funk` by spinningmerkaba |
|
|
| `examples\PoolBox\assets\audio\OnMyOwn_BailBonds.mp3` | `On My Own` by Bail Bonds |
|
|
|
|
# Special thanks
|
|
* Cody the white tiger
|
|
* Nicolas Noble
|
|
* Pyravia
|
|
* Sickle
|
|
|
|
# Support this project
|
|
* Try it out
|
|
* Open Issues or Pull Requests
|
|
* [Support it on KoFi](https://ko-fi.com/jabyspielkiste) |