Assistant Professor
School of Computer Engineering
Nanyang Technological University
e-mail: henryjohan(at)ntu.edu.sg
Teaching:
Refereed Publications:
Not Refereed Publications:
Thesis:
Some CG related programs:
The point light source is located at the center of the ceiling. All of the balls are reflective. The floor, the walls and the surfaces between the floor and the walls are reflective too. It considers the contribution of indirect reflected light sources (such as mirrors and reflective planes).
Whitted illumination model, Adaptive Supersampling.
kd = 0.6 kd = 0.0, No reflection kd = 0.0, With reflection

No reflection With reflection

Displacement mapping
Filtering
The displacement function for the midpoint between point (x, d[i],z[i]) and point (x, d[i+1], z[i+1]) is d[mid] = 0.5 * (d[i] + d[i+1]) +P(z[i+1] - z[i]) * R(z[mid]) , where z[mid] = 0.5 * (z[i] + z[i+1]). P(dz)is a pertubation function and R(z) returns a random number between 0 and1.
I used two different pertubation functions to produce the pictures below.
As for R(z), I wrote a random number generator which returns a random numberbetween 0 and 1 not bigger than z.
The mountain is represented by polygon meshes.Texture mapping is usedto make the mountain looks more real. Consider point p on the surface ofthe mountain. Let N be the normal vector at that point (the normal vectorof the polygon which point p belongs to) and V be a random unit vector.Define N' = N + s * V , (s is a constant). N'' = N' / |N'| (|N'| is thelength of vector N') is considered to be point p's normal vector.
# Mountain type 1 (12800 polygons)
# Mountain type 2 (12800 polygons)