Rewrite to use GLKit.