March 30th, 2020
I was playing around with fractal brownian motion (fbm) as a form of generating computer graphics noise.
I implemented a terrain generator based off of fbm for land, water, and clouds.
The generation of the land as a heightmap from the resulting values came out quite nice, and I was able to generate fairly decent types of terrain in OpenGL Shader Language.
The approach I used allowed me to perform nearly all of the generation for the terrain in shaders, along with the water and clouds.
The water itself was also an interesting experiment, which was a simple sin wave modifed with a light dash of fbm to give it an uneven wavey texture.
The results here were quite surprising in terms of quality, and this is something I will certainly look into down the road.
Mar 30th, 2020
Various search algorithms that I implemented on a simple HTML5 implementation of Pacman. I was interested in seeing how various heuristic search techniques would compare against uninformed search approaches. What was interesting is how quickly a breadth first search can finish a level of Pacman, even if it runs through lives rather quickly. Even if it doesn't play as optimally as would be disired, it still plays better than most humans. In addition, there may be some interesting follow up research with regards to how longevity and survival can factor into using search on Pacman.
Feb 22nd, 2020
A data visualization tool for observing the underlying structure of data in an agnostic fashion. This version is still a work in progress, and is the 5th iteration of a tool that I wrote back in 2014.
March 8th, 2017
While experimenting with verifying the structure of HTML (from Metatest and Sitecheck before), I went ahead and spent some time to write up a simple parser in php. This can go through most HTML and convert it into json, which can then be worked on by other programs. The plan was to utilize this as a step in later building and processing websites as JSON, and then decoding them back into HTML, but I decided to leave it at this.
After Parse went open source, we had already been using their php SDK for some time at Axolsoft, and we had to figure how to handle the migration. Over time I ended up working more on the sdk itself, contributing to it, and eventually taking it on as a project of my own. It was definitely a lot of fun fixing bugs, introducing features, managing PRs, and bringing the test suite up to spec.
July 14th, 2016
A small programming language that I wrote some time ago. Based heavily off of Lua, and a means by which to test some theories and ideas of developing a simple language.
An old app that I wrote that was an iOS version of the online Metatest tool I had written before.
A web based tool for testing metatag integration on websites. Verified and checked for proper integration of third party tags to enhance posting and sharing on twitter and facebook. The primary means was a test to apply some complex regexes to attempt to parse HTML, which being inherently irregular needed some programming around it to handle some odd cases. Inadvertently, this also turned out to be a handy approach towards verifying the structure of an HTML document.
After Bit Shooter I wanted to see what it would be like to create an entire application interface purely in OpenGL. This was probably one of my favorite applications that I built, one which created a fully dynamic interface for a Hangman game. In addition, it gave me an excuse to play around with implementing some bluetooth networking code, and it ended up working out quite well. Creating the animation of the letter tray at the bottom was really pretty neat too.
Started working at a new business called Axolsoft as the Head Software Engineer. The majority of my work was programmer-centric, involving developing a set of internal tools, several online portals, and when possible automating any standardized procedures.
A simple soundboard application, made up of the leftover components from developing BitShooter. Long since defunct now.
The first game that I ever wrote for Android in early 2013. Utilized OpenGL, and was eventually written across to iOS as well.