Subscribe to GameFromScratch on YouTube Support GameFromScratch on Patreon

2. April 2013


As of this morning, my book is now available on Safari Books Online.




I find this personally very exciting, as I am an avid Safari subscriber, as you may have noticed from the Safari links in all my prior book related posts! Smile


If you’ve never heard of Safari, it’s an online library subscription.  You pay a monthly fee and get access to over 10,000 books, all indexed and searchable.  There are also iOS and Android applications for reading books, including the ability to take up to 3 books offline at a time.


The PlayStation Mobile Development Cookbook was also added to Chapters/Indigo as a Kobo e-book as well as Barnes and Noble in print form.


While I was on Safari, looking at the new additions, I noticed another book I’ve had my eye on was released.  Developing Mobile Games with Moai ( Amazon Link ), which is the first book dedicated to Moai related development.  I have done a Moai tutorial series here on, if you want a closer look at Moai.  It’s a very cool technology in desperate need of more documentation, so a book is certainly welcome.  I am going to have to take a closer look at this book when time permits.

General ,

26. March 2013


As I mentioned earlier this week, I just finished publishing my first book, the PlayStation Mobile Development Cookbook.  Since then it has been making it's way through the publishing chain.



Right now it is much more widely available.  



You can purchase and download a digital copy on Packt's website now.  Digital copies are available in epub, mobi and PDF formats.  The source code bundle is also available.  Just a bit of a warning, it weighs in at a hefty 158MB.  What can I say… there's lots of code in this book.  You can also order a print copy from the Packt website.



The book is also now on Amazon.  The Kindle version is available for download right now.  The print version ships on March 28th ( Thursday ).


It should also be up on Barnes and Noble and Safari Books Online shortly, I will update when links are available.   I have to say, seeing your name up on is a rather cool feeling! :)

, ,

22. March 2013


So, some exciting personal news today, I can finally unveil what I've been working on the last several months, my new book PlayStation Mobile Cookbook!  A special thanks to my reviewers and supporters at Sony and the entire team at Packt, it was a pleasure working with you all on this book.


If you have never read one of Packt's "cookbook style" books, its basically composed of a series of recipes illustrating how to perform a particular task

followed by a detailed description of what's happening as well as various tips and tricks.  In this case, its contains over 60 different sample applications illustrating how to do… well, just about everything you want to with the PlayStation Mobile SDK.  If you've run through any of my tutorials, you should have a pretty good idea of what to expect.


For a better idea of the contents of the book, here is the Table of Contents:


  • Preface

  • Chapter 1: Getting Started

    • Introduction
    • Accessing the PlayStation Mobile portal
    • Installing the PlayStation Mobile SDK
    • Creating a simple game loop
    • Loading, displaying, and translating a textured image
    • "Hello World" drawing text on an image
    • Deploying to PlayStation certified Mobile Android devices
    • Deploying to a PlayStation Vita
    • Manipulating an image dynamically
    • Working with the filesystem
    • Handling system events
  • Chapter 2: Controlling Your PlayStation Mobile Device

    • Introduction
    • Handling the controller's d-pad and buttons
    • Using the Input2 wrapper class
    • Using the analog joysticks
    • Handling touch events
    • Using the motion sensors
    • Creating onscreen controls for devices without gamepads
    • Configuring an Android application to use onscreen controls
  • Chapter 3: Graphics with GameEngine2D

    • Introduction
    • A game loop, GameEngine2D style
    • Creating scenes
    • Adding a sprite to a scene
    • Creating a sprite sheet
    • Using a sprite sheet in code
    • Batching a sprite with SpriteLists
    • Manipulating a texture's pixels
    • Creating a 2D particle system
  • Chapter 4: Performing Actions with GameEngine2D

    • Introduction
    • Handling updates with Scheduler
    • Working with the ActionManager object
    • Using predefined actions
    • Transitioning between scenes
    • Simple collision detection
    • Playing background music
    • Playing sound effects
  • Chapter 5: Working with Physics2D

    • Introduction
    • Creating a simple simulation with gravity
    • Switching between dynamic and kinematic
    • Creating a (physics!) joint
    • Applying force and picking a physics scene object
    • Querying if a collision occurred
    • Rigid body collision shapes
    • Building and using an external library
  • Chapter 6: Working with GUIs

    • Introduction
    • "Hello World" – HighLevel.UI style
    • Using the UI library within a GameEngine2D application
    • Creating and using hierarchies of widgets
    • Creating a UI visually using UIComposer
    • Displaying a MessageBox dialog
    • Handling touch gestures and using UI effects
    • Handling language localization
  • Chapter 7: Into the Third Dimension

    • Introduction
    • Creating a simple 3D scene
    • Displaying a textured 3D object
    • Implementing a simple camera system
    • A fragment (pixel) shader in action
    • A vertex shader in action
    • Adding lighting to your scene
    • Using an offscreen frame buffer to take a screenshot
  • Chapter 8: Working with the Model Library

    • Introduction
    • Importing a 3D model for use in PlayStation Mobile
    • Loading and displaying a 3D model
    • Using BasicProgram to perform texture and shader effects
    • Controlling lighting using BasicProgram
    • Animating a model
    • Handling multiple animations
    • Using bones to add a sword to our animated model
  • Chapter 9: Finishing Touches

    • Introduction
    • Opening and loading a web browser
    • Socket-based client and server networking
    • Accessing (Twitter) data over the network using REST and HttpWebRequest
    • Copying and pasting using Clipboard
    • Embedding and retrieving a resource from the application assembly
    • Configuring your application using PublishingUtility
    • Creating downloadable content (DLC) for your application
  • Appendix: Publishing Your Application

    • Introduction
  • Index


