Why do we talk?

We talk to think. There are times when we had an idea, but are unable to clearly articulate it, we would try to talk with somebody to find the right words. Sometime when there are nobody convenient, talking with ourselves serve the same purpose.

We talk to release our emotions. When we are sad, we talk to loosen up ourselves, to release our burden. When we are angry, snapping at somebody does make us feel better.

We talk to amuse ourselves. When I was young, there was this question and answer session by my principal, and I can’t help but asked him “Can we go now?”

And of course we talk to convey information.

Understanding why people talk, help us to avoid misunderstanding, somebody talking to think is probably not trying to imply anything. It is often better to help them complete their thoughts than reacting to their words.

There is always the right way of doing things. Is that real?

Reading western articles about leadership and management is always inspiring. After an executive lost the company several million dollars in a risky venture, expected to be fired, instead was told by his boss – “You can’t be serious. We’ve just spent millions of dollars educating you!”
In contrast with the famous Chinese saying – It doesn’t matter whether it is a white cat or a black cat, a cat that catches mice is a good cat. Both ways seemed world apart.
And of course there is also the local way of doing things, which goes faster, better, and cheaper.
Continue reading

Huff and Puff

Blow down houses in one wolf’s eternal quest for more meat in this charming game of puzzles, physics and pigs. Use your big bad breath, fabulous food and the almighty power of physics to solve over 40 levels of piggy predicaments. The pigs think they’re safe. Oh how wrong they are.

BREATHTAKING GAMEPLAY Wield the traditional weapon of the big bad wolf: his big bad breath. The pigs hide inside houses, sheds and bunkers. None are safe against the power of your incredible exhalation!

PUZZLING PHYSICS Expertly take apart your prey’s defences. Collapse roofs, ricochet against walls, even curve your breath with the aid of the wind! A smart wolf is a satisfied wolf.

POWER UP WITH FABULOUS FOOD Tasty pigs hidden inside a pesky farmhouse? Pop a Chilli and roast it to the ground! Shatter solid objects with the miraculous power of Ice Cream! Even flood their little hidey holes with pungent Onion breath! None are safe!

COLLECT MEAT Attain mastery of body and breath! Clear levels perfectly to collect the most amount of meat, leading to more pigs and meaty mayhem! What’s that? Why do you need so much meat, you say? Silly wolf, do you even need to ask?

Autumn Dynasty

The traditional Chinese painting becomes an epic battlefield in Autumn Dynasty—an ink-brush, real-time strategy game set in a mystical, Far-Eastern fantasy world. Direct your armies with brushstrokes in the spirit of classical maneuver warfare—employ terrain, positioning and cunning stratagems to defend your lands and conquer your foes!


Level Editor, I had developed when I was at Envisage Reality. This integrate Ogre3D, Particle Universe, SpeedTree, and more into a tool which allow user to deform terrain; plant trees; tweak particles, shaders and image processing effects; and more.

Brain Fish!

Angie the Anglerfish is hungry, but the fish around her are too fast to eat! Concentrate on the screen to light up her lure and attract the fish to her instead!

Help Angie eat as much sashimi as she can in one minute: Nom nom nom!

Rendering Glow and Soft Edged Object

Often, I have found myself trying to render light shaft, laser, godray and other similar special effect.

A formula I like to use in my pixel shader is

abs(dot(NormalVec, ViewVec)); //NdotV

This would give 1 from the center of the object to 0 at the edge of object. Using this value to apply to alpha blending or multiply it to the color, would give a soft edge to the object.

It is also useful to control how soft the edges of the object are, we could use

float finalBlending = pow(NdotV, softness).

This would make the edge softer the higher the softness value.

For effects that have hard edge and soft center, use 1 – NdotV.

Recently I also have been using

2 * abs(NdotV – 0.5);

to create effects which have hard center and hard edge with a gradual fade off between the two.

Try this with normal mapping to create more interesting effect.

Bird Brained!

Okay, if I concentrate, the bird moves, if I don’t, it stops!
If Mom calls… it stops for a really long time. :p

The guy in the video is Travis, my partner in Touch Dimensions!