Welcome
This is the personal home page of Andre ‘Floh’ Weissflog. You probably came here for the Nebula3/emscripten demos.
If you’re interested in the tech behind these demos, visit my tech-blog, or if you’re interested in what game programming was like in the 80’s and 90’s, check out the About page.
If you want to contact me, find me on Facebook or on LinkedIn.
This page has been created with Jekyll and most of the layout has been blatantly ripped from the GLFW web site. I’ll work on making it a less obvious copy in the near future :)
Another Demo Update
I spent some more time wrestling with WebGL extensions, since the way I was doing OES_depth_texture ventured into undefined behaviour territory. Symptom was that lighting in Chrome on Windows didn’t work. Unfortunately there are still compatibility problems. Firefox 28.0 (on OSX at least) throws up on the framebuffer completeness check when attaching a depth texture as render target. This is fixed in current FF nightly. I also enabled Vertex Array Objects again, but this time with a proper check whether the extension is enabled.
Vertex Array Object Rollback
I have disabled Vertex Array Objects in the emscripten demos for now, seems like this causes issues on some configs.
Demo Update
The Nebula3/emscripten demos have been updated with Vertex Array Object and Depth Texture support, and they are compiled with emscripten’s brand new FastComp compiler backend!
Added performance stats display.
The emscripten and PNaCl demos now have perf stats enabled (FPS, number of resource bind operations, overall number of resources). Can be toggled with F1.
Added PNaCl version of text rendering demo.
The missing PNaCl version of the distance field text rendering demo has been added, the UNICODE conversion problem has been fixed. Something’s still off with alpha rendering though (there a bright halo around glyphs).
New text rendering demo.
The demos page has a new emscripten demo showing off the distance field text renderer in Nebula3!
Another 8-bit Demo
Made another of my old games work, a side-scroller called CAVE. 3 working, 4 to go!
More 8-Bit Stuff!!
Uploaded another of my old games that are working (Labyrint), also Backspace is now working in the emulators, this was actually a minor bug in emscripten SDL wrapper code.
8-Bit Stuff!!
Check out the new 8-Bit subpage! This has JSMESS emulators of the KC85/3 and KC85/4 running directly in the browser. Cool stuff :)
Updated demos
The PNaCl demos have been updated to a new ABI version, this was a last-minute-update before the official PNaCl launch, see here for details: PSA: PNaCl ABI version changing.
The emscripten demos have been recompiled with the latest incoming branch, as usual :)
PNaCl demos!
All demos now come in 2 flavours: emscripten and PNaCl. If you haven’t heard of it, PNaCl is Google’s technology to run native code in the browser (or rather: in Google Chrome). This is very alpha and probably won’t run out of the box (PNaCl must be enabled in Chrome / Chrome Canary). Also, the emscripten demos have been compiled with the latest emscripten SDK version (incoming branch).
Demo Startup Improvements
The latest emscripten incoming branch contains improvements to the internal function table which slightly decrease download size (but only a few kByte after gzip in my case), however startup time has improved a lot! Check it out on the Demos Page!
Fixed oom bug
A stupid out-of-memory bug has been fixed which showed up in the character viewer demo, caused by an uninitialized member. I also fixed the wrong mouse position in fullscreen mode. Finally, the demos have been compiled with the latest changes in emscripten’s incoming branch.
Fullscreen mode added
I added fullscreen mode to the demos. Note that the mouse position is currently broken in fullscreen mode, especially noticeable in the map viewer demo!
Demos updated (asm.js now default)
Demos have been updated:
- asm.js is now the default, “regular” demos have been removed
- recompiled with the latest ‘incoming’ emscripten version
- link-time code optimization (AKA whole-program optimization) has been enabled
- experimental support for non-compressed textures
- added an “annotated sources” page: Source Code