bump mapping, normal mapping, offset mapping, and....

You shouldn't be using linear filtering to filter normal maps.

I know we all do but its still bad even when the signs are the same, de-normalization causes lots of visible artifacts.
 
DeanoC said:
Err just about every XBox title since release uses normal mapping (including at least Halo 1 and Shrek 1).

Now if your talking 'Appearance Preserving Simplification' then maybe...

And yes I am going to correct you everytime until you get it right.

My bad. Yes, I was wrong. What you said was what I meant. I guess I should correct the earlier part as well - The Chronicles of Riddick: Escape from Butcher Bay. Didn't mean to piss in your cheerios...
 
DeanoC said:
You shouldn't be using linear filtering to filter normal maps.

I know we all do but its still bad even when the signs are the same, de-normalization causes lots of visible artifacts.

well, that's part of the win -- you get no denormalizations with XY (or polar space, for that matter, if done right) interpolation, just the benefits of smoooothness
 
Well, it's true that there'll be no denormalization since the z-component is derived based on the assumption that x and y are part of a normalized vec3. . . However, the error is always there. Assume, for example, that one is working with normalized vec2. Interpolating between two vec2s will have a denormalized result. Of course, one can simply renormalize a vec2, but when we're trying to derive a third component this is not possible. As such, the result may be a normalized vec3, but it is still derived from an error.
 
Ostsol said:
Well, it's true that there'll be no denormalization since the z-component is derived based on the assumption that x and y are part of a normalized vec3. . . However, the error is always there. Assume, for example, that one is working with normalized vec2. Interpolating between two vec2s will have a denormalized result. Of course, one can simply renormalize a vec2, but when we're trying to derive a third component this is not possible. As such, the result may be a normalized vec3, but it is still derived from an error.

objectively speaking you're right - interpolating as vec2 and then deriving the 3rd component such that the norm of the vec3 is 1 is definitely not the mathematically-correct way, yet i doubt it would produce visually-noticible errors (no denormalities), thus would be acceptable for game purposes. of course, it would have been so much nicer if hw did the re-normalisation when sampling from a source to a dot3 operation...
 
darkblu said:
objectively speaking you're right - interpolating as vec2 and then deriving the 3rd component such that the norm of the vec3 is 1 is definitely not the mathematically-correct way, yet i doubt it would produce visually-noticible errors (no denormalities), thus would be acceptable for game purposes.
I can agree with that. :)
of course, it would have been so much nicer if hw did the re-normalisation when sampling from a source to a dot3 operation...
How would it determine that? Perhaps for the fixed function pipeline that'd be feasible, but probably not for the programmable pipeline. A special texture lookup op might do the trick -- but rather than crowd the API much more, I think a new texture filtering method would be a better idea. Perhaps. . . cubic interpolation? :)
 
ninelven said:
My bad. Yes, I was wrong. What you said was what I meant. I guess I should correct the earlier part as well - The Chronicles of Riddick: Escape from Butcher Bay. Didn't mean to piss in your cheerios...

I was a bit harsh, so I deserved that :)

But on a more serious note, as graphics gets more complex using the correct term will become increasingly important, especially if you talking to 'experts' in the field. When I originally read your message, I had no idea what you were talking about, I couldn't tell if you meant normal maps or APS. The are lots of bad information on the net and being a bit pendantic might help a few people understand whats actually being talked about.
 
DeanoC said:
The are lots of bad information on the net and being a bit pendantic might help a few people understand whats actually being talked about.

Spherical Harmonics lighting Powaaa!!! :p ;)
 
DeanoC said:
You shouldn't be using linear filtering to filter normal maps.

I know we all do but its still bad even when the signs are the same, de-normalization causes lots of visible artifacts.

You can normalize the vector after filtering.
 
DeanoC said:
Err just about every XBox title since release uses normal mapping (including at least Halo 1 and Shrek 1).
Now if your talking 'Appearance Preserving Simplification' then maybe...

Deus Ex 2 and Thief 3 are also using normal mapping, on (almost) every surface, combined with stencil shadows. They just did not get the source art and the engine speed to the levels of Riddick, as it seems...
 
Laa-Yosh said:
Deus Ex 2 and Thief 3 are also using normal mapping, on (almost) every surface, combined with stencil shadows. They just did not get the source art and the engine speed to the levels of Riddick, as it seems...

IIRC the Riddick engine is 60fps, while Warren Spector's Deus EX 2/Thief 3 engine is... pushing a rocking 18fps (j/k, but still not so far from the truth, actually)
 
Back
Top