• Competitor rules

    Please remember that any mention of competitors, hinting at competitors or offering to provide details of competitors will result in an account suspension. The full rules can be found under the 'Terms and Rules' link in the bottom right corner of your screen. Just don't mention competitors in any way, shape or form and you'll be OK.

Tessellation

At the simplest level

Takes a low detail mesh
Subdivides each polygon 100s of times depending on the viewer distance
Deforms the vertices of each of these new polygons based on the value of a pixel in a heightmap texture.
 
Rroff, there are only 5ish people on this forum who I 100% take on board what they say as sound advise, and your one of them !
 
Bit of a quick dirty diagram...

tess1.jpg


All objects in your games, etc. are made of of polygons - I'm not gonna go into what polygons are here I assume most people have a basic grasp.

Taking one of those polygons as an example, first we sub-divide it into lots of smaller polygons - usually 100s or even 1000s but for the example I've just divided it up a small number of times.

Then we use a heightmap, in this case its just a greyscale image - the color value of each pixel will define how we move each corner of a polygon relative to its original position. In this case the closer to white the pixel is the futher "off" from the plane of the original polygon the corner will be.

The next image shows how we would map each polygon onto the heightmap and hence know which pixel to use to move each corner.

Next image shows the polygon viewed side on, before any tessellation happens.

Final image shows how the tessellated polygon looks from side on after being both sub-divided and deformed.

Obviously theres much more to it than this such as smoothing, etc. (so a blocky low res model looks more "organic") but it should give you a basic idea. Prolly not explained this very well :S
 
Last edited:
Also another important note is that I seem to notice the current implementations of tesselation literally just divide the polygons up inside the the edges but actually don't add much additional detail.

AVP seems to be particularly guilty of this.
 
I understand what tesselation does. But how does it work. (I am a 3d modeller so I know about pollygons and such). Is it literally adding thousands of polygons on screen or is it doing somthing more complicated to make it run so smoothly. I wouldn't have thought hardware would have to be be built specially, to proberly utilize it, if it was simply subdividing pollies.
 
Last edited:
The hardware tessellator skips some of the performance penalty of pushing raw tris as the original polygon has already been transformed and any sub-divided polygons are relative to it.
 
Back
Top Bottom