OpenGL bump maps bug still in V5 and also in WIP

When I use a noise texture (here I used simplex) in the bump texture channel and increase the map repetition to 500 to simulate both aluminum and textile then it looks really bad in Rendered view, but fine in Neon and other renderers.
Can you please look into that @jeff ?

Also I would really like a reflection blurriness option in the materials, this is normal in other renderers and so much faster to use (and calculate) than to use a bump map, can you look into that for the new material settings vor V6? It would be like the “metal - polish” option in the new metal material, so it should be fairly quick to hook up since it is allready there.

You could even hook the Glossyness up to the Reclection I guess…

Noted…

Not sure what’s going on with the simulated noise texture…What happens if you use something like a noise normal map? Does that work at all? I’ve attached one here…

hmm bump maps in v5 do not work very well - I would say that they work like a total crap :slight_smile:

It works “fine” I guess… if we only consider the size of the noise, but it doesn’t look right though.
Here is a side by side comparison (used good old testmoocow :wink: )

Hi Jeff, here I tested the normal map on a simple sphere, the size seems ok, but what’s causing the black spots?

Also the bump structure changes if I toggle on “grayscale” for the map.
(But that does not affect Neon)

I would agree. Thanks for the feedback.

I know how much you’d love the viewport to work like a real raytracer in real time…but it’s just not going to happen :slight_smile: …not for a few more years anyways. So comparing results between a raytracer and lighting effects and trickery is probably never going to look anything close to the same.

That being said, the display uses what is called “Normal Mapping” to achieve the bump effect…which means, it needs a “normal map” to work correctly. Inside Rhino there is a very crude mechanism that attempts to detect whether or not the “bump map” is a normal map…if it thinks it is, it leaves it alone. If it thinks it’s not dealing with a normal map, it converts what it does have into something like a normal map. However, going the other way around makes no sense… You can’t take a normal map and change it to grayscale and expect the correct results… but I digress… What I think you’re seeing then is Rhino taking your normal map that you converted to a grayscale map and converting it back into a normal map again…and obviously the results will not be the same… And I’m pretty sure Neon doesn’t do any of this…it just uses whatever map it’s given as a “bump map” …and it can do that because it’s a raytracer. The display is fixed on using Normal Mapping, and so it does whatever it can to ensure it’s dealing with normals and not different shades of gray.

Ok… with that long winded response… I will try to see why there are black spots showing up…it might be the nature of the normal map itself (I just pulled it from my inventory, not paying attention to what it’s actually supposed to be used for…but its name does indicate that it’s supposed to provide some kind of “sparkle” effect). I will see if I can either find out why this is happening or find a better noise normal map (or both). Also, since bump mapping is a lighting trick, make sure you’re using actual lights in your scene…it will not work with just the environment and Skylight…sorry, it’s just how things work currently.

Thanks,
-Jeff

Hang on… something looks broken to me with bump mapping in V6… I’m getting dark areas using any Normal Map…something is not right…brb.

bump maps in V5 are simply broken in my opinion. No matter the intensity or the map itself (I tested in many ways) - it looks always to strong and there is visible some kind of stepping within the map on the model.

False alarm…I guess. Things seem to be working as expected now.

@Holo
I’ve attached a test file…Just open it and see what your Rendered view looks like. Don’t add anything…no lights…just view as is. I want to make sure you and I are at least seeing the same results using the same information.

Note: Btw, not sure you know this yet, but in V6 you can now have negative bump amounts…which basically flips the bump direction… I know that’s trivial, but I tried getting it into V5 and got denied.

SphereTest.3dm (900.8 KB)

Can’t open that in R5sr12.

Correct, we’re on V6 now :smile:

I know the thread titles says V5…but it also says WIP, so…

Joking aside…There is nothing I can do to fix anything in V5 at this point…so we’re focusing on V6’s display and what can be tuned up there. The bump mapping in V5 (to quote another user) is crap…but the display in V6 is much, much better…and does things more correctly…even flat surfaces should now work as expected…but don’t go comparing them to raytraced results :wink:

For example…Here’s the same scene using V5’s display:

@Holo Jorgen, I just realized that you keep testing in V5… and I thought we were talking about V6…as I mentioned above, there isn’t anything I can do about V5’s bump mapping at this point.

Here is V6 using that sparkle noise normal map…

Agreed…this is one of the biggest problems in V5’s bump mapping…the way it applies the “amount” is by simply perturbing the normal by that amount…It works in many cases, but fails in most (IMO). V6 calculates true normal mapping in real time inside the pixel shader…Try it out…you can also reverse the bumping in V6.

AH, yes, sorry for not being clear…
IMO production tools needs to be fixed if bugs are discovered. I fully understand it is nice (and required) to just put everything on the next release, and that is ok if the release is every year, but when the release cycle is every 4 or 5 years then it is a different story, that’s why I still post V5 bugs, because V5 is what people use and compare to other software.

That said, the V6 image you show looks nice, but here on the chair model I still get the scale issue (it uses the noise shader):

Ya, my guess is that it’s either because this is a procedural map and/or it’s not creating a normal map and therefore the internal mechanism is trying to convert it to one…and the end results aren’t very good… I’ll talk to Andy about this to see if there’s a way to special case things for the display only.