Skip to main content


iPhone development Opengles2 (shaders) goldfish and zombie

Journal Category

Still working on iPhone, now have opengles2 support for my pipeline (shaders)
finished up the goldfish project, and having a break from the cute stuff to do something violent, like shoot zombies.
zombie is a performance test, though still 50% anitalisasing, with 339 vertex each. still need to do more performance testing

Dirchie Kart - Up for peer review on XBox Live Indie Games

Journal Category

"Dirchie Kart is a Hi-Def remix of 16bit kart racing in 720p and 5.1 surround, detailed physics, track friction and multiplayer options add new depth to an old formula.

Challenge your avatar against a host of Dirchie characters in fast and furious single or multiplayer karting, join up to 4 friends in a split screen party of Race, Battle and Drag events with an assortment of rockets, mines and other items."

It's been a lot of hard work but it's finally ready for release. Anyone with creators club access, head over to the peer review and take a look.

Everyone else can see some more details and download the free PC version here.


Shader fun, cloth modifier

Journal Category

Took a break from programming to do some artwork, and kind of happy with the result of an afternoon mucking about with normal maps. possibly should learn mudbox or zbrush, but found a workflow that suits me, even if i get to swear about polygon limits on lightwave and 3ds file formats. i'm modelling the normal map and then rendering with blue, green and red lights.

recent programming tasks have been a max cloth modifier, which is prictured on the iphone, though the 20fps are mostly doing something silly with fragment shaders (i think) but made half of the fins totally controlled by cloth modifier, and thus they are hanging down, the other half just floats about

thankyou wiki for a +-3.5% square root approximation which is just a 2 shits and 2 adds (plus casts, which will probably be more expencive but i have no current way of getting instruction timing)

the chrome fish is on the pc, but same engine. the spherical environment map i'm using like a dual parabolic map. in this case the image source is a photo of a chrome sphere in my room, so from this angle i'm visible. reflection is in world space not screen space...

iPhone progress, new asset pipeline, shaders

Journal Category

well, that is a way to spend my time.
had another go at asset pipeline, using what i had learnt over the last few months and getting the information to the engine for the shaders, as well as preserving non shader rendering.

