Search in
Sort by:

Question Status:

Search help

  • Simple searches use one or more words. Separate the words with spaces (cat dog) to search cat,dog or both. Separate the words with plus signs (cat +dog) to search for items that may contain cat but must contain dog.
  • You can further refine your search on the search results page, where you can search by keywords, author, topic. These can be combined with each other. Examples
    • cat dog --matches anything with cat,dog or both
    • cat +dog --searches for cat +dog where dog is a mandatory term
    • cat -dog -- searches for cat excluding any result containing dog
    • [cats] —will restrict your search to results with topic named "cats"
    • [cats] [dogs] —will restrict your search to results with both topics, "cats", and "dogs"

Tangents vs Normals vs Binormals?

I understand why i need Normals. But i dont understand why do i need Tangents and Binormals? And how they related to Normals...

Why Normals are all Symmetric and every Surface has own Normal, but there are only 2 Tangents and they are not Symmetric, but surfaces are still totally Symmetric... i dont understand why i need tangents, and also binormals.

alt text alt text

Product Version: Not Selected
normals.png (172.9 kB)
tangents.png (155.7 kB)
more ▼

asked May 30 '14 at 07:41 PM in Rendering

avatar image

1.1k 119 144 378

(comments are locked)
10|2000 characters needed characters left
Viewable by all users

1 answer: sort voted first

Oh, after looking at Ball's tangents/normals/binormals i become understand, that Tangents is something like X direction for texture UVs, and Binormals is Y direction for texture UVs.

Ball have for some vertexes 2 tangents/2 binormals because its actually not 1 vertex, its a 2 vertexes which connecting different UV parts, this 2 vertexes seems 1 Normal, but actually there are 2 Normals as well.

I hope i did understand well.

alt text

ball.png (268.7 kB)
more ▼

answered May 30 '14 at 08:15 PM

avatar image

1.1k 119 144 378

avatar image darkgaze Mar 27 '18 at 03:12 PM

Be careful about this, though. This is very confusing. When creating a shader, if you create the mesh yourself and then create a material/shader that changes the normal parameter, don't listen to that tangent space.

What the normal plug in a material expects is a typical tangent space: Z is normal, Y is bitangent, X is tangent (in the U direction), which is RIGHT-HANDED, and not compressed (values go from -1 to 1, not from 0 to 1, like you normally do in other softwares (normal maps look purple instead of dark blue).

After passing those values, internally, Unreal swaps Y for Z, changing it to a LEFT-HANDED space.

In fact you can test this by passing a (0,0,1) normal to a material. It will work as a normal vector to the surface. But when you see it's effect, it seems to be a (0,1,0) vector :-)

(comments are locked)
10|2000 characters needed characters left
Viewable by all users
Your answer
toggle preview:

Up to 5 attachments (including images) can be used with a maximum of 5.2 MB each and 5.2 MB total.

Follow this question

Once you sign in you will be able to subscribe for any updates here

Answers to this question