The Twelve-Coin Problem

The Twelve-Coin Problem is a logical thought exercise based on Information Theory that asks you to uniquely identify an item in a set. More specifically: You are given twelve coins, one of which is counterfeit. The counterfeit coin looks identical to the other eleven, but weighs either slightly less or…

2D Only Perspective Transform

One project that came up during my Master's program involved taking an arbitrarily manipulated pair of vectors (to form an oriented quad) in 2D and extending the information to derive the single-point perspective it represents. The goal was to subdivide the provided quad in a perspective-aware manner. The two main…

Calculating Cubic Bezier Bounds

One advantageous operation is rendering a Bezier curve when working with path nodes. In most cases, you do not care about the bounds of the curve itself because it is a line, the drawing area is of fixed size, or the view is movable. On the other hand, wanting to…

Delete commits before date

One thing that has come up at work is the size and speed of our git repository. It is over 4GB with more than 15,700 commits and just under 46,000 files. This makes things very slow. It has also made cloning the repository physically impossible as the server…

Finding Initial Velocity Given Angle and Destination

A physics problem typically involves using a given angle and velocity to determine where a projectile lands. This is all well and good, but when working on a game with projectiles, you already know where it should land and at what angle it should be launched. This article shows the…

Particular Problems with Public Variables in Unity

The Unity documentation [http://docs.unity3d.com/Documentation/Manual/Scripting.html] it indicates that all public variables are made available in the inspector for direct editing. While this is handy, it is also dangerous. This article will cover a few things regarding public variables, and how to avoid them in…

Avoiding Long Compile Times

Long compile times are a real chore when it comes to testing things. It is especially cumbersome when all you are doing is making small edits resulting in 2 seconds worth of editing, and 2 minutes waiting for compiling. Problem One place where this is particularly the case is shader…