Neotolis Engine

Minimalist game engine for Web/WASM

Tiny output · Zero magic · Code-first · C17

Philosophy

  • Code-first

    Game controls the main loop. The engine gives building blocks, not a pipeline.

  • Explicit over implicit

    You see everything. No hidden behavior, no magic behind the scenes.

  • Keep it simple

    Less code is better. Simplify further when possible.

  • Tiny size

    Every byte counts. Binary size tracked on every PR.

  • Set of modules

    Use only what you need.

  • Prebuilt assets

    Source formats packed into binaries at build time. Runtime loads packs on demand, no parsers.

Features

  • Code-first — Game controls the main loop. The engine gives building blocks, not a pipeline.
  • Explicit over implicit — You see everything. No hidden behavior, no magic behind the scenes.
  • Keep it simple — Less code is better. Simplify further when possible.
  • Tiny size — Every byte counts. Binary size tracked on every PR.
  • Set of modules — Use only what you need.
  • Prebuilt assets — Source formats packed into binaries at build time. Runtime loads packs on demand, no parsers.

Examples

Shape Renderer Bench

Shape Renderer Bench

40.299 KB engine
Size breakdown
index.html 1.256 KB
index_simd.wasm 31.793 KB
index.wasm 31.631 KB
index_simd.js 7.250 KB
index.js 7.245 KB
Engine 40.299 KB
Total 40.299 KB
Atlas Packing

Atlas Packing

333.330 KB engine + 1.130 MB resources
Size breakdown
index.html 1.252 KB
index_simd.wasm 324.300 KB
index.wasm 310.415 KB
index_simd.js 7.778 KB
index.js 7.773 KB
Engine 333.330 KB
assets/atlas_demo.ntpack 1.130 MB
Resources 1.130 MB
Total 1.455 MB
Hello Triangle

Hello Triangle

13.004 KB engine
Size breakdown
index.html 1.249 KB
index_simd.wasm 8.505 KB
index.wasm 8.206 KB
index_simd.js 3.250 KB
index.js 3.245 KB
Engine 13.004 KB
Total 13.004 KB
Bunnymark

Bunnymark

361.088 KB engine + 830.214 KB resources
Size breakdown
index.html 1.255 KB
index_simd.wasm 351.909 KB
index.wasm 333.500 KB
index_simd.js 7.924 KB
index.js 7.919 KB
Engine 361.088 KB
assets/bunnymark_hd.ntpack 815.432 KB
assets/bunnymark_sd.ntpack 14.782 KB
Resources 830.214 KB
Total 1.163 MB
RTT Showcase

RTT Showcase

436.187 KB engine + 9.399 KB resources
Size breakdown
index.html 1.256 KB
index_simd.wasm 427.069 KB
index.wasm 410.426 KB
index_simd.js 7.861 KB
index.js 7.856 KB
Engine 436.187 KB
assets/rtt_showcase.ntpack 9.399 KB
Resources 9.399 KB
Total 445.586 KB
9-Slice Scaling

9-Slice Scaling

429.938 KB engine
Size breakdown
index.html 1.253 KB
index_simd.wasm 420.529 KB
index.wasm 403.168 KB
index_simd.js 8.156 KB
index.js 8.151 KB
Engine 429.938 KB
Total 429.938 KB
Sponza

Sponza

335.570 KB engine + 68.462 MB resources
Size breakdown
index.html 1.250 KB
index_simd.wasm 326.542 KB
index.wasm 313.802 KB
index_simd.js 7.778 KB
index.js 7.773 KB
Engine 335.570 KB
assets/sponza_core.ntpack 3.180 KB
assets/sponza_full.ntpack 59.395 MB
assets/sponza_geo.ntpack 3.488 MB
assets/sponza_tex.ntpack 5.576 MB
Resources 68.462 MB
Total 68.790 MB
Spinning Shapes

Spinning Shapes

40.446 KB engine
Size breakdown
index.html 1.255 KB
index_simd.wasm 32.071 KB
index.wasm 32.229 KB
index_simd.js 7.120 KB
index.js 7.115 KB
Engine 40.446 KB
Total 40.446 KB
Text Rendering

Text Rendering

52.305 KB engine + 7.583 MB resources
Size breakdown
index.html 1.252 KB
index_simd.wasm 43.479 KB
index.wasm 41.596 KB
index_simd.js 7.573 KB
index.js 7.568 KB
Engine 52.305 KB
assets/text_base.ntpack 12.163 KB
assets/text_cjk.ntpack 7.571 MB
Resources 7.583 MB
Total 7.634 MB
Textured Quad

Textured Quad

336.879 KB engine + 782.026 KB resources
Size breakdown
index.html 1.255 KB
index_simd.wasm 327.846 KB
index.wasm 311.510 KB
index_simd.js 7.778 KB
index.js 7.773 KB
Engine 336.879 KB
assets/base.ntpack 774 B
assets/lenna_hires.ntpack 777.788 KB
assets/lenna_pixel.ntpack 3.482 KB
Resources 782.026 KB
Total 1.093 MB
3D UI

3D UI

442.074 KB engine
Size breakdown
index.html 1.254 KB
index_simd.wasm 432.620 KB
index.wasm 416.084 KB
index_simd.js 8.200 KB
index.js 8.195 KB
Engine 442.074 KB
Total 442.074 KB
UI Showcase

UI Showcase

500.739 KB engine
Size breakdown
index.html 1.255 KB
index_simd.wasm 491.070 KB
index.wasm 475.259 KB
index_simd.js 8.414 KB
index.js 8.409 KB
Engine 500.739 KB
Total 500.739 KB