excitement included getting a workflow to make plugins for 'gimp' (what can i say, wanted my own 'normalise' and 'height map to normal map' plugins.

got antialising of sorts on the iphone (cough, rendering to a larger than screen layer since the iOS collects application display to a texture before it displays it, couldn't see an easy way to get to the screen memory)

also got shaders working, both on win32 (where i prefer to work) and on iPhone. the first post image is win32 (note. window is larger than iPhone 320x480) then next two are from iPhone, with x1.5 screen size and x2 screen size for antialising.

will have to spend some more time on the shaders, seems opengles has different math accuracy/ behaviour than pc opengl.

new pipeline is new file format, exports and translators. the file format is now much closer to an image of memory for runtime data, and another pass of my own build system. sick of fiddling around with scons, but writing my own build system may not have been a good way to save time, but can have better control of dependancies which gets to be a pain when building art.

IPhone: Play With Kitty

Journal Category

well, it is not so much that it is finished, it is more that i'm moving on and not working on it further.

Nice to wrap something up, annoying the difference in quality of what you want to get done and what you can realistically get done. Still also have to jump through Apple hoops to get the game to be on sale.

The time on this project has mostly been consumed by developing an engine and tools pretty much from scratch.

Hi there...

Journal Category

I'm an indie games designer developer from the UK and I'm interested in the indie scene in Oz and Nz.

Anyway you can find my games at

Currently working on something new in Unity3, this is a solo indie project and my first with Unity, fingers crossed will update...

Iphone progress

Journal Category

That took a bit longer than expected, but now have my own 3dstudio max exporter supporting biped, physique, scene graph, materials and animation. Also happen to have a win32/ iphone game engine that supports skinning.
(morphing is mostly done but sort of want to get a game done, not more engine features)
this week has been an animation system, previous to that has been max export and engine.
think most of the large techincal tasks are out of the way so can work on the actual game which shall be nice.

week 3: iphone, minimal win32 engine and asset pipeline

Journal Category

wow, rather unimpressed with writing code on the mac, both the IDE and objective-c, so quite merrily writing code now on win32 c++, do preview builds on win32, and copy code across to mac to build and deploy on iphone.

have asset pipleine (textures, geometry, materials, sprites) working, attach screen shot is 3 iphone captues where i'm drawing a openGLES view over the camera, with the camera 'down' controlled by the iphone accelerometer. window with grey background is preview of application running on win32.

was curious what performance hit that would cost, impressed i can hold 60fps with camera in background, iphone 3GS has some grunt.

week 1: iphone development

Journal Category

well, got a simple 'game in a day'* project done and running on iphone, lunalander, using the angle the iphone s held at to control thrust, screen space openGl and reponding to touch events to trigger state changes.

the other funky screen shots are from the start of a model viewer (touch screen to move camera, handset angle held to control camera direction) and performance testbed. 256 objects with 12 vertex each can be rendered at 60fps. currently looking at the game engine 'ogre' iphone port before i continue work on my own engine (as it is quicker to use other's code, and now have a metric for performance) though getting ogre to build is proving to be problamatic.

*for a programmer, 1 day of work may be several, in this case 3, days on the calandar, as tasks not releated to programming, such as setting up hardware, software or housework get in the way

Not an iphone application till i see it run on an iphone

Journal Category

Wow, learning a new dev environment and language is much easier than dealing with apple and getting a application running on the iphone.

objective-c . easy
deploy on iphone . ouch

nothing much to see, just messing around with openGLES 2, wanting to play with the iphone accelerometer to make a simple lunalander game to get the lay of the land. screen shot is of iphone simulator on mac. 1 day of code and learning new language, several days of setting up hardware/ software

guess i get to spend another day hitting the books and testing on the iphone simulator.

nb. golddigger is currently having it's physics engine changed, tracked down the stack smash to something which is suspiciously looking lke 'not my code' and the physics engine i was using was black box. black box of fail.

packaged up a release, putting Gold Digger on hold for a bit, though still a lot of work needed

Journal Category

Since last update, Load/ save working, level teleportation, scripted sequences inside level, switches and moving platforms just added. Also rewrote the menu system.

Combat still at prototype stage, swiming and camera also need work.

also have a website again

with a download of the current build

doh, wasn't ready for freeplay

Journal Category

not ready for freeplay, but getting there

everybody hates crates

and the second character they find has masive jump height, fun

achemedies boyancy and other leverage of newton physics :)

Submitted by Anonymous (not verified) on Mon, 19/07/10 - 9:56 PM Permalink

awesome work. In my opinion the gameplay of Tomb-Rider is very similar to this GD-Game-prototype). Do you want to make the level design like in comic books? I imagine some parts of levels, where you have to use the super-cheetah speed, to complete it. Lot of fun)

You are making impressive progress, go on!


Submitted by davidcoen on Wed, 21/07/10 - 8:31 PM Permalink

thanks delux,

the art approach is more limited by my ablity than trying to get it like the comic book, also limited by time (looks better with a detail texture, but then have high frequency in background, and infers a higher level of quality in the level, and i'm kind of liking the low detail smuge terrain, easy to see character... may need to implement some actual camera code...

today made the art assets for the save point, and starting work on the multi state resource, for switches, or repairing a broken save point....

Submitted by Anonymous (not verified) on Thu, 22/07/10 - 12:40 AM Permalink

Don't feel too bad, at least your getting a product out there.

So many people have issues even starting.

greybox level, general progress

Journal Category

might have found a workflow that i like for greyboxing :)

still haven't completly finialised the movement code (collision not perfect) but the main body of logic behind the step over state is done, and added basics of swiming for fun.

going to need to make some non trivial changes to render engine to get alpha sorting to work nice (it has depth read write flags and renders on sort of object by near surface of bounding sphere, it kind of needs alpha layers though, water in level is a pain as it tend to have a large bounding sphere)

do enjoy the art content, but more comfortable programming, art is so draining.

