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!

EvoEditor

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.

Dot Product

Dot product is a cheap and useful function in many situations. It calculate the cosAngle to two unit vectors which is 1 when acute, 0 to -1 for obtuse angle. These are some applications which I found very useful.

Gameplay
Check if two unit are facing each other by dot product their forwardVec, for 3D you can optionally ignore the height component for the vectors.

For airplane game, prevent a plane from over pitching by checking the planeDir dot worldUpVec and worldDownVec.

Test if an unit has passed a waypoint, assuming the unit is moving forward. Do a distance check to ensure the unit is near the waypoint. do a dot product between the unit forward vector and the direction to the waypoint, if the angle is obtuse, mean the unit has pass the waypoint.

For terrain dot product normals of two face to find out the steepness of a slope.

Graphics
NdotL for lambert diffuse
NdotH for blinn specular
RdotV for phong specular

NdotV to detect edges of the model.