I am off again to the Game Developer’s Conference (GDC) this year and I promised I would write about it so here it is. Firstly I spent most of my first 2 days at google sponsored talks. All of them were excellent even if I had no specific interest in the area
Here are a few things I learned that others might find useful.
- canary is the name of the build for tip of chrome.
- WebGL inspector is useful for debugging
- setInterval is how we are currently timing our rendering loop. Problem is that if the canvas is hidden behind other windows and such, the render loop still occurs. Instead of setInterval we should be using requestAnimationFrame(draw). This will tie it into the browser’s rendering loop so that pages that are not shown, will not get rendereed. It is supported in FF4/chrome 10, and we probably should be moving to this in our code.
- While there was no information of the availability of WebGL on iOS, the speaker did say that there were spec changes made specifically for iOS.
The second talk of the day was on cloud computing. The third was on Native Client (chrome feature that lets you program in other languages in the browser.) The last talk of the day was on Youtube and the integration of youtube video into a first person shooter who’s name escapes me at this moment. I did finally learn why we weren’t able to get a non-flash video from youtube though :P. Last year we wanted to take a youtube video and use it as a texture on a model. We can texture a video onto objects without problems but couldn’t do it with a youtube video because we couldn’t get it to come back as a non-flash video. So, the new video embedding model uses an iframe. If your device isn’t flash capable you will be served the non-flash version of the video. Apparently if you opt into the html5 version, you can get the non-flash video with the iframe. However, you will still need to get it with the youtube player (ie not raw video)
I started the day at physics tutorial but it was pretty similar to the one they gave 4 years ago so I decided to head off to the android talk on ndk. The google android talks were all packed. I barely got into the talk.
Anyhow, ndk lets you code C/C++ for android as opposed to Java. It is still suggested that you do your UI in Java. One of the major points that they made was that when you create android apps, you should make sure that you don’t put everything (esp. process intensive things) on your main UI thread.
Their session on OpenGL ES on android was also really well done. Again, it was playing to a packed audience. The interesting part is that much of performance tuning he talked about will also apply to webGL, something we should look at for fine tuning our libs.
Side note…Google has the bestest swag ever! On the first day I got a little blue card at one of the html5 talks to pick up a gift. I thought it would be a tshirt or something like that which would be awesome since I am trying to build a swag wardrobe collection :P. However, when I got there, I was given a chrome OS netbook! how totally awesome is that 🙂 Thanks Google! You guys rock.
I also attended the session on emerging tech for the social and online game. They talked about molehill (think low level 3D api for flash). Vlad was also there to talk about WebGL and there was also a talk about JSGameBench which is a benchmark project specifically for drawing.
All in all the first 2 days of GDC has been totally awesome and I’m looking forward to the start of the main conference tomorrow. Will keep you updated.