This is a SceneKit project that uses more advanced techniques like fullscreen shaders, procedural level generation, chunk loading/unloading, as well as mouse/joypad first-person controls.
There are quite a few performance techniques that took me some time to work out in this project, so I thought it would be best to open source it - needs of the many, etc.
Many thanks go to the following people, without whom I'd never have got this far with SceneKit:
Jeff LaMarche, Tom Irving, Wade Tregaskis, and Thomas Goossens