My AssetStore Link

I've moved - GO TO THE NEW WEBSITE

Unity Store Link - Click to see all the Song's work that has been put on Unity AssetStore




Friday, 18 November 2011

Procedural City Block Filler

Just another showcase of the work I have done. Something I've build for a client which I think it's rather cool. Big thanks to him for allow me to disclose this. Like the title of the post suggested it's a procedural city block filler. The idea is a algorithm that placed the building prefab for you on a cityscape defined by lot.
The algorithm can place the a fixed list of building prefab automatically based on three method.
  • Fill - Try to occupied as much space as possible in the lot.
  • Edge - Just line the building on the edge of the lot.
  • Random- Randomly place building on the lot until a certain amount of place is occupied.
Different building type can be placed on different type of lot, which can be specified manually. The idea is the user can easily lay down as many lot as they want and specify the lot type via tag. The lot for simplicity sake will just be a rectangular plane object. The user can then assigned the building to be placed on each type of the lot. The building can be an any size and height, but they are assume to be cubical. The algorithm can be run in editor mode as well as in run time.

There are other parameter which can be adjusted such as the building spacing, filled rate for "Random" placement, spacing from edges, etc

Here's a link to a demo webplayer for those who are interested in seeing the algorithm in action. The adjustable parameter in this demo is limited as I'm too lazy to build a full run time interface for it. The screenshot below is taken from the demo webplayer. For simplicity sake, I just used primitive cube of different size and height and color to represent the buildings.

Taken from demo webplayer


Announcing TDTK v1.3, it's iOS compatible!

Haven't been active recently. My gaming urge has finally caught up with me and I've spend all my free time, even a bit of my suppose working hour jamming game. Witcher2 in particular. Try it, it's brilliant. It's the only RPG in years that have me going hours after hours just to find out how the story goes.

Finally, good news to all those that haven been waiting for requesting for an iOS compatible version of TDTK. I finally got all the licenses and hardwares this last weekend. Like I promised to some of the user, I have start work to port the toolkit to iOS immediately following that.

It certainly has taken a lot more time than I thought. But I'm very close to wrapping things up. Testing on iPhone4, the toolkit manage to achieved a steady FPS of 20 and above with the example scene. It should do better when a better optimized art asset is used.

Anyway, the toolkit will be ready by December or early December.

Tuesday, 25 October 2011

PathFinder Version1.0

PathFinder is now it on Unity AssetStore!


 So here's feature in current version:
  •  A* Path-finding algorithm
  •  GridGraph Generator applicable in just about any terrain
  •  Line-Graph Generator based on user hand-place waypoint
  •  Configurable parameter to fine-tune the grah
  •  Queue based path-finding call so no lag spike
The package is designed to be flexible, robust and easy to use. Feel free to try out the both demo with custom environment and smooth terrain. Also the link to the documentation.

Here's the link to the Unity AssetStore

Friday, 14 October 2011

TDTK v1.2.3 (fix and minor improvement)

Following the release of version 1.2.2. I found one or two nasty bug, with the newly added open-field gameplay mode off course.

In version 1.2.2, the spawner call the path finding and store the path. The creep never find they own way, instead they relied on their respective spawner to pass them the path. A recipe for disaster, when the circumstance is right.

With version 1.2.3, each creep call the pathfinder to find their individual path. To avoid lag spike when every creep call the pathfinder at the same time, a queue has been setup for the calls. So essentially one pathFinder component can handle all the creep and spawner in the scene. Less memory usage too. There may be a slight delay for the creep if the queue is long but most of the time is hardly noticeable.

The new version has also change the basic way a creep move. This fixes a bug where the creep stray off path and never recover if the waypoint is missed, somehow, most of the time due to a lag spike.

Anyway, version 1.2.3 is now available on Unity AssetStore. Here's a demo WebPlayer if anyone's interested.

Thursday, 6 October 2011

Spot the Difference in 3D


Finally I've been able to bring this to light. It was a contracted confidential project I worked on and I've only got permission to showcase it lately. It's not something ground breaking but at least it's a stand alone mini-game with purpose. It's made for a research project therefore some of the details might not work exactly like a normal game.

The notable feature of the game is it uses uniTUIO library to enable input custom made tuio interface. It is compatible with mouse and keyboard input as well as multi-touch input to manipulate the object in 3D space, which includes select, rotate, translate and zoom. It also feature dual language, English and Japanese (the research project is run by a Japanese University).


Since I wrap up the development 2/3 months back, another coder has taken it and port it to android platform. Here's the link to the app: https://market.android.com/details?id=com.Gamelancers.Spot3DTheDifference

Here's a lit of other people who have also contributed to this project apart from me:

Project Coordinator and Model Selection: William Widjaja
ScoreBoard and Android Porting: Sérgio Nunes
2D Artwork: Betty 


Sunday, 2 October 2011

TDTK v1.2 Released!


Announcing the release of TDTK v1.2! The package has been submitted to the unity AssetStore and should be available very soon.

As posted before the latest addition would be the open-field gameplay. Feature in this version is a auto-navigation node generator and an A* path-finding component as seen in my PathFinder Project. Which could be extracted and used in other project with some modification.

The new game mode is rather easy to setup, Just define the area of the "field" with the node generator, the spawn point and destination point for creep and everything will be taken care of. You can try out the new example levels which are included in the package with this demo here.

Friday, 30 September 2011

PathFinder (Update)

It's been a hectic week. Didn't quite manage to focus on the thing I really wanted to do. 

But anyhow I manged to make some break through. I have optimised the my A* algorithm to a very acceptable speed. A rough average estimation shows that at worse case, it's able to search through around 400 nodes at 1ms. A performance I'm quite happy with. Not quite the "blazing speed" compared to the top unity path-finding pacakge out there but it's certainly powerful enough to meet any requirement of real time game without slowing down the game play.


Beside that, I've also managed to get it working with terrain with varied height. As well as implement a faster and more light-weight auto node generatior. So here's a build for showcase purpose, or bragging right. :)

So I've been working on both path-finding and TDTK v1.2 lately since the next addition of TDTK is gonna need path-finding. So next thing to do would be getting this optimized algorithm running within the frame work of TDTK.