Sunday, September 20, 2009

What is game?

What is game? this puzzle me a long time, I'd the feeling i'm not productive when i'm doing games, i feel like i my wasting my time and our customer time. i feel that to continue my path i must understand this definition game.

after some thinking i come out some rough idea
1) game is simplify version of real human or imaginary activities (and therefore, it doesn't inherit the similar risk as the real activities)
2) game is under a structure environment, goal, difficulties and user progress is well defined and measurable
3) game is a system that required human/s interaction to complete. the system has certain challenges to work toward a specified goal. because of it is challenging activities, user rewarding with sense of achievement when the goal is achievement.

and because of this definition, everything could be a game. and everything should be a game :) suddenly i feel like my job is meaningful.

Wednesday, September 16, 2009

Blender stop the nonsense

I can't remember the number of time i revisited blender3d, but i always left it with disappointment in the export and import department. i love the interface, the shortcut and the concept of it. but without a usable set of export and import scripts it is totally useless, this time round i tested md2 and collada format, md2 format always reported index key out of bound error and collada doesn't export my animation correctly, so what is the nonsense about the peach, orange, banana open source projects? when not spend the money on these fundamental problem? i'm sick of it, no wonder people still using max even it is expensive, slow and bloated. wake up blender

Sunday, September 6, 2009

break through!

my collaborative path finding algorithm is finally worked on my test program. the algorithm i used is making use of pre-calculated data and used flood fill method to 'bake' them on the scene. thanks for sean cooper giving me the hints. the basic of the algorithm is a follow

1) using A* pathfinding to find the shortest path
2) fill the path with number destination with zero and each point away from destination increment by 100.
2) draw lines on map based on the path, meaning for each path's point we draw a perpendicular line
3) fill the line with number, each point away from path point increment by 10
4) do a post filtering on the map, it is a basic blur filtering, summing 8 neighbor boxes and devide by 8, notes that only cell without any value from previous step need to gone through this.
5) calculate the 'direction of each cell, by comparing the weight of the neighbor cell, from small t big, neighbor with weight higher than 90 don;t put into dir list to prevent flow back problem

the execution:
1) spawn and creep on the staring point
2) during the game loop, read from cell's dir list, move to the first encountered empty neighbor in the dir list
3) remove the creep that have reached the end point

the result is pretty good, although still has speed factor to be taken care of, but i think i'll leave it first and start working on 2d animated trasparent sprite and 3d animated collada model first :)