Projects
Mesa 3D Software Renderer In The Browser

Mesa 3D Software Renderer In The Browser

https://martinmullins.github.io/mesa-softpipe-emscripten/

This is an Emscripten build of Mesa using the offscreen interface and the Soft Pipe Gallium driver. A demo of the classic gears app is here Performance is not great for more intensive applications for example the Irrlicht Quake 3 map demo.

  • Status: live
  • Javascript
  • Emscripten
  • C/C++
Serious Sam Engine

Serious Sam Engine

https://martinmullins.github.io/ssam

This is a port of the Serious Sam Engine to the web browser. It involved modifying the open source engine code to be compatible with the web environment and then compiling it to webassembly using the Emscripten project. More development details are described here.

  • Status: live
  • Javascript
  • Emscripten
  • C/C++
PDF Table Importer

PDF Table Importer

https://workspace.google.com/marketplace/app/pdf_table_importer/646940040599

This project is a Google Docs addon that allows users to import tables directly from PDFs. The novelty is that the addon operates on the client side only ensuring privacy of the PDF documents. The development involved utilizing an existing pdf table extractor tool written in Java and compiling it to javascript and then writing an interface for the extractor to communicate with Mozzila’s PDF.js library. Furthermore, I expanded on the extraction algorithm to work on images of tables using OpenCV for cell and row detection and then Tesseract for detecting text. Crazily this feature works completely client side. Currently with 0 marketing it has been used by over 800 users and run over 12,000 times. There's a project landing page here and a demo of it outside of google docs here.

  • Status: live
  • Javascript
  • Java
  • PDF.js