Renderer / game engine in Kotlin/Native with use of some native libraries. Currently has only the OpenGL backend. Maybe it will support Vulkan sometime in the future.
Running the gradle tasks should be enough.
./gradlew buildNativeProjects generateInterops build
It will automaticaly compile all native projects and the the kotlin one. This script is experimental but tested on MSYS2 for Windows. Building on other platforms is not tested, however in theory should work.
You need to have working environment with: gcc, g++, cmake, bash, java (for Gradle).
This will take around 5 - 10 minutes.
- Build all native projects in
thirdparty
folder using cmake tocmake-build-debug
directories. - Build the main Kotlin project with gradle by the
build
task. Get a coffee ☕, this will take some time.
- math - vec2, vec3, mat4, quaternions, scalar utils
- io - text file reading, binary file reading, reading and writing, abs path, relative path, extension, join two paths, buff(readXY, writeXY), File.XYat(pos)
- utils - timer, cmdopts parsing, logging, primitive vectors (arraylists), env variables
- bf - bf headers parsing, bf data access, compression & decompression, loading to memory, bf image, bf geometry
- bf_tools - bfinfo, bfview, imgconv, geoconv, matmake
- gl - opengl primitives, gl debugging tools
- engine - gl objects, asset pipeline, visibility, scene graph, rendering, input, windows
- bfinfo - inspect and view various bf files
- bfview - image viewer for compiled bf files (images, materials, geometries)
- imgconv - image importer (mipmap generator, dxt compressor)
- geoconv - geometry importer (lod generator, optimizer)
- matcomp - material compiler