A Smoothing Displacement Function

Since we have a mechanism to create images with displacements, it is useful to have a displacement that creates a smooth mesh. This would allow rendering smoothed versions of tessellated models with or without additional displacements. To make the problem as local as possible, we assume the smoothing displacement only has knowledge of a given triangle's vertices and vertex normals. Knowledge about neighboring triangles would allow a smoother surface, but we leave that as future work. Our goal is to create a simple smoothing displacement as a proof of concept. Although examining how to smooth triangle meshes has been examined by many researchers (e.g., [7]), our problem is different in that our function must have the algebraic form of a height function in barycentric coordinates with respect to barycentric interpolated normals.

Figure 8: An icosahedron with a smoothing displacement that only uses the vertices and vertex normals for the triangle being displaced for $ N=1,4,100$.
\begin{figure}\centerline{\epsfig{figure=hermiteD.eps,width=3.33in}}\end{figure}

We would like the displacement to interpolate the triangle vertices, and have a smooth tangent plane on the transition between two adjacent triangles. This implies a number of constraints:

The final requirement listed above is the one which is the most difficult to satisfy, because Hermite (derivative) interpolation is more difficult to enforce over a line than at single points. We use the Coons patch approach to construct our surface. First, boundary curves and prescribed tangent planes are constructed using ordinary Hermite interpolation. Then we use transfinite interpolation to construct three surfaces which interpolate the boundary curves and tangents along two of the edges. These three surfaces are blended in such a way as to preserve the derivatives and remove the ``bad'' edges from the final surface. The surface will be constructed in terms of barycentric coordinates. The approach applied to an icosahedron is shown in Figure 8.

Note that in our entire discussion the vertex normals are assumed to be outward facing and unit-length. However, the interpolated normals are not necessarily unit-length, i.e. they are not automatically renormalized.



Subsections
Comments: Brian Smits
2000-06-02