intro movie

Journal Category

Well, after another rewrite of a large portion of code (oh what fun breaking everything again) have implemented a little intro movie
tools are a little rough, but the intro movie is using the same code as can be used for scripted sequences (ingame movies or things that happen when you hit a switch/ trigger)
was interesting making a small level, first time in 10years? that i have got to make a level that was beyond just being a test space (ie, bit of a shock refinding a workflow to allow creation of spaces i was visualising for the camera sequence, ended up doing the character and the camera, then greyboxing from the camera point of view, never tried that before....)
next need to finialise the player movement then some more level greyboxing....

Submitted by Anonymous (not verified) on Sat, 10/07/10 - 5:46 PM Permalink


I tried to do some 3d models for GD by your permission, this is what i get :

It is just for testing, i want to remake the whole model of Gina, because I am not satisfied. Unfortunately I have had not enough time , because of the session. I will try to make it better. By the way this Ford GT500 is my old test-model.

I wish you Good Luck with your project


Submitted by davidcoen on Tue, 13/07/10 - 8:21 PM Permalink

thanks delux, thanks for the comment but sorry i didn't have more time to support people playing with this, it is fun, though challenging to make good huminoid models even if stylised

Level Exporter

Journal Category

This has been quite the week

monday added copy/paste/undo/redo to game data editor (visual xml editor)
tuesday finished changing game code to load new xml format and move everything over to boost scoped, shared, weak pointers
wednesday repurposed my torque level tool to the data types of this ogre game project, mostly writing new scripted plugins
thursday finish level editor (pictured) and write a helper plugin to load mesh data from exported ogre mesh files to display in max as part of level editing

so now i have a simple level editor, and better code tech, few

hide your eyes, tool programer made gui

Journal Category

so, a lot of game content is data driven nowdays.

xml is good, and human readable. it also has a concept of schemas.
Now have game content driven in xml and schemas used to validate, so pretty much have enough information from the schemas to make a generic visual editor for xml documents.
and voila, i have the first generation of game data editors for my game....

first c# wpf app, pretty nice tech to work with, at least quite to develop .c# feels halfway between c++ and python, each of which i like, not so sure about c# though)
alows editing of properties (string, bool, float, file path, colour, enums) and inserting/removing/cloning xml nodes, with the schema dictating what are legal nodes to insert/ remove.

Player model

Journal Category

Had a break from learning c# by making a new player model, britanny of gold digger.
Model, basic texture, animation in 3 days (less actually, time also spent rewriting bone spring code (to get tail to work well), like 2 days plus one recovery day, so yeah, the texture is very first pass...)
also fixed physics frame rate (physics was clamping without me knowing) which ment i could fix the jump heights
found a great new workflow which takes the time to get animations into ogre from 5min to 30sec, nice when software improves, makes change iterations much easier.


also been moving codebase over to using boost, and cleaning up code.

Submitted by Anonymous (not verified) on Fri, 18/06/10 - 7:53 PM Permalink

I am very impressed. I always thought Gold Digger has a potential to be more than just a comic book. I hope your work can drive it on. I am sorry for my English, it is foreign language for my. But what ever. I found on this page of you the .rar archive with your very first level with Gina. I want to ask, may I try to do some experiments with it? I am not a programmer, but I have some skills in 3d modeling and I want to try to add some details into it. If you are not against it, of course

Submitted by davidcoen on Sat, 19/06/10 - 7:07 PM Permalink

thanks for the comment, no worries about playing around with content, and good work on finding the website, stopped paying for that account so if the rar still existed, good work in finding it.

the rar has the movement prototype from 9 months ago, the exe is win32 and using ogre tech which the opengl plugin seems to be more compatible than the dx9 dlls.