The book is quite literally at the printers right now, I'll post more details once it's available on Amazon, on Safari Books Online or in stores for purchase.  It should be in the next couple of days.  You can of course order the book on the Packt website.


Are trying to figure out what to get your grandmother for her birthday?  I have the perfect recommendation! :)


Hope you enjoy the book!

, ,

14. January 2013


One of the themes of this site has always been to focus on low cost (or free) game development technologies.  As a result, you will tend to find content here tends to focus more on products like Blender or Wings instead of 3D Studio Max or Photoshop.  I will of course share any game development related news regardless to price tag, but I tended to focus on the tools available to the most people, especially when it comes to tutorials.  As a result, one product certainly comes to the front of the pack, GIMP.  While Paint.NET is nice, the GIMP is really the only affordable (free) product that comes close to feature parity with Photoshop.


When I first started this site, I looked at compiling a list of resources for getting started with the GIMP and noticed well… it was a bit of a wasteland.  There were a couple books, mostly far out dated at this point.  Today on Safari Books, this title(Safari link), The Artist’s Guide to GIMP(Amazon link) was just added, although it was published a few months back.  So I decided to take a look at how well the GIMP world is represented in books since I last looked a couple years ago.  The answer is, surprisingly well.  So what follows is a list of books about GIMP, in chronological order of release date:


Book Title Publish Year Safari Link  
The Book of GIMP 2013 Link
The Artists Guide to GIMP 2012 Link
GIMP For Absolute Beginners 2012 Link
GIMP 2.6 for Photographers 2011 Link
GIMP 2.6 Cookbook 2011 Link
GIMP Bible 2010 Link
Beginning Digital Image Processing using Free Tools 2010  



There are more books of course, but these are the ones released in the last 2 years.  Anything much older would be rather out of date at this point. 


I have to admit, the body of work available for GIMP is vastly improved, as has the GIMP in general.  If you haven’t checked it out in a couple years, you really should.  The UI is a lot nicer now, although it still has a ways to go.

Art ,

4. January 2013


As you can see by the volume of posts here on, I took a bit of a holiday during the, um, holidays.  During that time I did do a fair bit of reading.  One book that came up on Safari is Pro HTML5 Games  ( Safari link if you also subscribe ) that got my attention.  Now, there are a ton of HTML5 game books on the market, of which I’ve read quite a few, but this one is kinda special.  It actually shows how to create a Real Time Strategy ( RTS ) game in HTML5.  I don’t believe there has been a book on creating an RTS since the title Real-Time Strategy Game Programming way back in 1999.  A book I owned by the way and it was awesome… or at least according to my memory of 1999 it was.


Anyways, I haven’t completely finished the book, mostly jumped in and read a chapter here and there, but it is certainly an interesting title.  When I finish it, I might do a proper review.  Unlike most HTML books, this one is entirely about creating a single game… obviously an RTS title.  As a result, it covers pretty much every step along the way, as you can see from the detailed Table of Contents below:




