Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Why do PBRT and Mitsuba bump maps look different? #13

Open
benjamin-heasly opened this issue Oct 14, 2016 · 1 comment
Open

Why do PBRT and Mitsuba bump maps look different? #13

benjamin-heasly opened this issue Oct 14, 2016 · 1 comment

Comments

@benjamin-heasly
Copy link
Contributor

rtbMakeMaterialSphereBumps demonstrates Generic mappings syntax for bump maps, with PBRT and Mitsuba.

For some reason, the bumps look different between the renderers, even with the same source image for the bump map texture and the same scale factor applied to the texture. Often, the bumps look smaller in Mitsuba.

We can scale the bump maps. For large scale factors, it's hard to tell which bumps look bigger, but they still look different.

One possible explanation is that renderers read images differently. The Mitsuba docs say that bump maps use texture values above the texture minimum, not texture absolute values, for the bump heights. Does PBRT do the same?

I tried using a source image with contrast stretched to the full image range, so that the texture absolute value and value above the minimum would be the same. The renderers still made different-looking bumps. It's possible the contrast stretch got broken when I converted from .jpeg to .exr.

Another possible explanation is that the bumps have different "shapes" as implemented by the renderers, because of some deep assumptions about small-scale surface geometry or numerical rounding. So "bump" might mean different things to the two renderers.

@benjamin-heasly
Copy link
Contributor Author

It might be OK that the bump maps look different. Bump mapping is kind of a performance hack, to avoid complicated geometry. So it doesn't have an obvious physically-based interpretation.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

1 participant