Giter Club home page Giter Club logo

SGI demos from long ago, running in your browser today.

Old problems require modern solutions.

This is the original SGI demo source code, compiled for the web using Emscripten and SDL2. Rendering is done using an IRIS GL software rasterizer from the Alice 4 project. Event handling is done by SDL2, with events translated into GL's event system. Each demo is a separate web page, with its own Javascript + WASM compiled by Emscripten from the original C/C++ source. Minimal modifications have been made to the original source, in order to run in the browser and to work with compilers 35 years newer.

Working demos:

Work in progress demos:

  • Flight (cockpit glitches, planes too slow in web version, night mode 'shimmers', no network play)
  • Newave (no mesh editing, no popup menus, only wireframe)
  • Arena (no network play)

Next up:

  • Electropaint, Cedit, any other IRIS GL demos I can find

To do:

  • Arbitrary window size
  • Triangle rendering via OpenGLES/WebGL
  • Popup menus
  • Rudimentary context for each demo: name, author, year (as text in lower corner), code link
  • Virtual mouse and keyboard:
    • Only display virtual keys and mouse functions used by the demo; use demo's qdevice() calls to determine this
    • Displayed as transparent virtual mouse and key pictures overlaid on demo
    • On always for touch devices
    • On/off for mouse/keyboard devices, as hints
  • More demos, all the demos. WIP: IRIS GL, TBD: OpenGL, GLUT, Inventor, Performer
  • Run GL demo in its own WASM worker, to avoid slicing up the code for SDL's event loop
  • Description/history/context for each demo - can obtain some descriptions from .Info slide files
  • Man pages

Credits:

sgi-demos's Projects

avstream icon avstream

O2 IRIX demonstration for streaming video to a texture including audio

electropaintosx icon electropaintosx

MacOS X screensaver port of Kent Rosenkoetter's clone of SGI's Electropaint screensaver

electroportis icon electroportis

The famous SGI/IRIX ElectroPaint(tm) screensaver by David Tristram, ported to Windows

epanos icon epanos

ElectroPaint Automatic No-source Object reaSsembler (a MIPS to C decompiler)

fsn_jurassic_park icon fsn_jurassic_park

FSN settings to recreate scene where they lock the door with an SGI computer in Jurassic Park

gl4es icon gl4es

GL4ES is a OpenGL 2.1/1.5 to GL ES 2.0/1.1 translation library, with support for Pandora, ODroid, OrangePI, CHIP, Raspberry PI, Android, Emscripten and AmigaOS4.

glshim icon glshim

OpenGL 1.x driver shim for OpenGL ES devices.

glues icon glues

fork of http://code.google.com/p/glues/

igl icon igl

Archive of IGL obtained from https://web.archive.org/web/20060506001910/http://users.volja.net/wesley/igl.html

open-inventor icon open-inventor

Open Inventor is an object oriented scene graph library implemented in C++ layered on top of OpenGL. It was originally developed by SGI.

openpfb icon openpfb

Open-source SGI Performer file loader

pirix icon pirix

Emulation of SGI's IRIX Interactive Desktop on Raspberry Pi (and any other platform having Motif Window Manager).

sgi-alice4 icon sgi-alice4

Fork of https://github.com/lkesteloot/alice/alice4/software, for demo source and libgl.

sgi-demos icon sgi-demos

SGI demos from long ago, running in your browser today.

sgi-efs2tar icon sgi-efs2tar

Tool to convert SGI efs filesystems to tarballs, with auto generation of tar filenames to make batch conversion easier.

sgi-epm-extract icon sgi-epm-extract

Fork of EPM to extract SGI inst tardists (rather than create them as EPM does)

sgi-extract icon sgi-extract

A collection of tools for extracting files from SGI discs. NOTE: Work in progress.

sgi-fonts icon sgi-fonts

Collection of fonts from SGI systems and tools for rendering them.

sgi-imageformats icon sgi-imageformats

Library for decoding obscure graphics formats, such as Targa (.TGA), Sun raster (.RAS, .SUN), ZSoft (.PCX), Netpbm (.PPM, .PGM, .PBM, .PNM), Amiga (LBM, PIC), SGI, MacPaint, and DICOM.

sgi-x icon sgi-x

Extract SGI installation files (.idb, .sw, etc.) for all major IRIX versions (3-6).

vst-converter icon vst-converter

Converter for 3d mesh "VST" (ViSTa) files and PFB (SGI OpenGL Performer) into modern 3d mesh files.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.