if you leave me some point of contact in a few days i can make a new exe send you some wireframe cutouts of the textures to make it easier to work on. was going to change how i was doing gina's face though....
just spent the last week moving the code over to using new tools i have written to define content (mostly for definition of loading content (menus, player description, game data, rather than artwork. just a generic visual xml editor) artwork is ogre mesh, skeleton and textures, the .material files are txt files defining the material (will need to go home and check which ogre plugin for max i was using)

i have no internet at home so just occasional checking online at internet cafes, so sorry if there are slow replies. I'm currently working on this full time so curious where i can take it in a few months.

take care, and good to hear from another gold digger fan


Submitted by Anonymous (not verified) on Sat, 19/06/10 - 8:26 PM Permalink

Thank you! I have already the .exe file and everything is working fine. And I have to admit it is fun to run as (low poly) Gina. Especially run animation looks very funny and it fits to Gina)) The physics are super! Only the boobies physic is enough to call it epic win! It is exactly what Gold Digger game needs))) Looks very harmonic.
I use 3ds max, i am already able to export to .mesh. So I rewrite just the level room by my file and so it is possible to start the level with my version and models but without textures. (I know only noobs do so, but as I said, i am not a programmer, so I do it my way) Now I am trying to do some meshes of models, then I will add them to the level. I can show you the result on youtube, I have already wrote to you there(DeluXRX). This is my icq 420073085. I will be very glad for any content and help.

Good Luck and good Progress in your Project)


P.S. i only hope, you can understand in spite of my english))

combat prototype done

Journal Category

combat prototype is done (cough, after a work/ life related pause of 7 months)

turn based hex combat, 3 stats (rock paper sizzors/ body mind soul) though still needs tweaking, but need to make some contents tools first. have movement, melee and range combat, and simple ai.
(ogre c++ and newton) based on fred perry's gold digger

also messing around with youtube

Super Laser Lite is out!

Journal Category

My team and me have been working on this game, Super Laser, for many months. We finally have the Lite version done and it's now available on App Store.

Super Laser is a classic Sci-Fi vertical shooter for iPhone and iPod Touch. All the background art is painstakingly handcrafted. Most of the enemies and bosses were modeled into 3D models, rendered out as 2D images and then touched up by hand.

The Lite version is free so feel free to check it out and give us some feedbacks :)

Lessons Learnt

Journal Category

Well, it's been over 12 months since I last had a crack at a demo. I fell on my sword with my last attempt due to the fact that I was trying to do everything in one go, e.g. create the tech as I needed it.
Anyway, it's been 12 months since I last did anything for myself so I thought I'd give it another go. Basically I want to do this for 2 main reasons:
1. I think I have an awesome idea for a game and I want to be able to show the mechanics of it off (graphically it may suck :P )
2. To learn more about the underlying structure of game and improve my programming abilities.

Anyway, I have no screen shots at the moment or any design down on paper, but there will be more to follow.

Well, for the last little while I have been getting to grips with some areas that I have not previously had much experience with. Mainly XML, .dae, and writing my own binary file format.

I very much like knowing what everything does and this is why I think I chose to write my own engine and supported file format. Though most of this is still in it’s very early stage, I can now start using to code I have to write a game that has 3d model in it.

Some things that I have really learnt from mucking around with binary files, when writing out the binary file make sure that it is correct or else you can spend a LOT of time at the other end trying to figure out why what your reading in is wrong. Also, if your going to write a binary file, make sure you have specified succinctly what the format is and make sure it work before you implement it.

