Hi !
Featured games (85)
games approved by the League of Dukes
Games in Showcase (636)
Games in Android Showcase (178)
games submitted by our members
Games in WIP (686)
games currently in development
News: Read the Java Gaming Resources, or peek at the official Java tutorials
    Home     Help   Search   Login   Register   
Pages: [1]
  ignore  |  Print  
  Need Help calcualting Tangent and Bi-normals using normals  (Read 954 times)
0 Members and 1 Guest are viewing this topic.
Offline Vorax

Senior Devvie

Projects: 1

System shutting down in 5..4..3...

« Posted 2005-06-04 23:22:58 »

I am having difficulties implementing bump maps on 3D objects.

I want to use the plane's smoothed normals to calculate the tangent and then do a crossproduct to get the bi-normal.

I have been over the entire web (or it feels like it), looking for an equation that will do this, but have found nothing Sad  All the tutorials and source everywhere that I have found use either the TBN loaded from the model (like POF models, which mine aren't, nor do i have SMax), or calculate the TB.N while calculating the geometry.

If I take the standard approach of delta p1->p2 cross delta p1->p3, I loose the smoothed normal and end up with flat looking surfaces.

Cas, if your out there... you said this was easy (and I agreed)...I correct us (or at least me)...XY plane parallel bump mapping with generated quads or triangles is easy  - complex surface bump mapping with accurate normals is not the same.  Cry

Can anyone help?

Offline Spasi
« Reply #1 - Posted 2005-06-05 14:20:29 »

The tangent is calculated per triangle (just like the normal). It depends on the vertex positions and their UVs. You've apparently found how to calculate this and it's what gives the triangulated look of your objects. Then, just like normals, you have to calculate the average tangent for each vertex, by averaging the tangents of the surrounding triangles. Same for the binormal, unless you calculate it on the fly (using a cross in a vertex shader). The difficult part is to decide how to smooth your tangents (e.g. the problem with mirrored UVs).
Offline Vorax

Senior Devvie

Projects: 1

System shutting down in 5..4..3...

« Reply #2 - Posted 2005-06-05 16:30:21 »

Thanks for your reply Spasi, but I have figured out what's gong on.

It was a 12-IFK (12 inches from the keyboard)... me.

I am embarrased to say that I having been using the WRONG crossproduct method for a WEEK!  My vector class has several cross product versions, they all work correctly, but they each do different assignments to either the vector itself, or the vectors sent to the them as parameters.  The one I was using stores the result back into the first parameter and I thought I was using the one that stores it back into the vector itself!   DOH!!! 

This exaplains why I was having so many  unexplainable problems.   I relearned an old lesson - don't take anything for granted, especially when debugging.

Pages: [1]
  ignore  |  Print  
You cannot reply to this message, because it is very, very old.

Dwinin (63 views)
2015-11-07 13:29:08

Rems19 (77 views)
2015-10-31 01:36:56

Rems19 (69 views)
2015-10-31 01:32:37

williamwoles (103 views)
2015-10-23 10:42:59

williamwoles (91 views)
2015-10-23 10:42:45

Jervac_ (105 views)
2015-10-18 23:29:12

DarkCart (131 views)
2015-10-16 00:58:11

KaiHH (114 views)
2015-10-11 14:10:14

KaiHH (153 views)
2015-10-11 13:26:18

BurntPizza (167 views)
2015-10-08 03:11:46
Rendering resources
by Roquen
2015-11-13 14:37:59

Rendering resources
by Roquen
2015-11-13 14:36:58

Math: Resources
by Roquen
2015-10-22 07:46:10

Networking Resources
by Roquen
2015-10-16 07:12:30

Rendering resources
by Roquen
2015-10-15 07:40:48

Math: Inequality properties
by Roquen
2015-10-01 13:30:46

Math: Inequality properties
by Roquen
2015-09-30 16:06:05

HotSpot Options
by Roquen
2015-08-29 11:33:11 is not responsible for the content posted by its members, including references to external websites, and other references that may or may not have a relation with our primarily gaming and game production oriented community. inquiries and complaints can be sent via email to the info‑account of the company managing the website of java‑
Powered by MySQL Powered by PHP Powered by SMF 1.1.18 | SMF © 2013, Simple Machines | Managed by Enhanced Four Valid XHTML 1.0! Valid CSS!