Static Razor

Release date : 2019

Programming languages

  • c#
  • css
  • html

Libraries and frameworks

  • Razor Template Engine
  • System.Composition (MEF)
  • Windows Presentation Framework (WPF)
  • Newtonsoft JSON
  • MarkDig
  • HTML Agility Pack
  • NLog
  • System.Reactive (RX)

Public repositories

Description

This website was built with Static Razor! Description coming soon!

Level Viz

Release date : 2016

Programming languages

  • C++

Libraries and frameworks

  • Unreal Engine

Public repositories

Description

Architechture vizualization project.

An Unreal engine plugin that adds a new editor for easily setting up interactive tours which you can then display on a computer or tablet with simple, minimal interaction. Includes the ability to transition into a topdown plan view.

Here is a video demonstrating a tour :

BenriImage

Release date : 2016

Programming languages

  • ANSI C
  • C++/CLR
  • C#
  • F#

Libraries and frameworks

  • stblib
  • Windows Presentation Framework (WPF)

Public repositories

Description

This project consists of an ANSI C library with a single header dependency on a stblib header for loading images into memory. It performs various basic image operations to images such as rotation, scaling and color space conversions.

There is also a separate layer that wraps the c library in C++/CLR classes which are then consumed by a small WPF frontend application.

There are two reasons I did this project. To have a playground where I can easily try out different image manipulation algorithms without setup friction. The other is often I would want to right click an image in explorer and quickly perform operations on it. Specifically when uploading images to Tumblr that were too large and would get rejected.

Monorush

Release date : 2014

Programming languages

  • c#

Libraries and frameworks

  • Monogame

Public repositories

Description

Monorush (name subject to change) is a 2D framework I started working on early 2014. It is essentially a redo of my previous Heliopause engine but with the many lessons I've learned about programming in the 3 years between their conceptions.

I've switched the engine to run on the Monogame framework over the XNA. This is a trivial switch but it should be noted that the engine is specifically built to target Monogame if XNA and Monogame in the future have different interfaces.

The current features are very basic such as scene management, multimedia controls and a basic component system to encourage creating objects via composition and reduce the likelihood of having deep inheritance hierarchies.

I've developed a small shooter game using this framework as a proof of concept and am looking forward to a time where I can work on this project more. In the future I'm looking at removing the monogame backend for my own native backend solution. Here is a video of the shooter in question :

PSMRush

Release date : 2013

Programming languages

  • c#

Libraries and frameworks

  • Sony PSM Libraries

Public repositories

Description

PSM-Rushlib is a framework for developing games for the PSP-Vita and other Playstation Mobile (PSM) enabled devices such as the Xperia Play and Xperia Tablet Z. It is focused on making a framework for quickly and easily developing 2D games for PSM devices. I currently use it in my first game NekoRush and am using it in another educational game I’m currently developing.

The current features are very basic such as scene management, multimedia controls and a basic component system to encourage creating objects via composition and reduce the likelihood of having deep inheritance hierarchies.

Here is a video of NekoRush during its development

PAEA

Release date : 2012

Programming languages

  • c#

Libraries and frameworks

  • XNA
  • Entity Framework
  • ASP/MVC3

Public repositories

Description

PAEA is a research project for which I was hired as a programmer to implement a multi-tired application consisting of many software components that all had to communicate including a game, game engine, web application and backend software components.

The project is funded by the University of British Columbia and the British Columbia Institute of Technology.

Heliopause

Release date : 2011

Programming languages

  • c#

Libraries and frameworks

  • XNA

Public repositories

Description

The Heliopause engine is a 2D engine/framework written in c#/XNA/.NET. The focus is on making a library and toolset that allow people to very quickly prototype 2D games of any kind.

My reasons for making this library were that I wanted to take the overall ease of use of Flixel but make certain features such as state mangement and sprite animation more robust. By using XNA I can also draw many more sprites onscreen than I could with Flash/Flixel.

Over the years I've used this framework for many different projects and game jams. It's been quite a workhorse for me but is now in retirement. By trying to emulate Flixel and it's heavy hiearchal design I started to bump into development blockers related to deep inheritance chains. These days if I want a C# 2d solution I use my monorush framework which has a very flat hiearchy. Nevertheless making this library and using it over the years was immensely educational and it will always have a special place in my heart because of that.

If you are interested in using this I would recommend using my Monorush framework instead. While it's not currently as feature complete I believe it will lead to smoother development and I do plan to port over features from this framework to monorush at some point. I mainly plan to port over the more robust animation system.

Here is a video of a small test game I did with a friend during its development.