Reflection is generally a good thing. Our team has had its bumps, but for the most part it has been pretty smooth sailing. The picture that is attached is our post mortem board. It is interesting to note that the Oculus is both a good thing and a major pain. It is always interesting to see where we came from and what we had to do to get to where we are at now. This is probably my last post. Sorry it is so short, but I am not one for many words, so… bye
Alright so EAE day just happened. Wow! There were a ton of great games and exposure for the games and the EAE program. On an annoying note the build for the oculus has a strange issue. The problem is that when you look forward everything is fine; however, if you were to say move your head the rendered image acts as if it is stuck on a plane so it is a little sickening. The other part is that if you were to look 180 degrees behind yourself the image is flipped upside down. So this coming Thursday and probably Friday I will be fixing that major game breaking Oculus issue. Classes are wrapping up. I have one more homework to do for engineering, a final project for machine learning as well as a final, thesis defense and then walk at graduation.
Job news. Gearbox was a good experience. I had an interview with several engineers. They went over my programming test and picked my brain. They were looking to see how I tackled problems and if I would be a good fit for the position and the company. I was so tired though. I got in a little late because my flight was delayed, so I went to sleep at 1:00am. Then I had a full day 10:00am to about 4:45pm of interviewing. The only sad news is that Gearbox decided to go ahead with a different candidate.
Amazon though made an offer that was going to be hard to beat. I officially accepted an offer to work at Amazon. It won’t be in video games, but the team is great and there is always the possibility that I will move around in the company and end up working in Amazon’s game department. I also am moving back to my home state of Washington so that is great.
The end is just allows another beginning. EAE has been a great experience. The professors, classes, follow classmates have all been great.
So the corn was the major contributor. We are using a shader that does not allow the billboarding to work correctly. I am looking into switching it so that it does work correctly. I used the soft tree occlusion shader and it brought the frame rate back up to the 50fps range. The only problem with that shader is that lighting is a little messed up. So I need to figure out what to do for next week.
My on site with Amazon went well. I should hear back from them on Monday. Also Gearbox said that they want to do an on site with me this Thursday. So I am flying down to Texas to interview with the tools team at Gearbox. So much to do and so little time.
Well I figured out what was wrong with the Oculus. The frame rate is terrible. I am working on getting the frame rate back up to at least the 40ish range. Part of the problem is that there is a ton of corn and other assets in the scene that are static but that are not being rendered using Unity’s static render pass capabilities. Also the dust particle effect has a little bit to do with the lag. One other thing that I am trying to track down is that Unity seems to be wasting a lot of frames on trying to sync up the Oculus cameras. I am looking into that as I clean up the scenes. That is all that happened this week. Next week I have an onsite interview at Amazon.
So I am not entirely sure what is going on with the Oculus. The problem was and still is a little. The Oculus display had artifacts in the rendering. It is only in the screen that is in the Oculus and not on the mirrored output on the screen. The artifacts were the objects would shake, and dark objects had a large and really noticeable shadow blur. I flipped a couple of flags for the Oculus in code, the overdrive and hddistortion (I think that is what it was called), it appears to have taken care of the shaking and reduced the blur effect some. I also changed some of the shadow rendering variables as well as modified how the terrain was rendering. The game is now playable in the Oculus again. I still feel that there is a shader or something that is messing up the pipeline for the Oculus. Oh well.
On the job front. Bungie said no. I had an interview with Amazon, I have been in contact with the DeNA recruiters, I have an interview with Gearbox, and Microsoft is reviewing my resume. So I have a couple of possibilities on the horizon.
So during spring break I didn’t get very far on the Oculus problem. I did however, get a system done and working for my job as an RA with the psychology department. I am stuck on a problem where the Oculus has a strange blur and jitter effect, but the screen that is duplicated on my desktop that shows what is in the Oculus does not display the same problems. I am thinking that there is an issue with deferred lighting/rendering. I am trying to look into my suspicions but I am not getting as much info as I need.
On the job front I did a programming test for Bungie. I hope that I did well enough to catch someones attention. I am still looking around at other companies, but Bungie would be a great company to work for. School is almost done and that is so crazy, come on Bungie.
Wow, GDC was quite the experience. There were a ton of people that played our game. Sadly the Oculus build did not work. Technical difficulties are a killer. The game did however, work on the monitor just fine. I met and gave my resume to the software recruiter for Oculus Rift, as well as several other companies. I met a ton of people and had an overall enjoyable experience. One thing that really annoyed me was one of the engineers at a booth, said that I wouldn’t understand what software engineering was until I had worked with a code base of at least 3 million lines of code. It really bothers me when I am talked down to, especially by people that have no inclination as to my background. Rant over.
Unity 5 was released and we ported our game over. It looks beautiful. There is however a strange problem that I have to track down with the Oculus. It was there in the last build of our game using Unity 4.6. There is a blurring effect when you move your head and it makes users, at least me, sick really fast. I am going to have to go back to a previous build and see what is causing the problems. I already checked several other demos to rule out the Oculus itself. The team is doing great. Kehan had a great idea, unfortunately it is too late to implement, for our game. He wanted to make it so the game wasn’t so linear. Our problem is that we only have a short amount of time before we have to have our game published. I only wish that he had had the idea earlier.
The upgraded text is in. It looks better because in the Oculus I can push the render distance out a little and that makes it easier on the eyes. Everyone on the team has been fixing little bugs here and there. The game looks great, there are still some small bugs and things that need to change but nothing game breaking. The other interesting thing is that the Oculus got packed before we could test the latest fixes and updates, so we are hoping that the Oculus build looks great. The cinematic scenes look great in the Oculus now. GDC is going to be awesome.
Things have been so busy. GDC is getting closer. I am still looking for a job. Google said no. Man Things are quite hectic. I had to put the vinetting for the sprint on hold as I had to make the text system work with the Oculus. I mean it was working before but it was using a GUIText and those cannot have their depth changed. So I converted the old system to use the VRGUI and it looks a lot better. I also need to fix the scenematic scenes so that the Oculus works in them and the head is locked so that the orientation sensors do not update the cameras. Engineering is kicking my butt.
The map on another plane was giving all kinds of strange behaviors. It would have an extra 203 degrees of rotation and would not stay in front of the player. Looking through the code showed nothing obvious so I removed what I had done and started fresh with a different approach. This time it worked. I also had to make a couple of modifications to other scripts because they were rendering to the GUILayer with OnGUI and it was making a strange double effect when there was no Oculus. Tracking down that bug took way too long. I am going to work on getting the third layer for text and possibly another layer for a vinnetting effect for when the player sprints. GDC isn’t too far off. We should have everything ready to go. Also we might be Xbox One developer, Bob worked his magic and has gotten us pushed along in the process of getting a dev kit and registered to be an Xbox One developer.