49 lines
1.9 KiB
Markdown
49 lines
1.9 KiB
Markdown
|
# libwindmill - a 3D engine for your CASIO fx-9860G
|
||
|
## Introduction
|
||
|
Windmill is a 3D engine project by Ninestars, originally developed in C++ and
|
||
|
built with the CASIO fx-9860G SDK. It was adapted to compile with GNU
|
||
|
utilities by Cakeisalie5.
|
||
|
|
||
|
This 3D engine is made to be easy to use, and modular, in order to quickly
|
||
|
create a game, or to use it in an existing project.
|
||
|
It features the following:
|
||
|
* Calculates coordinates to display them on screen;
|
||
|
* Camera that can move in any direction and turn around using two axes;
|
||
|
* Management of display windows;
|
||
|
* Depth buffer so objects hidden behind others aren't displayed;
|
||
|
* Display of textures defined as images;
|
||
|
* Simplified management of meshes and textures;
|
||
|
* Display of fixed and dynamic objects that can turn following three axes;
|
||
|
* Simultaneous renders.
|
||
|
|
||
|
Windmill is only a graphical engine, it only displays predefined triangles
|
||
|
in space on the screen, which means it doesn't manage collisions between
|
||
|
objects, or between an object and the camera.
|
||
|
|
||
|
## Requirements/setup
|
||
|
This project is easier to build under GNU/Linux. It might be possible to
|
||
|
build it for Microsoft Windows, but this host platform is not officially
|
||
|
supported.
|
||
|
|
||
|
You will need [GCC][gcc] and [GNU Binutils][binutils], both compiled for the
|
||
|
`sh3eb-elf` target, and the [G1A wrapper][wrapper]. A french tutorial of how
|
||
|
to make and install all of these can be found [on Planète Casio][pc-gcc-tuto]
|
||
|
(steps 1 to 6 included).
|
||
|
|
||
|
## Build
|
||
|
Just type in the following:
|
||
|
|
||
|
./configure && make
|
||
|
|
||
|
## Miscellaneous information
|
||
|
For the authors of the project, check `AUTHORS.md`.
|
||
|
For the license of the project, check `LICENSE.md`.
|
||
|
|
||
|
If you want to contribute to this project, check the contribution guide
|
||
|
in the `CONTRIBUTING.md` file.
|
||
|
|
||
|
[gcc]: https://gcc.gnu.org/
|
||
|
[binutils]: https://www.gnu.org/software/binutils/
|
||
|
[wrapper]: https://bitbucket.org/Lephenixnoir/add-in-wrapper.git
|
||
|
[pc-gcc-tuto]: http://www.planet-casio.com/Fr/programmation/tutoriels.php?id=61
|