Book Image

Mastering iOS Game Development

By : Peter Ahlgren, Miguel DeQuadros
Book Image

Mastering iOS Game Development

By: Peter Ahlgren, Miguel DeQuadros

Overview of this book

iOS is an operating system for Apple manufactured phones and tablets. Mobile gaming is one of the fastest-growing industries, and compatibility with iOS is now becoming the norm for game developers. SpriteKit is part of the native SDK from Apple, and enables developers to make simple entry into game development without unnecessary overhead and a long learning process. SpriteKit also provides other functionality that is useful for games, including basic sound playback support and physics simulation. In addition, Xcode provides built-in support for SpriteKit so that you can create complex special effects and texture atlases directly in Xcode. This combination of framework and tools makes SpriteKit a good choice for games and other apps that require similar kinds of animation. Become a master in iOS game development through this fast and fun guide! In the beginning, we’ll tell you everything you need to plan and design your game. You’ll then start developing your game through step-by-step instructions using the various built-in technologies of Xcode. From there on, we discuss how to deploy your game to the iOS App Store, as well as monetizing it to make more revenue. You will also learn advanced techniques to improve your game playing experience, including better multi-tasking, improved performance optimization, battery management, and more. To end the book off, we’ll show you how to update your game with different features, then port the update to the App Store.
Table of Contents (15 chapters)

Managing effects


As we've been programming our game so far, we have been haphazardly creating without thinking about how our effects will run on older devices.

Have no fear! Because we can detect which device the player is using and adjust our particle effects and the number of enemies that will spawn on the screen at a time.

To begin, in our GameLevelScene.m file, we will add the following line of code at the top:

#import <sys/utsname.h>

This framework will allow us access to detecting the exact device we are working on.

Just under the @implementation line, add the following function:

NSString* deviceName()
{
    struct utsname systemInfo;
    uname(&systemInfo);

    return [NSString stringWithCString:systemInfo.machine
                              encoding:NSUTF8StringEncoding];
}

Now, if you want to see which device appears, you can add the deviceName() function to the NSLog function in our init section, which would look like this:

NSLog(deviceName());

So, your log will now display...