Welcome to my
personal homepage. In this page you can find some example programming work that
I've done during my university study and spare time.
Pacland
A Pacman clone
in 3D with some interesting game feature.
This game is based on one of my university project (433-380 Graphic and
Computations). While the original project was done in JAVA using JOGL, this
version is implemented in C++.
Language & Tools: C++, OpenGL, OpenAL, GLUT, GLEW and Boost
library.
Game Feature
- 3D world with random terrain produced by plasma fractal
algorithm
- Random dots path using Dijkstra algorthim
- Multitexture terrain (available only on OpenGL 1.3 or above
supported graphic card)
- Real time shading calculation
- Flat and smooth shading mode
- Basic intelligent enemy (chasing and return to dot path)
download
Balls in Box Sprite
Recently, I
took a programming challenge from
Heavy-Iron Studio (the original source code is available in the job-programming
section). This is an application implementing collision detection using
certain numbers of sprites (i.e. 10, 100, 250, 1000 and 2000). Basically, we
should speed up the original simulation so that when it uses a large number of
sprites, we still can keep the average FPS that comfortable to the user. In
other words, the simulation should not slow down so badly when using high sprite
count (i.e. 1000 or 2000).
In this challenge, I have successfully achieve those goals. In my computer (P4
3.2 GHz, 1Gb RAM, NVIDIA 7600GT), using 1000 sprites I can get about 40 - 45
FPS. For 2000 sprites, I manage to get 30 - 35 FPS. I am proud that I can
achieve these results. Although, it is unknown whether these are the
optimum result, but this is definitely much better than the original version
which only achieve 3 - 9 FPS for 2000 sprites.
Language & Tools: C++ and SDL.
download
Terrain Generator
Random terrain
generator using plasma fractal, that can be used as the base of game engine.
This application is based on one of my university project (433-380 Graphic and
Computations). While the original project was done in JAVA using JOGL, this
version is implemented in C++.
Language & Tools: C++, OpenGL, GLUT and GLEW.
Feature
- 3D world with random terrain produced by plasma fractal
algorithm
- Multitexture terrain (available only on OpenGL 1.3 or above
supported graphic card)
- Real time shading calculation
- Flat and smooth shading mode
- Wireframe mode
download
SnakeCPP
A text based
snake clone that can be found in old Nokia mobile phone.
Thanks to SIWare, Inc Graphics
for giving me the idea to build this game.
Language & Tools: C++, and PDCurses library.
download