mirror of
https://github.com/vlang/v.git
synced 2025-09-13 22:42:26 +03:00
![]()
Some checks failed
Graphics CI / gg-regressions (push) Waiting to run
vlib modules CI / build-module-docs (push) Waiting to run
native backend CI / native-backend-ubuntu (push) Waiting to run
vab CI / v-compiles-os-android (push) Waiting to run
native backend CI / native-backend-windows (push) Waiting to run
Shy and PV CI / v-compiles-puzzle-vibes (push) Waiting to run
Sanitized CI / sanitize-undefined-clang (push) Waiting to run
Sanitized CI / sanitize-undefined-gcc (push) Waiting to run
Sanitized CI / tests-sanitize-address-clang (push) Waiting to run
Sanitized CI / sanitize-address-msvc (push) Waiting to run
Sanitized CI / sanitize-address-gcc (push) Waiting to run
Sanitized CI / sanitize-memory-clang (push) Waiting to run
sdl CI / v-compiles-sdl-examples (push) Waiting to run
Time CI / time-linux (push) Waiting to run
Time CI / time-macos (push) Waiting to run
Time CI / time-windows (push) Waiting to run
toml CI / toml-module-pass-external-test-suites (push) Waiting to run
Tools CI / tools-linux (clang) (push) Waiting to run
Tools CI / tools-linux (gcc) (push) Waiting to run
Tools CI / tools-linux (tcc) (push) Waiting to run
Tools CI / tools-macos (clang) (push) Waiting to run
Tools CI / tools-windows (gcc) (push) Waiting to run
Tools CI / tools-windows (msvc) (push) Waiting to run
Tools CI / tools-windows (tcc) (push) Waiting to run
Tools CI / tools-docker-ubuntu-musl (push) Waiting to run
vab CI / vab-compiles-v-examples (push) Waiting to run
wasm backend CI / wasm-backend (ubuntu-22.04) (push) Waiting to run
wasm backend CI / wasm-backend (windows-2022) (push) Waiting to run
Workflow Lint / lint-yml-workflows (push) Has been cancelled
|
||
---|---|---|
.. | ||
.gitignore | ||
index.html | ||
README.md | ||
screenshot.png | ||
tetris.js.v | ||
tetris.v |

Dependencies (Ubuntu)
sudo apt install libx11-dev
sudo apt install libxi-dev
sudo apt install libxcursor-dev
sudo apt install libxrandr-dev
sudo apt install libgl-dev
Compiling to JS
v -b js_browser examples/tetris/tetris.js.v
And then open index.html
with your favourite web browser.
Compiling to WASM
-
Install Emscripten from https://emscripten.org/docs/getting_started/downloads.html
-
Make sure that the environment in your shell is setup correctly, i.e. that
emcc --version
works.
. /opt/emsdk/emsdk_env.sh
emcc --version
- Compile the game to WASM:
v -skip-unused -prod -os wasm32_emscripten examples/tetris/`
- Copy the generated
tetris
file toindex.js
This can be done once. Note that this step will be removed soon, when the option-os wasm32_emscripten
becomes better integrated:
cp examples/tetris/tetris examples/tetris/tetris.js
- Run/test the game:
emrun examples/tetris/index.html
Once you have run the game, you can make changes, then just recompile (step 3), and refresh the game in your browser.