Tuesday, 15 April 2008

Texture Mapping

My project involves working on a model of london, and mainly looking at different texture maps to use on the model. We've been discussing which map to use, and it seems likely that I'll be using a relaxed cone step mapping, in order to get the flat horizons have some kind of 3D surface optimizing it further.

I've read a few papers, the first one on block mapping, which stores block maps into small fixed size texture chunks and rendered through raycasting. It uses block maps for far away geometry, while using textured polygons for buildings closer to the viewer.

Another technique is relaxed cone step mapping, this is really an evolution from relief mapping. Relief mapping can use 2 different techniques:

1. Binary search - takes points halfway between until it converges to a point where it pierces a surface. The problem with binary search is that it can end up choosing the wrong point as shown in the picture.


2. Linear search - Takes smaller steps till under surface, then uses binary search by taking points under a surface and previous points as inputs to get the desired intersection.

Cone Step Mapping - Single search based on a cone map without binary or linear search. Cone map associates a circular cone to each texel of the depth texture, where angle of each cone is the maximum angle that would not cause the cone to intersect the height field.

Relaxed cone step mapping - Basically cone step mapping with binary search. As binary search requires one input to be under and another to be over the relief surface, constraints of cone step mapping can be relaxed. Therefore, the cones are forced to intersect the surface whenever possible and make the radius as large as possible with the following contraint: As a viewing ray travels inside a cone, it cannot pierce the relief more than once.

No comments: