About Me

My name is Jonathan Glines. I am passionate about Linux, computer graphics, C/C++, and computers in general.

I recently graduated from Idaho State University with a bachelor's degree in Computer Science.

This website is where I organize/dump the projects I have worked on or am currently working on. Most of these projects are fun things I do in my spare time. For an overview of my work experience, take a look at my résumé.

Recent Projects

Shelltoy Terminal Emulator (WIP)

A graphically embellished terminal emulator inspired by both Shadertoy and GLSL Sandbox. Shelltoy would not have been possible without libtsm, the terminal-emulator state machine library. Shelltoy uses OpenGL, SDL2, and Freetype, among other libraries and APIs.

libmc Isosurface Extraction Library

An implementation of the marching cubes algorithm and related isosurface extraction algorithms in C, with C++ bindings. Some algorithms implemented include dual marching cubes as described by Nielson as well as a partial implementation of Eric Lengyel's Transvoxel Algorithm.

A poster explaining libmc was created for the Idaho Conference on Undergraduate Research.

The libmc library was developed in conjunction with research on generalized Voronoi diagrams performed by Dr. John Edwards at Idaho State University. Dr. Edwards' research can be found on his ISU faculty page.

3D WebGL Billiards

An undergraduate project as part of the Advanced Computer Graphics course at Idaho State University. This project implements a fully playable billiards game that should work in any web browser supporting WebGL. The game includes simple ball and pocket physics, replays, intuitive mouse controls, and sampled distance field text, all developed within two weeks.

Ray Tracer with Global Lighting

Another undergraduate project for the Advanced Computer Graphics course at ISU. This is a ray tracer using Monte Carlo integration to approximate global illumination. A k-d tree structure is used to intersect rays with arbitrary meshes such as the Stanford Bunny model shown below.


If you would like to contact me about anything, feel free to email me at .