Since the last update, I've made a lot of changes to the way the Engine and the game works. I've implemented a shader system that will hopefully enable me to easily add more shaders as required. Like the post on (…), the shaders work by selecting the one you want (I've just defined an enum to choose from), then passing the required information through via a struct. The shader then pulls the data it need out of this struct and renders the stream. This works really well when put together with a scene manager that define basic types (Mesh node, line node, etc).

At the moment, I'm working on implementing the AI for the fleet, and then the ships. Image 6 shows that I've got some basic states for the fleets, but they are not really doing anything.

I've been really lazy with this project recently so today was the perfect opportunity to get some work done on it. At the moment I'm just trying to make it look a bit better since I have the basics for the AI. The shader system is working, but I think it will need a bit more research as it seems that every time I want to do something different I have to rewrite a shader only changing a few lines.

Slow implementation of hex based combat

Journal Category

slowly implementing a hex based combat mode, have player movement (calculation of what movement cost to get to each square, interface for move, interface for changing facing) and player/ opponent take turns

also lost some time to changing internal architecture (preserve or of state activation in state machine so can quit out of combat back to main menu and have the states shutdown in the correct order)

thanks for the comment in the previous post Andrew, good to hear you are well, sorry to hear what had happened. Now i'm just casting hulls onto the terrain to find where the hexs should go, i had been casting multiple rays for each of the six triangles in the hex and skewing it to fit if all the rays where on the same plane, worked ok but visuals too noisy compaired to the simple flat hex square.

Surprised how many menus are in a rpg, but once i get combat work may make another playable release, though tempting to also get ingame cinematic and first level greybox done which could take to the end of the year before next release

//edit. image upload didn't work the other day

Submitted by Yassim on Wed, 04/11/09 - 12:36 PM Permalink

I agree the flat hexs look better from the shots you've posted.
Casting all those hexs shouldn't be a problem if your only doing it at the start of combat.

Looking forward to a playable, looks really good.

Menus mostly finished, starting on combat

Journal Category

Nothing that exciting, still a bit to go before seeing game character fight, but the framework for the turnbased combat, and triggering it by walking around in the world, and then generate a hex grid over the current location is slowly progressing.
Still spent a lot of time since last update on the menu, and a grid widgit (wanted listboxes/ checkmark listboxes)
Also spent some time poking through the guts of the Ogre render engine to get it to accept skew matrixs (wanted the combat grid to skew over diagonal terrain) however after doing this, didn't like the asethetic and reverted to putting most of the hex grid flat, and not cut up into triangles.
..still waiting for build to take screen shot...
newton was surprisingly broken for getting triggers to work, though that may be better expressed in me not completly understanding their material and shapeID system.
Also had another go at improving the general player movement
The game updates have been moved to a task manager which was causing some unnnessary jitta to camera- player tracking (fixed) and did some changes to the ogre engine so that particles would not update while the game was paused (argh, i own the tick, not some random hidden systems listening to frame updates) this also broke material animations, but the menus look better without everything moving so i haven't fixed it yet
Improved menu transitions (fades) and the newgame difficulty select now works
...yay, build done....

Submitted by Anonymous (not verified) on Fri, 23/10/09 - 11:37 AM Permalink

Looks solid.
How are you doing the hex height on what appears to be world soup?

We should do a catchup or perhaps I can persuade you to join in the study nights nick and I are running.


Menu System

Journal Category

Used up a weeks worth of holiday time from work, but still did not even get started on the combat prototype.
Took a day to tidy up the prototype code to be more generalise, then another day to refactor the code to run under a state machine and task manager, so now have intro splash screen, game menu, game and ingame menu working. then another day on artwork for the menu (not happy with it, but lots of layers, movement and addative blending can hide a lot of poor art) and about two days write all the menu system, material transition and input, and get an xml to drive menu layout.
so frustrating to get some time to work on stuff, and have it disapear into not much to show, but it was kind of nice after thinking about making this game for years and visulising what i wanted the menu to look like, actually getting it to work was kind of nice.
think i fail at prototype code, as keep on trying to write finished code rather than 'get it working code', could do it for the movement prototype, but upon trying to add to it have ended up refactoring into 'first playable' code style. Also nice to have new game/ load /save and front end menu working this early in the project, menu still only half done, need more explanation text, warning dialog and a list box, but do have generalised framework for buttons and transitions.
perhaps prototyping works better if you don't try to build them ontop of each other, ie, start fresh each time?

player movement prototype 'complete'

Journal Category

well, there is more i would like to do on the player movement prototype but need to move onto the next prototype, combat.

did get physics update seperate from the rendering, the animation states being driven by an xml defined state machine, and fix the vertical velocity issues i was having with a physics object player controller lauching over certain bumps.

you get some rather large forces at work to go from running one way to the other in one physics tick, which if reflected upwards from collision can be bad. some heuristincs for when to zero vertical velocity and it is all good.

added a physics 'rope bridge' and some dust particles under feet for fun.