Chapter 1: HTML5 and JavaScript Essentials

The canvas Element
The audio Element
The image Element
Animation: Timer and Game Loops

Chapter 2: Creating a Basic Game World

Basic HTML Layout
Creating the Splash Screen and Main Menu
Level Selection
Loading Images
Loading Levels
Animating the Game
Handling Mouse Input
Defining Our Game States

Chapter 3: Physics Engine Basics

Box2D Fundamentals
More Box2D Elements
Tracking Collisions and Damage
Drawing Our Own Characters

Chapter 4: Integrating The Physics Engine

Defining Entities
Adding Box2D
Creating Entities
Adding Entities to Levels
Setting Up Box2D Debug Drawing
Drawing the Entities
Animating the Box2D World
Loading the Hero
Firing the Hero
Ending the Level
Collision Damage
Drawing the Slingshot Band
Changing Levels
Adding Sound

Chapter 5: Creating the RTS Game World

Basic HTML Layout
Creating the Splash Screen and Main Menu
Creating Our First Level
Loading the Mission Briefing Screen
Implementing the Game Interface
Implementing Map Panning

Chapter 6: Adding Entities to Our World

Defining Entities
Defining Our First Entity: The Main Base
Adding Entities to the Level
Drawing the Entities
Adding the Starport
Adding the Harvester
Adding the Ground Turret
Adding the Vehicles
Adding the Aircraft
Adding the Terrain
Selecting Game Entities
Highlighting Selected Entities

Chapter 7: Intelligent Unit Movement

Commanding Units
Sending and Receiving Commands
Processing Orders
Implementing Aircraft Movement
Defining Our Pathfinding Grid
Implementing Vehicle Movement
Collision Detection and Steering
Deploying the Harvester
Smoother Unit Movement

Chapter 8: Adding More Game Elements

Implementing the Basic Economy
Purchasing Buildings and Units
Ending a Level

Chapter 9: Adding Weapons and Combat

Implementing the Combat System
Building Intelligent Enemy
Adding a Fog of War

Chapter 10: Wrapping Up the Single-Player Campaign

Adding Sound
Building the Single-Player Campaign

Chapter 11: Multiplayer with WebSockets

Using the WebSocket API with Node.js
Building the Multiplayer Game Lobby
Starting the Multiplayer Game

Chapter 12: Multiplayer Gameplay

The Lock-Step Networking Model
Ending the Multiplayer Game
Implementing Player Chat



If this book sounds interesting, be sure to check it out.  Keep an eye here for a possible upcoming review.

General, Programming

Month List

Popular Comments

All posts tagged 'iOS'
Subscribe to GameFromScratch on YouTube Support GameFromScratch on Patreon

12. October 2011



Google has released their new open sourced write once run anywhere gaming library, PlayN.  Well if by anywhere you mean Android, Flash, HTML5 or Java that is.  Here is the announcement video:



In a nutshell, you write your code in Java and it cross compiles to the 4 supported formats.  It’s odd that in the video they announce iOS as one of the platforms that developers need to support ( probably the biggest platform to boot! ) and yet PlayN doesn’t support iOS.  A bit of a headscratcher there!


Anyways, I will take a closer look into PlayN and give a review of sorts over the next couple days.

Programming, General , , , ,

21. April 2011

One of the very first things you need to decide when creating a game is what your target hardware is going to be.  This affects so many things, from the engines available to you, how many polygons you can use to create your models, how large your textures can be, etc…  In many cases, like with the Unity Engine, they take care of scaling across platforms to a certain degree but you still need to be frugal when resources are tight.

This then is a general summary of the “power” available to various different platforms and devices you may choose to develop for.

First off, is the land of the PC, which was probably always the hardest to determine as there is such a wide gamut of machines out there, from people running multiple GPU Alienware machines to the Walmart special your mom plays Farmville on.  That said, there is now an extremely wonderful resource for figuring out what the “average” machine is, thanks to Steam.  Steam runs a constant survey through their client and make the results available to everyone.This shows the most popular configurations, OS, GPU, RAM, software, etc…  A virtual goldmine of information for those intending to target the PC.  Nicely, they have recently started releasing Mac statistics as well.  One thing to keep in mind though, Steam skews more heavily towards “hardcore” gamers, as you obviously need to have installed a Steam powered game to be included in the survey.  Therefore the computers that have never seen anything outside of Facebook aren’t being represented.

