Continuous Integration with Jenkins

I don’t think I should go all over  the “Why is continuous integration important?” topic all over again!, there are many great articles about it ( I recommend you to read Build Server: The Hearbeat of The Project by Noel Llopis ). So, we know that continuous integration is great, it avoids several things that can slow us down, or can even degrade the quality of our products.

Some of this things are:

  • Making sure our project builds on all platforms.
  • Making sure the Unit Test and Integration Tests pass on all platforms.
  • Creating different build setups for Beta Testers / Production / Debugging
  • Letting the person that broke the build know where did it happen immediately.

This things are great when working alone as a “Single Man Team”, but I think continuous integration is a must when working on a 2+ persons team. Seriously, I can’t count the number of hours saved by using C.I, it’s just so great to be able to send the beta testers a URL address so that they can get the “goods” :D .

For this week iDevBlogADay post, I will talk about how I use Jenkins to build Xcode projects. Remember that you can always follow me on Twitter if you want to contact me directly :)

(more…)

More



Automating Xcode 4 Template Generation

Hello again!,

It’s a nice day in the French Riviera ( or Côte d’azur )!, it’s been more work than pleasure here, but I guess life is good :D

Nice Ville

In this iDevBlogADay post I will describe how we managed to automate our needs for Xcode 4 template generation. We wanted to automate it because we use a little Engine here at Gando Games (GG), and project templates where more or less a must for us. I have been reading everywhere about project templates in Xcode 4, and I must admit that it’s a rather obscure process. In order to understand a bit more, I followed the Boreal’s Kiss “A minimal project template for Xcode 4” article. After reading it, I realized that since our toolset was changing quite often, we where going to need to somehow automate the generation of Xcode 4 Templates for our internal engine, plus I thought it was a cool thing to do :)

(more…)

More



Fast Guide: Getting started on iPhone Game Development

Before getting into the actual article I want to remember everyone that the rules for iDevBlogADay have changed, and in two more weeks the current authors will be rotated out. The new system sounds very nice :) , but since Gando Games will disappear from the official RSS , if you guys want to keep reading I encourage you to subscribe to our RSS feed :D .

Now, the article:

I get this question a lot, there many books in the subject , but I’m totally sure that you can get started without even looking at them. For today’s iDevBlogADay post, I made a “straight to the point guide”.

Note: This guide is also valid for iPod Touch and iPad.

What you’ll need:

* A Mac ( you could get away with VMware but I won’t go into that ) [ 699 USD$ ]
* Sign-up as an Apple Developer [0 USD$]
* Xcode [Free Download as a registered iOS developer ]
* Cocos2d [Free Download & Open Source]
* Google

(more…)

More



Tutorial: Using luabind to integrate Lua with C/C++ (pt.2)

In the last week article we discussed some basic things about the luabind library and how to integrate it to your Xcode project. For this week iDevBlogADay post, I will show you how to expose some more complex C++ code to the Lua runtime.

I also want to add that I’m on vacations in Cordoba Argentina, and that this post was published ( or not :D ), using the wordpress scheduling function ( which I really hope to work without any issue! ).

(more…)

More



Tutorial: Using luabind to integrate Lua with C/C++ (pt.1)

For this iDevBlogADay post I will show you how I’m using luabind with iOS and what did I have to do in order to build it properly.

In the last article for iDevBlogADay, some libraries and options to integrate Lua to a Game/Game Engine where mentioned and even discussed a bit. Of the listed options, I ended up using luabind. Several people has asked me how does it work, and I pretend to cover the bases here. :D

(more…)

More



Game Event handling – part 1

For this first post for iDevBlogAday (Finally :D !) I would like to talk about Event Handling in Games. Game Event handling is a commonly discussed issue, and there are several ways to tackle it. In the following series of articles I will talk about it, and will also show what I’ve learned from my own research on the subject.

It’s important to state that I’m not an expert and I’m always open to suggestions, so feel free to post your thoughts so we can all learn and share our ideas.

Let’s talk about Game Events first….

(more…)

More



Tutorial: Using Anti-Aliasing (MSAA) in the iPhone

This will be a rather short but useful tutorial where we will check out how to implement MSAA Anti-Aliasing on iPhone, iPad and iPod Touch. I will also showing a difference between using no anti-aliasing and using 4x anti-aliasing in the upcoming game that we are working on in Gando Games. ( Hex Reaction ).

So first, what impact does anti-alias have in a game?

Non anti-aliased screenshot of the game.

Using 4x Anti-Alias in-game

(You can click the images to expand them)

The screenshot to the left shows no anti-aliasing at all. Notice how the edges of the Hexagons look quite  jagged in contrast to the picture at the right where you can see that the hexagon edges are far smoother. I didin’t want that kind of “jagged” look for Hex Reaction, so I decided to aim for newer devices and use 4x Anti-Alias. I mention newer devices because anti-aliasing is nice but  it does use quite a bit of processing power, so iPhone 3GS up are able to handle it with no real problems, but it’s hard to get full performance using 4x anti-aliasing on an iPhone 3G.

(more…)

More



About pushing pixels for 2d game sprites

Zombie Sprite design sketch local color 36

To talk about Medium Sized Sprite (from now on MSS) animation and design  is not an easy task for me at all, because I don’t consider myself an expert in the subject. On the contrary, I’m still experimenting a lot to try to improve my results. But it is because of this reason that the following article could be useful for the people who is just starting out in Pixel Art, or even for veteran artists who could share their experience. I won’t pretend to write an all-around Game Pixel Art Style guide, but instead I will to try to present and discuss some issues that could result (and in my particular case, have been) very useful when designing pixel based sprites for games.

(more…)

More



Choosing a 2D Physics Game Engine

Today I want to talk about a common issue among many indie/non indie developers. Deciding what third party library/engine to go with, in my particular case it was a 2D Physics to use in our current iPhone (for now) project, but the scope of the article will cover good tips that can help you to actually make your decision wether your are picking a JSON Parsing library, a Texture Loader in a platform independent way. ( You get the point :D )

Taking the correct decision is very important, an incorrectly chosen engine/library, can end up slowing you down quite a bit, thus frustrating you and your team. So you must do your best effort in order to make the correct choice.

(more…)

More