jak tiano

May 23

Building an iOS App: Part 1

Since I’m away from my main computer, I haven’t been able to work on my game engine this week. Instead, I’ve been working on building an iOS app. I decided to revisit an app that I made in June ‘10, called Now iSee It. It was the first iOS app that I ever made, and it was essentially a digital magnifying glass, marketed as a replacement for glasses when you forget them. It was pretty light on features, which is forgivable since I basically taught myself Objective-C as I built it, but there was still some value in the idea. So now, three years later, I decided to give it a complete overhaul.

Read More

May 16

Building a Game Engine - Part 3: Particle System

I know a particle system is probably a bit unnecessary at this stage in development, but what is a better way to test my graphics system? It actually made me go in and add scaling and tinting to my Graphic class, and that all works nicely.

Anyhow, the particle system works in it’s current setup, but I feel like I’m going to revamp it. For now, you read in the particle types and effect types from external files, and then create emitters with effect data. The emitter creates a pool of particles, which it then manages. Right now you have to tell it how large to make the pool, but I think I can set it up so that it reads the timing data to figure out how large it would need to be.

My current problem with the particle system, is that each particle has its own Graphic that it updates. I’d prefer it if the Particle objects just kept track of their position, rotation, scale, and color, and then the effect itself has a single (or set of) Graphics objects that it draws to the screen repeatedly using the data from the particles. I’d have to go in and rewrite parts of my Animation/Graphic classes to do that though, so I need to sit down and decide how I want it to fit together.

Unfortunately, I’ll be unable to make significant progress on the engine until next Saturday, so this might be my last update for a while.

On a side note: I just received a student developer scholarship from Apple, and I’ll be going to WWDC in San Francisco this year! (if money permits that is)

May 13

Building a game engine - Part 2: More Graphics

Today I spent a good 6-7 hours continuing work on my engine, focusing on trying to finish a basic graphics system. I finished up my animation class, and made a Graphic class that holds position, offset, and rotation information which it uses to draw the animation that it holds. Besides flipping and tinting, I’m mostly done with “sprite” type stuff. I also built a GraphicsManager class that loads up all of the sprite sheets and splits it into sprites and animations. You can then create Graphic objects from the animations, and assign those graphics to anything you want.

The next step was a particle system, since I’m working in the graphics anyway right now. I’m about a third of my way through that, and should probably finish it up in about an hour tomorrow… it’s not too special.

Recap: animation, anchor points, rotation, Graphics, GraphicsManager, and the beginning of a particle system.

May 12

Building a game engine…

Not sure if game engine is the right word, but that’s what I’m calling it. I’ve been wanting to make games for the iPhone for years now, and I feel like I finally have the technical skills to do it, so I’m building my own game engine using OpenFrameworks (openframeworks.cc). So far (since this morning), I’ve built out a basic graphics system that is composed of SpriteSheet, Sprite, and Animation classes, and with this system I can create and draw 250 sprites per frame at 30fps on the iPhone 4, so I’m finally going to have a tool with the level of performance on mobile that I’ve been looking for.

In the coming weeks, I’ll keep detailing my systems as I build them out, starting with finishing the graphics system (more robust manager classes to deal with keeping track of spritesheets and animations, and also a particle system), then moving on to an events system. At that point I’ll have the bare minimum functionality needed to start building games, so I’ll probably start on one of my projects and add to the engine as I go.

I guess we’ll see where this takes me.

May 03

[video]

Apr 11

[video]

Dec 13

[video]

Oct 14

[video]

Oct 12

[video]

[video]

Sep 24

[video]

[video]