As of right now, the average machine as reported by Steam is:

  • Windows 7 64 Bit
  • 2 core, 2.3 – 2.7Ghz CPU
  • Nvidia GeForce 9800 GPU 1GB
  • 4GB RAM
  • 1920x1080
  • 2MB internet connection


Frankly I am actually rather shocked by a few of those stats, including the fact Win7 64 is 37% of the install base!  The very key thing to note there though is the average video card.  The GeForce 9800 was released in 2008 and is a DX10 compatible card.  Key features as given by nVidia:

  • 112 Stream Processors
  • 512-1024MB of GDDR3 memory
  • 256-bits Memory Interface Width
  • 600 MHz Graphics Clock
  • 1500 MHz Processor Clock
  • 900 MHz Memory Clock
  • Texture Fill Rate (billion/s) 33.6
  • Memory Bandwidth (GB/s) 57.6
  • DirectX 10, Shader Model 4.0, OpenGL 3.3, and PCI-Express 2.0.


So there you go, if you are targeting the PC with your game, the above is the current markets “average” machine.

The end results of the above stats are actually being dragged down quite a bit by the Mac.  If you look at the Mac market only, your average target becomes quite a bit weaker.  The “average” Mac as reported by Steam is:

  • OS 10.6.6
  • 2.3 Ghz – 2.7Ghz CPU
  • 4 GB RAM
  • 1280x800 resolution
  • NVidia GeForce 9400M w/ 256MB RAM


So, if you are going to target the Mac, be very aware the average machine has a much lower resolution screen ( Blame the MacBook! ) and a much worse video card.  9400 doesn’t sound that much worse than 9800 does it, how bad can it be?  Actually, honestly, quite bad.  The key is M, as in Mobile, which is a card optimized for battery life and heat more than speed.  A quick look at the specs on NVidia illustrate this clearly.  Fill rate is 3.6 (billion/s), almost 1/10th the speed of the 9800.  So, keep in mind if you are targeting the Mac, if you want maximum compatibility, you need to set the graphical target quite a bit lower than If you are targeting the PC.


Now we move on to devices, where it gets quite a bit more difficult to come up with an average, as there are so many different devices out there.  As of right now, there are only two and a half viable targets, iOS ( iPhone/iPad/iPod ), Android and Windows Phone 7.  I list Windows Phone 7 as a half because their market share is currently quite appalling, worse than I would have expected at this point.  That said, they are about to become the exclusive OS of Nokia, which should change their market share drastically.   Android has significant market penetration, but to be honest the state of their app market, especially for games, has been absolutely horrid.  Since I purchased my first Android phone well over a year ago, the same game has been at the top of the charts, that’s pretty sad.  On the upside, with so many phones and such a crappy selection of games, the market is wide open for a good game to excel. When Game Dev Story was released to the Android market, it instantly jumped to the front of the charts, so if you make a great game, sales are possible.  I have to warn you though, if you haven’t played GDS and you wan’t to get your own actual game completed, DON’T!  I lost a few days of my life when that game came out!


Anyways, now on to the actual phones.

IPhone 3G/8-16GB iPod


This is pretty much the 800lb gorilla in the mobile phone space.  Easily the best selling and thus most common phone out there worth making games for.  Now for the specs:

    • 320x480 screen
    • 8/16GB storage
    • 128MB RAM
    • ARM 11 412MHZ CPU


The phone supports multitouch ( registers multiple screen presses at the same time ), a camera, light sensor, 3 axis accelerometer and a proximity sensor mostly for detecting if the phone is pressed to your ear or not.  In practical terms, you have touch and tilt to work with for inputs.  Other than the main button, volume, orientation lock ( now mute for some unknowable reason ) and the power button, there are no physical buttons available to you as a developer.

Of key importance is the GPU, the PowerVR MBX Lite which according to the all knowing brainthat is Wikipedia, it is capable of 3.4 million triangles per second and 270 million pixels per second.  Now keep in mind, these numbers are theoretical maxes, reality will be much different.  Even working with maximum values, the restraints start to become clear.  At 30 Frames Per Second, that means a maximum of 113K polygons per frame.  Now lets keep in mind, there is no way in hell you are going to come even close to that number, especially once you start adding textures.  I have heard 7,000 polygons is a pretty reasonable number to use as a target.  That’s 7000 polygons to represent everything visible on your screen, your player, your world, enemies, GUI, etc.  It sounds tight, and compare to the PC it is, but at the same time, the Nintendo DS is around 2K, so if you look at it that way, its absolutely massive!

