Morning Coffee #9

  • Great cheat sheet for converting games written with XNA 3.1 to XNA 4.0. While this is probably useful mostly for people who were doing game development for the Zune (which is based on XNA 3.1) and now want to port it to Windows Phone 7 (XNA 4.0), it’s also a good cookbook-style list for common operations like “Reset blend and depth write” or “Draw a fullscreen sprite to apply the postprocessing effect.”.
  • Great article (accompanied with the source code) on implementing tilt controls on the iPhone properly. I was working on a game in the beginning of 2010 where we had tilt controls and I remember vividly how painful it was to polish them and I don’t think we ever came up with the satisfiable result, I wish I read this article back then.
  • Thinking about using Unity for 3D games development for iPhone and other platforms – here’s a good list of all books and tutorials to help you to learn it.
  • Popular indie game Canabalt is now open-source. You can grab its source code here, even though the author warns you that the code was re-written from Flash in a record time and it’s a mess
  • Good list of all built-in fonts for iPhone and iPad along with all variations – this is an indispensable resource for anyone designing apps for iOS

Morning Coffee #8

  • Rovio (guys behind the Angry Birds) published the list of handsets that they do not support for the performance reasons. I guess this is a good list and good argument to exclude those handsets from your future games and apps, unless you have a really serious reason for not doing that:
    • Droid Eris
    • HTC Dream
    • HTC Hero
    • HTC Magic/Sapphire/Mytouch 3G
    • HTC Tattoo
    • HTC Wildfire
    • Huawei Ideos/U8150
    • LG Ally/Aloha/VS740
    • LG GW620/Eve
    • Motorola Backflip/MB300
    • Motorola Cliq/Dext
    • Samsung Acclaim
    • Samsung Moment/M900
    • Samsung Spica/i5700
    • Samsung Transform
    • Sony Ericsson Xperia X10 mini
    • T-Mobile G1
    • And in addition to that they do not support Android OS below 1.6 and custom mods.
  • New article on MobileOrchard about Event Framework for iOS. It’s pretty basic, but gives you a good start for using calendar events.
  • Guys from 360iDev started to upload new videos from 360iDev:Austin 2010. Those videos are $3.50 a pop, which is a bargain.
    • Colin Donnell – GIT Session
    • Guy English. – Pipeline. Be cheap – waste money
    • Kyle Richter – GameCenter and Beyond
    • Brian Robbins – Building a non-hit driven business. Six months later
    • Brent Simmons – Epic software re-use
    • Joe Keeley – More Quartz 2D More Quartz 2D
  • Speaking of Git clients for Mac – here’s another one – Tower. Free, while in beta and looks promising. I think I like it better than GitBox
  • Nice hack for those iOS developers, who has to keep multiple versions of iOS SDK and XCode on the same machine (most of us have to do it)
  • From the same blog, presentation slides and source code for Advanced AV Foundation features on iOS

Morning Coffee #7

Morning Coffee #6

 

First of all – Happy Thanksgiving to Everyone.

I was on the short (2 days) vacation and did some catch-up on my 7000+ Read It Later items (long story…), so some links will be fresh and some maybe a little bit stale, but I hope still very useful.

  • I started to read an article “Universal applications asset naming conventions, directory structure and macros”, which mentions 3 other articles related to the same topic, so now after reading them all I think I have a pretty comprehensive understanding of the different ways to include resources into your XCode project and their respective pros and cons. Highly recommended to all iOS game developers or even app developers in case if you’re dealing with substantial amounts of resources or need to support building iPhone and iPad apps from a single code base
  • Not really mobile-related, but a very good tool nevertheless and can be useful in mobile projects – PlantUML. Allows to build a cool looking UML diagrams, based on very simple text-based format. Here’s some samples:

    @startuml img/classes05.png
    class Object << general >> Object <|--- ArrayList

      note top of Object : In java, every class\nextends this one. note "This is a floating note" as N1 note "This note is connected\nto several objects." as N2 Object .. N2 N2 .. ArrayList @enduml



  • And a similar tool for a generic diagrams – ditaa. Converts ASCII art into pretty pictures.
    +--------+   +-------+    +-------+
    |        | --+ ditaa +--> |       |
    |  Text  |   +-------+    |diagram|
    |Document|   |!magic!|    |       |
    |     {d}|   |       |    |       |
    +---+----+   +-------+    +-------+
        :                         ^
        |       Lots of work      |
        +-------------------------+
After conversion using ditaa, the above file becomes:
round 		corner demo

Ok, that’s all for today, but I should have more stuff tomorrow.

 

Morning Coffee #3

  • Using Panorama Control in Windows 7 – website has a horrible layout with actual content squeezed in between purely formatted ad blocks, but the article itself is pretty good and panoramas are the main staple of Windows Phone 7 UI, so it’s definitely worth reading
  • Optimizing Ad Revenue with AdWhirliDevBlogADay continues to deliver quality content. This time it shows how to use AdWhirl more efficiently to achieve higher eCPM. We’re using AdWhirl for pretty much of all of our ad-supported products, so I can see us in a few days implementing techniques described in that article.
  • Android Performance: Be careful with the byte[] – Interesting optimization technique. I would recommend to be careful with that approach and in many cases it may be easier/better to just allocate required continuous chunk at the application startup and keep it (i.e. do not let garbage collector recycle it) and reuse it, but I can see certain cases when such chunked byte array can be a better fit
  • 20+ Open Source iPhone Applications to Learn From – reading someone else’s code is one of the best ways to learn programming in my opinion and this article can be a great help if you’re looking for some inspiration. I, for one,  will definitely download some of those projects for a dissection
  • GitHub Gist WordPress plugin – awesome mobile developers should use GitHub (well, there are other great similar services, but GitHub is the most popular) and they should blog (and WordPress is definitely _the_ blogging platform), so this little plugin helps to marry two great services together and bring more code samples into your blog posts
  • How to add multiple static library files with different architecture to XCode – Good tip for linking 3rd party libraries that are not always distributed as fat binaries
  • The Secret Ninja Cucumber Scrolls – Free eBook with code samles for Cucumber – very popular functional test automation tool for server-side apps (yes, I know that this is a mobile development site, but most of mobile apps still have a server-side component these days).