Add web assembly functionality to 3D websites

LLDB debugger (included) may require Python 3.10 to be installed.

15th May 2023: Version: 0.5

Fixed: Simple example cleans up correctly.
Added: Particles example demonstrating how to dynamically create & destroy content.

- Includes lldbg GUI debugger.
- WASI upgraded to 20.0
- LLVM tools upgraded to 16.0.1


<><> The Infinity / XSG secure programming environment is delivered via WebAssembly.

At this time, the only supported XSG Web Assembly source language is C++, which is compiled using WASI/WASM build of clang, included in our SDK.


Infinity is only available for Windows at this time. Hence, we recommend you develop on Windows too, so you can test your work directly.

Source code to this amazing game is included within the SDK - take it further or build something else :)



After installing latest Infinity on a compatible system, please unzip the SDK somewhere.

From a command prompt, navigate to [xsg_wasm_sdk]\examples\simple

> make_d

... to compile our simple example in debug mode.

If that compiles without errors, as it should, run it as follows :

> run

Use ALT-F4 to terminate Infinity when you're done.

The SDK examples start without the standard browser user interface for speed - this can be adjusted in the run.bat batch script to your pleasing.

Next, try running the example under our visual debugger :

> debug

From the debugger, open source file app.cpp and set a breakpoint by double clicking on the line you wish to break at.
Standard debugger tools are available as shown in the tutorial video above.

Try the other examples, then begin your own experiments.

Welcome to the Secure XSG 3D web.

SDK Documentation coming soon, for the time being, please inspect [xsg_wasm_sdk]\sys\infinity


1. Why not WebGL or WebGPU ?

There's nothing *web* about WebGL or WebGPU.
These technologies deliver 3D onto a page by driving native graphics interfaces via using javascript - in effect a canvas.
Every "Web" GL/GPU engine is different, so there's no way to hyperlink from content delivered in one applet to content in another.
Each time you visit a page with "Web" GL/GPU content on it, you have to download the entire graphics technology engine it's using to deliver page specific graphics functionality.
If all you want is your stuff shown on a page in a standard browser, "Web"GL/GPU get you that.
It's important to note that this approacxh doesn't deliver any kind of a web. A web links content from different sources together & provides inter-operability.

This is why Advance Software has invented XSG - a 3D equivalent of HTML and a 3D web browser that demonstrates it works - so we can deliver and use the 3D web.

2. Do you have to wear a Virtual Reality headset to use your technology ?

No, this is optional. You can run Infinity on a standard screen or on a compatible VR headset.

Infinity is compatible with Oculus Rift and all OpenVR compatible devices such as HTC Vive (via SteamVR - required).

Support for other popular headsets such as PiMax and Microsoft Mixed Reality devices to follow.

Secure Programming Environment