iPhone 3GS/iPod 32-64GB

This was mostly just a spec bump release and probably didn’t sell enough to target at the exclusive of the 3G install base. The new specs:

  • 320x480 screen
  • 8/16/32GB storage
  • 256MB RAM
  • 600MHZ ARM Cortex-A8 CPU
  • PowerVR SGX535 GPU


In addition to the spec bump, the screen is now finger print resistant and the camera is quite a bit improved.  The most important details from a game development perspective are obviously the increased RAM and the improved GPU capable of a theoretical 14M polygons/sec an improvement of 4X that of the 3G.  Again sadly, this power is probably going to be of limited use to you simply by the economics of the massive 3G install base.



Next up, we have the iPad.  In essence it’s a really big iPod until you look at the guts.  Speaking of which, here they are:

  • 10 inch, 1024x768 screen
  • 16/32/64GB storage
  • 256MB RAM
  • Apple 1Ghz A4 CPU
  • ( 1 Ghz ARM Cortex-A8 + PowerVR SGX535 GPU )


So, that’s it.  On top of the functionality and buttons of the iPhone, it also added in magnetometer ( compass ) but otherwise the form factor and controls are pretty much identical, well except the whole being 2.5x bigger and heavier that is.  The most interesting change is the move to the A4 processor, which is an Apple designed and Samsung manufactured system on a chip.  In a nutshell, it is an ARM 1 GHZ Cortex-8 CPU coupled with a PowerVR SGX535 GPU.  So, pretty much this means the iPad is for all intents and purposes the same speed as the iPhone 3GS from a graphics perspective, and almost twice as fast from a CPU clock speed perspective.  The biggest difference between the 3GS and iPad from a developers perspective is the amount of screen real estate available.

iPhone/iPod 4


That brings us to the present, as of time of this writing, the iPhone 4.  Basically the iPad in phone/ipod format:

  • 960x640 3.5” screen
  • 16/32 MB storage
  • 512MB RAM
  • 800Mhz A4 CPU
  • 3 axis gyroscope


In addition, a 5 MP camera and a .3MP front facing camera were added to the iPhone4.  Again, the GPU is identical to that of the 3GS and the iPad, while the CPU is right in the middle clock-speed wise.


So, as a developer, you can essentially look at the iPhone 3GS, iPhone4 and iPad as more or less comprable devices, with the exception of slightly faster CPU speeds and substantially different resolutions and screen sizes.  All of which are capable of around 14M raw triangles per second as a theoretical max, while reality seems to suggest a polygon budget around 30K textured polygons per frame as realistic.  Will post some real world tests later on to confirm reality.

iPad 2


Now the newest kid on the Apple block, the iPad 2.  Basically a beefed up, scaled down, make me look at my existing iPad 1 in disgust version of the iPad.  Stats:

  • 10” 1024x768 screen
  • 16/32/64GB storage
  • 512MB RAM
  • 1 GHZ Dual Core Apple A5
  • Power VR SGX543MP2 GPU


So, take an iPad, make the form factor better, round off the annoying edges, smack on a camera at the front and back and you have an iPad 2.  Well… that and speed up the GPU by an order of magnitude and double the number of CPU cores!  This thing is a beast compared to the iPad/iPhone 4, scary the differences spec wise.  Theoretical max of 64M polygons/second, puts it at about 4 times faster than the GPU in the original, to say nothing of the fact you now have two cores.  In reality, you are probably looking at a polygon budget around over 100K per frame. 

So, right after the iPhone4, iPad and 3GS started to look like a great common baseline to target, the iPad2 comes along and throws a hell of a monkey wrench in the mix.  Hands down, as a gaming device, the iPad 2 is in a different league than all earlier devices.  You can choose to support all of them, but I am already seeing a number of complaints in the app store from iPad users where an app is made for iPad2.  Its interesting to watch reviews, where half are glowing 5 star reviews (iPad 2 owners) and the rest are 1 star complaints ( iPad 1 owners ).  If you really are pushing the limits, you may want to target the iPad2 exclusively.  That said, doing so shrinks your target market by a huge volume.




