PhysX WASM for Webaverse client

Introduction

Webaverse uses a WebAssembly Build of PhysX, a C++ open-source realtime physics engine middleware SDK developed by Nvidia. It is compiled with EMSDK.

Setup Requirements

Get Webaverse PhysX Build (APP-WASM)

  • Fork and clone it to your prefered directory.
  • For it to work with the current build you need to install version 2.0.6
  • Clone it and then run these commands inside the emsdk directory: ./emsdk install 2.0.6 ./emsdk activate 2.0.6

Compilation

  • Within app-wasm point to the emsdk directory using this command: source /home/user/emsdk/emsdk_env.sh change it to your own path.

  • Now inside app-wasm run this to compile: ./compile.sh

  • Congrats! If it compiled without errors the finished build should be in app-wasm/bin

Use it in Webaverse

  • Copy the geometry.js and geometry.wasm files from app-wasm/bin
  • Paste them into app/public/bin in the Webaverse app
  • Done! Now reload the Webaverse app and try out your own PhysX configuration!

PhysX Docs