# Displacement Mapping Tessellation

This topic is 2382 days old which is more than the 365 day threshold we allow for new replies. Please post a new topic.

## Recommended Posts

I am using d3d11 tessellation. I have a tileable texture brick texture with normal and height map. If I map this texture onto each face of a cube and do displacement mapping tessellating, the displaced vertices do not meet on the edges of the cube. What is this problem called and how do you fix it?

##### Share on other sites
This is usually called "Crack". You must have the same tessellation factor ( set it on the Hull Shader ) for each edge of a triangle that shares a cube edge, and also the displacement amount on the edges must match.

##### Share on other sites
It's usually referred to as "cracks", and it's very common and difficult-to-solve problem. You can read this presentation for some more info, and potential solutions.

##### Share on other sites

You must have the same tessellation factor ( set it on the Hull Shader ) for each edge of a triangle that shares a cube edge, and also the displacement amount on the edges must match.
[/quote]

The tessellation factors are the same. The problem is that each cube face has a different tangent space, so the vertices on an edge get displaced in different direction.

I can't really think of a way to solve this unless I make my cube have rounded corners such that there will not by any vertices with duplicated positions but different normals.

##### Share on other sites
The tessellation factors are the same. The problem is that each cube face has a different tangent space, so the vertices on an edge get displaced in different direction.

I can't really think of a way to solve this unless I make my cube have rounded corners such that there will not by any vertices with duplicated positions but different normals.[/quote]
DId you try averaging the tangent space for the cube corners (so instead of facing directly up or directly left for instance, the edge ones will face 45 degrees up and 45 degrees left)? It should work then.

##### Share on other sites

The tessellation factors are the same. The problem is that each cube face has a different tangent space, so the vertices on an edge get displaced in different direction.

I can't really think of a way to solve this unless I make my cube have rounded corners such that there will not by any vertices with duplicated positions but different normals.

DId you try averaging the tangent space for the cube corners (so instead of facing directly up or directly left for instance, the edge ones will face 45 degrees up and 45 degrees left)? It should work then.
[/quote]

Yeah, that's basically what I meant when I said "make my cube have rounded corners." I don't have to round the geometry, but if I average the tangent space, it will give a rounded look with the lighting.

##### Share on other sites
Averaging is a solution, but instead of doing that, there is a potential solution in MJP link's. And also a easier one on this http://www.google.com/url?sa=t&rct=j&q=tessellation%20displacement%20mapping%20cracks&source=web&cd=1&ved=0CB8QFjAA&url=http%3A%2F%2Fdeveloper.amd.com%2Fgpu_assets%2FWileyAuthoringforTessellation.pdf&ei=ssSFT8PcNaiyiQKWv9j1BA&usg=AFQjCNGFsjyLTbkH11jBHvTgTmLuYJgRtQ&cad=rja

At page 45, they propose a filter at UV borders.

1. 1
Rutin
28
2. 2
3. 3
4. 4
5. 5

• 13
• 11
• 10
• 13
• 20
• ### Forum Statistics

• Total Topics
632949
• Total Posts
3009415
• ### Who's Online (See full list)

There are no registered users currently online

×