Shulkr WASM Bench
Cztery implementacje tego samego two-pass voxel mesher: JavaScript (baseline), Rust → WASM (wasm-bindgen), C++ → WASM (emcc) i AssemblyScript → WASM. Ten sam algorytm, te same bufory wyjściowe. Wybierz rozmiar, wzór bloków i wariant, a otrzymasz czas budowy i podgląd 3D wynikowego mesha.
Jak działa benchmark
- Wszystkie warianty dostają ten sam
Uint16Arraybloków +Uint8Arrayflag palety. - Algorytm: two-pass face-culling - najpierw zliczenie widocznych ścian, potem wypełnienie buforów
positions/normals/colors/indices. - Każdy wariant ma rozgrzewkę przed pomiarem, żeby pierwszy run nie obciążał JIT-a.
- Checksum sprawdza, czy wszystkie warianty zwracają identyczny mesh (kolumna z ✓).
- Najszybszy wariant przy danej konfiguracji jest podświetlony na zielono.