Small environment and "animation" rendered with OpenGl
2025-05-29.15-42-12.mp4
./build.sh
It's a bash script that will build for Linux by default.
But if your on wsl
and has mingw
installed, then it'll build a native windows static executable instead.
If you're on Msys2
it'll dectect and also build native windows executable.
bin/island
[scene_input_file]- If no
scene_input_file
is provided, a default one will be used
- Might work with c++17 compiler, but it was only tested with
g++ 12.2.0
On void:
sudo xbps-install -S libX11-devel libXcursor-devel libXrandr-devel libXinerama-devel libXi-devel
w, s, d, a
forward, backward, sideways movementclick
anddrag
to control the view directionspace, q
to go upe
to go downwheel
to change fov
- You can feed environment settings to the executable through a argument path. The default settings are in
src/input.txt
. - If width or depth exceeds
100
might get pretty LOW fps. It's recommended to stay below this range, and the height be less then50
src/
contains all the source code, it containesmain.cpp
for a pseudo-bash script that includes the actual projectisland.cpp
, also can find theinput.txt
that provides a default scene descriptionsrc/game
all the island code that dependes on all the other folder in thesrc
src/utils
utils function, doenst depend on any filessrc/math
generic mat and vec classes for matrices and vectors respectivaly, only depends on src/utilssrc/platform
implementation of Window Interface using glut for nowsrc/graphics
all the core for graphics, loading meshes, loading texture and rendering using shaderssrc/assets
contain static C arrays that contains data about the .obj directly into C, which means it'll be embedded into the executablevendor/
All external libraries, glad, noise, utily for obj2c, stb imagebin/
binariesassets/
resources for the project, including shaders, textures, models.docs/
definition of the project from my class