So these days we have taken upon a very cool project of creating a demo for the Oculus Rift. Now i wont share the details just yet as the details deserve a few photos but i solemnly swear we are up to no good.
So the core needs for the projects are that it should look good, like really good. So with this core goal in mind I ventured into a research of existing solutions and latest tech which i had been missing reading up on as for the past few months i had been very busy with Death Mile. Of course as Death Mile was created in Unity 3D and i had been working for and loving Unity for the past year I started my experimentation in it.
Being a graphics programmer at the core of my heart as i experimented with DirectX 11 tech which I only had been reading up for a long time but never got to work with, I went crazy. The endless possibilities with the now near complete exposure of all DirectX 11 properties in Unity made my mind go wild but as I ventured deeper I realized that I needed to back up a little and make a realistic goal that I can finish in the 3 weeks planned for the demo.
During this experimentation I kept working on a test scene with the amazing Marmoset Sky Shop for Unity as the core lighting solution but wasn’t testing the scene with the Oculus itself as it was supposed to be just a test scene for testing techniques and as I was waiting for my new GPU to arrive. Yesterday I finally tested the scene and ill have to say it changed my view about the project quite a bit. I had played around a bit with the Oculus before this and so I knew the resolution is quite low but I still expected it to show some details. But with the Oculus a scene with moderate realism (IBL for ambient term, simple ambient occlusion baked + SSAO, soft but stable shadows to reduce aliasing and a few tricks here and there but nothing mind blowing) could produce a very good looking image as the blurring removes most of the detail. The new problem set that I am focusing on at the moment is to improve image quality while using Oculus, an interesting paper on that, and to find alternates to problems with aliasing in Unity that need fixing too.