Phew…. that’s it for PCs, Macs and Apple portables… now on to the wonderful world of Android.






Top Selling Android Phones on

Name Chipset RAM Screen Other
NVidia Tegra2 1Ghz Dual Core 1GB 960x540
4 inch
16GB internal storage
HDMI out
5MP Camera
Android 2.3
HTC Inspire 4G 1 Ghz Snapdragon 768MB 800x480
4.3 inch
4GB internal storage
8MP Camera
Android 2.2
HTC Thunderbolt 4G 1 Ghz Snapdragon 768MB 800x480
4.3 inch
8GB internal storage
8MP Camera
Android 2.2
Motorola DROID X 1 Ghz TI OMAP 3630 512MB 854x480 8GB internal storage
8MP Camera
Android 2.1
T-Mobile (LG) G2x NVidia Tegra2 1Ghz Dual Core 512MB 800x480
4 inch
8GB internal storage
8MP Camera
Android 2.2
HTC Evo Shift 4G 800 Mhz Qualcomm MSM7630 512MB 800x480
3.6 inch
2GB internal storage
5MP Camera
Android 2.2
Slide out keyboard
Samsung Galaxy S 4G 1 Ghz Samsung Hummingbird 512MB 800x480
4 inch
1GB internal storage
5MP Camera
Android 2.2
HTC Droid Incredible 1 Ghz Snapdragon 512MB 800x480
3.7 inch
8GB internal storage
8MP Camera
Android 2.2
Samsung Epic 1 Ghz Samsung Hummingbird 512MB 800x480
4 inch
0 internal storage
5MP Camera
Android 2.2
Slide out keyboard
TMobile (Google) G2 800 Mhz Qualcomm MSM 7230 512MB 800x480
3.7 inch
4GB Internal storage
5MP Camera
Android 2.2
Slide out keyboard


Other Android Devices of Note

Name Chipset RAM Screen Other
Sony Xperia X10 1Ghz Snapdragon 384MB 854x480
4 inch
0 internal storage
Android 2.1 (1.6 shipped)
8MP Camera
I own this phone and Sony Ericsson should burn in hell
Motorola Xoom NVidia Tegra2 1Ghz Dual Core 1GB 1280x800
10 inch
32GB internal storage
Android 3.0
TMobile Hero ( G1 )
528Mhz Qualcomm MSM7200A 288MB 480x320
3.2 inch
0 internal storage
5MP Camera
Android 1.5
Slide out keyboard
Motorola Droid 600Mhz TI OMAP3430 256MB 854x480
3.7 inch
0 internal storage
5MP Camera
Android 2.1
Google Nexus S 1 Ghz Hummingbird 512MB 800x480
4 inch
16GB internal storage
5MP Camera
Android 2.3


As you can see, there are a great many phones, but in the end the hardware is pretty standardized.  If you are creating a phone of any technical complexity you can probably forget the first generation of Android phones like the G1, frankly they are pretty terrible. 

Of the installed phones, most of the phones shipped in 2009 and much of 2010 have a 600Mhz to 1 Ghz, with 256-512MB of RAM.  OMAP, Snapdragon and Hummingbird are easily the most common CPUs.  Of the install base, the majority of phones in peoples hands these days fall into this group.

As to phones being sold these days, 512MB of RAM and the 1Ghz CPU’s seem to be the norm, with dual core Tegra’s being more and more common on high end phones and in the tablet space. 

Now time to dive into each chipset with a bit more detail. 

Lets start with the monster in the group, the newish NVidia Tegra 2.  It is a dual core ARM Cortex-A9 running at 1 Ghz.  Integrated is a NVidia ULV GPU with 4 pixel shader and 4 vertex shader cores  ( by comparison, a Radeon 9800 had 4 vertex cores ) running at 330mhz.


Anandtech summarize things nicely with this benchmark.

When it comes to raw rendering, the Tegra2 is really top of the class.  I do find the iPhone4’s performance extremely confusing however.  That the 3GS is almost 3x superior to the iPhone and iPad seems extremely wrong.

As you can see though, in the Android world, most Android phones regardless to chipset, preform fairly consistently by generation.

In the end, I am targeting the iPad/iPhone/3GS/mid-upper range Android phones with my game.  Why?  Because they are capable enough, sold well enough and frankly… those are the phones/devices I own! Winking smile

Design , ,

Month List

Popular Comments