Kode / Krom

Other
96 stars 23 forks source link

Krom

Kinc + V8 combined.

Krom is a highly portable runtime for JavaScript based multimedia applications. It executes JS or webassembly through V8 and is fully supported in Kha as one of the backends, see bindings. Krom is optimized for very fast development cycles and directly supports hot-patching of code, shaders and assets.

Note that Krom does not rely on web APIs. It rather exposes full, native hardware capabilities and in particular surpasses WebGL in features and speed.

Build instructions

Running

krom [assetsdir shadersdir [--flags]]

If no arguments are provided, assets and shaders are loaded from the executable path.

Debugging

To debug Krom itself, just start it in Visual Studio or Xcode (Linux IDEs are not yet setup automatically for Krom debugging). The debug protocol can be debugged using an "attach" debug configuration in Kode Studio or Visual Studio Code. First start Krom in your C++ IDE with parameters ala /path/to/project/build/krom --debug 9988 and then start a launch config which looks something like this:

{ "type": "krom", "request": "attach", "name": "Krom-Test", "preLaunchTask": "Kha: Build for Krom", "port": 9988 }