Sometimes the best way to learn how something works is to just do that thing. Even better if you can combine two things and do them at the same time! Take playing around in a game engine and solving a Rubik's cube. That's pretty much what a fellow by the name of "maurits825" did when he crafted this cube solver in Unity.
What makes it so interesting is the way maurits825 implemented the algorithm -- it's based on his own way of solving a Rubik's cube, rather than an established method. A comment on maurits825's post links to a Wikipedia page explains various ways to solve a Rubik's cube, which states it shouldn't take more than 20 face turns (and a maximum of 26 quarter turns).
As you can tell by the animation here, maurits825's method requires a few more than that, but it's nice to see your own work come to life like this.
It appears the solver is a work in progress, though I'd feel kind of sad seeing this optimised. There's something very... human.. about the way it figures out the cube in its current incarnation (ignoring the speed, of course).
Rubik Cube solver (WIP) [Reddit]