3dtoys/README.md

51 lines
1.4 KiB
Markdown
Raw Permalink Normal View History

2024-08-13 00:29:39 +00:00
# 3D Toys
Everything in here is a little sample program or otherwise which
uses [haloo3d](https://github.com/randomouscrap98/haloo3d) and
2024-08-22 06:02:37 +00:00
[unigi](https://git.lumen.sh/Fierelier/unigi). It's all software
rendered, but you'll need to get sdl1 so it can render to screen.
2024-08-13 00:29:39 +00:00
The libraries required are set as submodules, so you can pull them
2024-08-22 06:02:37 +00:00
when cloning with:
```
git clone --recurse-submodules
```
Or if you already cloned, you can do this after the fact:
2024-08-13 00:29:39 +00:00
```
git submodule update --init
```
2024-08-22 06:02:37 +00:00
Then, to build any example, just do `make name.exe`. For example, to
build maze.c, you would do
```
make maze.exe
./maze.exe
```
2024-08-13 00:29:39 +00:00
2024-08-13 01:21:18 +00:00
## Unigi
2024-08-13 00:29:39 +00:00
2024-08-13 01:21:18 +00:00
For the time being, unigi is designed such that it expects you to
compile your entire program as a single unit. This means you must
include all your .c files into the main file, in the right order.
This may change in the future.
2024-08-13 02:03:55 +00:00
Unigi expects some kind of graphics backend to run. In this case,
our samples use SDL1, so you'll need to get that.
2024-08-13 01:21:18 +00:00
## Haloo3d
2024-08-13 02:03:55 +00:00
You can compile haloo3d using the makefile provided in the library
repo, or include the .h and .c files directly into the main
translation unit like unigi currently expects.
2024-08-13 01:21:18 +00:00
For these samples, they expect you to build the `haloo3d_full.a`
library using `make full` in the haloo3d submodule. For convenience,
the makefile for the samples assumes you are using the submodule
and runs make in there for you.
2024-08-13 02:03:55 +00:00