Optimizing Graphics Performance on iOS and Android

The main device is used during the development of Don’t Feed the Trolls is an Acer Iconia Tab A500. It’s quite powerful and I never met performance issues with it. Of course, I tested the game on many other iOS and Android devices. I was surprised to discover strong performance issues on a HTC Desire. In… Continue reading Optimizing Graphics Performance on iOS and Android

How to create a shake action in Cocos2d-x (with source code)

While working on my next game Don’t Feed the Trolls, I was looking for a “shake effect”. When the player feeds a troll, I want the whole screen to shake to improve visual feedback. A shake effect is very easy to implement, so I quickly hacked in my code to see if it was un… Continue reading How to create a shake action in Cocos2d-x (with source code)

Why and how to pack your textures for iOS/Android

Introduction When I developed Don’t Feed the Trolls on X360 (using XNA), I did not optimize the textures files of the game : the game was very simple, the final hardware (X360) is very fast, so it was not necessary. I arranged the sprites so that I could get their coordinates in-game very easily. Every… Continue reading Why and how to pack your textures for iOS/Android

Android Game Development : from Java to C++ (with cocos2d-x)

Introduction In a previous post (here), I was talking about my progress with libgdx, a Java library for Android (and other platforms). Shortly after writing this article, I realized that there is a big disadvantage that I forgot to talk about. It’s so big that it made me stop using libgdx : It is not… Continue reading Android Game Development : from Java to C++ (with cocos2d-x)

Android Game Development with libGDX

After selling games on PC, Mac and Xbox 360, I want to develop games on mobile plaforms, and I will start with Android. I chose Android instead of iPhone for two reasons: It’s cheaper: my Mac is a PowerPC and you need a Mac Intel for iPhone development. Also Android phones are cheaper than iPhones.… Continue reading Android Game Development with libGDX

Useful C# and Visual Studio tips you might not know

While working on my next game, I tried to keep notes of interesting tips I used. They are related to C# and Visual Studio. Overriding ToString() When debugging or prototyping, you often need to display complex objects on the screen on in the debugger output. A handy way to do this when dealing with complex… Continue reading Useful C# and Visual Studio tips you might not know

How to recover a file in Google Chrome cache (gzipped or not)

Exceptionally, this article is slightly off-topic and will not be related to game development. I wished I could find an article like this one a few hours earlier, therefore I’m writing it myself, hoping to help people fixing the same problem I had. The context Earlier today, I was logging onto my ftp to download… Continue reading How to recover a file in Google Chrome cache (gzipped or not)

My Experience Converting from XNA Game Studio 3.1 to 4.0

Microsoft released a big update to XNA Game Studio with version 4.0. The main improvement is Windows Phone 7 support. I will probably not develop for WP7 (see reasons below) but I still need to upgrade my current Xbox 360 project from XNA 3.1 to 4.0. The process was not as smooth as I though… Continue reading My Experience Converting from XNA Game Studio 3.1 to 4.0

3 Simple Tips to Avoid Memory Allocations with XNA/C#

Long time without posting. I’ve spent a lot of time working on the game, contracting art, buying sound effect and music assets, designing the levels… New screenshots/video should come very soon. Anyway, back on topic: when developing from C++ to C#, I found out very strange that you can allocate memory but you cannot free… Continue reading 3 Simple Tips to Avoid Memory Allocations with XNA/C#

Yes, multi-threading in XNA/C# can be that simple!

Multi-threading is often causing problems for multiple reasons: synchronization, deadlocks, concurrent access to memory… But with my recent experience with multi-threading in XNA/C#, you can really do simple and efficient optimizations. While looking for possible performance improvements in Spring Up Harmony for Xbox 360 (PC), I have seen a simple situation really suited for multi-threading.… Continue reading Yes, multi-threading in XNA/C# can be that simple!