sgi-demos GitHub Profile Summary Overview Username: sgi-demos Bio: Collect every Silicon Graphics (SGI) demo ever made and resurrect them in the browser to live on forever. Location: Mountain View, CA Website: sgi-demos.github.io Social: Twitter: @sgidemos Followers: 29 Following: 0 Featured Repository: sgi-demos Description: SGI demos from long ago, running in your browser today. Language: C Stars: 37 Forks:** 6 Repository Link About the Project The project contains the original SGI demo source code, compiled for the web using Emscripten and SDL2. Rendering uses an IRIS GL software rasterizer from the Alice 4 project. Events are handled by SDL2, translating input into the GL event system. Each demo is a separate web page with Javascript + WASM compiled from original C/C++ source. Minimal modifications enable running the demos in modern browsers. The project aims to breathe new life into classic SGI demos by making them accessible directly in the browser. Working Demos (Live via Web) Buttonfly Bounce Ideas Insect Jello Logo Twilight Somewhat Working Demos Flight Cockpit glitches, slow planes in web version, night mode shimmer effects, lacks network play. Newave No mesh editing or popup menus; only wireframe mode available. Arena No network play support. Build Instructions Mac Install Homebrew if needed. Install dependencies: Clone the repository and build: Windows Install Winget if not installed. Install MSYS2 for the clang compiler: In MSYS2 CLANG64 shell, install toolchain and SDL2: Clone and install emscripten from GitHub (use default install instructions). Add source to ~/.bashrc: Clone and build the repository: To Do Enable rendering via OpenGLES/WebGL (Work in Progress). Support arbitrary window sizes. Run GL demos in separate WASM workers/threads to handle SDL event loops better. Implement popup menus, including classic SGI menu fonts. Add more demos: Electropaint, Cedit, IRIS GL demos. OpenGL, GLUT, Inventor, Performer demos. Provide rudimentary context (name, author, year) displayed for each demo. Implement virtual mouse and keyboard overlays, customized per demo inputs, optimized for touch and mouse/keyboard devices. Add descriptions and histories, potentially from .Info slide files. Include man page live