Skip to content

notnullgames/null0

Repository files navigation

This combines ideas from pntr_app_starter with wamr to make null0 game-engine (native runtime & libretro core.)

You can see a simple web-demo here or read the docs.

# build native-host
npm run build:native

# build example carts
npm run build:carts

# run local watching web-server with web host
npm start

# build web, native, and carts in parallel
npm run build

# delete all built files
npm run clean

# generate shared header for web/native host
npm run gen:host

# generate cart-header for C carts
npm run gen:cart_c

# generate cart-header for javascript carts
npm run gen:cart_js

# generate cart-header for nelua carts
npm run gen:cart_nelua

# generate API.md
npm run gen:api_docs

distribution

To distribute your game, you can either save your cart as main.null0, alongside the native runtime (and name that whatever you want) or you can embed it all in one executable:

# linux or mac
cat build/host/null0 build/carts/input_c.null0 > tester

# windows
copy /b build/host/null0.exe+build/carts/input_c.null0 tester.exe

todo/ideas

  • ui
  • tiled map/sprite support
  • physics
  • there is a lot of hardcoded enums/types in codegen. Use types.yml instead

thanks

See THANKS for acknowledgement and thanks for all the great help & code I received to make this.

license

See LICENSE for licensing information.

About

Null0 native game-engine runtime, C library, and web-host

Topics

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Contributors 2

  •  
  •