Project X Making Off
Server module World Manager with built-in rendered engine
June, 2005: First instance of the PC client
Note that I used my favorite set of video game heroes: mario all stars! All thee place-holders will be replaced as soon as possible by final artworks.
h3. Network statistics
Implementing networking support requires you tune bandwidth usage and minimize latency issue. Realtime statistics help you a lot in this area.
Dead reckoning and network latency
I developed a dead reckoning system in order to smooth path prediction for other player's avatar.
Here you can see some path trails.
July, 2005: Building for 3D model support
During 3D model support development, I used some visual augmented reality to improve debugging and fine tuning.
Increasing networking towards massively connected system
As you can see, I've developed a set of embedded tools that continuously profile both networking performances and topology.
The circle — where the HUB is at the center — shows the distance from which the client is in term of roundtrip (in milliseconds).
Client module for the Desktop
Richer world: Adding some shaders, programming real physics engine
A couple of shaders have been added for handling special rendering. A new warp replaced our former place-holder.
For the ground I've added a texture splattering system for giving details without consuming too much memory.
Richer world: Programming real physics engine
The world has been updated with “real” 3D altitude for the ground. Water have been integrated, with a nice light-reflection system.
My favorite yellow duck has been integrated as well, with the programming of a physics engine (floating, falling, popping for the duck).
Cars now benefit from a real physics capable of : collisions (car/ground & car/objects), car jumping over hills, skid and lose of control.
In order to make it even more fun, jumps are really expressive and the car shakes its "nose" when you try to climb big slopes.
Adding actual 3D assets
The addition of the final artworks — that I wanted to be very rough and non-realistic — gave the final touch to this demonstrator of the ProjectX technology and service.
Client module for mobile handset equipped with NVidia GoForce 4500/4800
April, 2005: Reusing priorly developed j2me 3D engine
As a first attempt full 3D to support MMO connectivity, I recycled a Mario Kart™-like engine that I once wrote for the J2me platform.
I've added the Connectivity set of classes and I could see the numerous avatars wandering in the world…
December, 2005: Developing MIDP2 version
The 2D versions derives its code from the desktop version for connectivity. The rest of the game is written from scratch, using MIDP2.
This version features a top view camera, closer to the final version.
For the purpose of rapidly demo this version, I used Midtown Madness car sprites as placeholders.
August, 2005: First grips on NVidia GoForce DevKit
I have received a devkit from NVidia which is a Motorola linux-based mobile phone prototype. It embeds a GoForce 4500 chips capable of 1.5Mtri/s.
I've developed from scratch an opengl 3D rendering engine in C to benchmark actual usable performance. It rocks!
I've put 32 cars, 4K tri each. Plus the background (3D plane of 4096 quads). It sustains 30fps.
Of course, the final game has to be written in java j2me and must support JSR-184.