Google i/o 2012 Summary
I won’t blagh about what new products were introduced. Let’s get to the meat of things. Here are the highlights i think are relevant for us game devs.
Technical stuff: no big API additions that are all that relevant to OpenGL ES game dev shops. What’s really interesting this year are all the new analysis tools. I think they are awesome.
- Triple Buffering & vsynch: touch and rendering are now more tighly bound to vsynching. You can explictely interfer with this, sounds interesting, though i’m not sure it’s relevant to OpenGL ES apps. My hope would be that eglSwapBuffers was truely vsynched, but who knows :/. Called “Project Butter” officially, should be called “Jank-Busters”. See the “For Butter or Worse” talk below. It was also said that there was some touch coordinate prediction going on, which might mean that laggy drags are a thing of the past. I’d be worried that it fucks up multi-touch on specific devices even more :/
- Access to low-level media codecs: Not sure if really relevant, here is the release note section on that
- New Input Framework: helps you discover connected input devices and get notifications on disconnects etc. Not sure if there’s a lot of users out there actually attaching peripherals, still nice that it’s there. Release note section
- OpenGL ES Tracer: now this one is really neat. It will keep track of all GLES calls, GPU-side objects and even allows you to display (partial) framebuffer contents. The only bummer is that it works only on devices with Android >= 4.1, but it’s a neat alternative to the GPU specific tools by Qualcomm, Nvidia etc.
- Systrace: this one i’m really excited about. It directly hooks into the OS and tells you exactly what happens at what point in time, globally. It can be used in addition to the profiler in DDMS. Identify delays/performance issues with the profiler in your app, then match that up to the things that happen globally, as traced by Systrace. Really cool. Using “HTML5″ as the output format is also a very smart choice imo. Sadly there’s no official documentation on this yet, or at least i couldn’t find any. Check out the “For Butter or Worse” talk below.
Here are the talks i found interesting:
- What’s new in Android?. Most things aren’t relevant to people directly working with OpenGL ES.
- For Butter or Worse. Discusses the new vsynch and triple buffering system and demonstrates how to use the new analysis tools to some degree. Really sweet. Also, Romain Guy and Chat Haase presented this one which makes it an automatic must-watch. Jank!
- Doing more with less. Very hands-on talk about optimizing Android applications. Walks you through optimizing a real-world gallery app. Very well presented, kudos to
- Monetizing Android Apps: Haven’t fully watched it, we were busy with our hangout. Had some nice graphs and a good overview of the matter. You’ll need to watch all of it.
- Google Play: Marketing 101: Didn’t watch this at all, but i got it on my “to-watch” list.
- Dart: a modern web-language: i’m a sucker for languages that i know every skillset can use. Dart seems to be geared towards this goal. If there was a Java -> Dart frontend, we could replace the slow GWT backend eventually. Also, they have a stand-alone VM (source-code VM, not byte-code, interesting) which could be used to do all kinds of crazy things.