Parallax Occlusion Mapping

Started by
4 comments, last by Krohm 17 years, 7 months ago
I am looking at Tatarchuk's POM algorithm from the ShaderX3 book (chapter 2.5). The RenderMonkey example is using DirectX's HLSL and is working very well. Has anyone tried to modify this such that the effect is not evenly spaced. I am trying to use this effect to model millions of trees for a high flyer application and I can't seem to change the placement. So now to my question... Has anyone used this effect with some kind of placement map to determine how to place individual bumps at desired locations? Any suggestions would be appreciated. Thanks!
Advertisement
you mean you want to change the bumpmap?
there should be a greyscale map in the rendermonkey project that tells how the surface looks, probably this map is encoded in the alpha channel of the normalmap.

regards,
m4gnus
"There are 10 types of people in the world... those who understand binary and those who don't."
Yes, the tangent basis is encoded in the R G and B channels and the bump is in the alpha channel.

I need to create a percise placement for these objects. Are there tools to help aid in the creation of tangent maps and bump maps?

I would think that Adobe Photoshop CS (or whatever) would have some pluggins for this.

Any suggestions?
there is an nvidia photoshop plugin for creating tangent space normal maps.

Usually the artist draws the heightmap(black/white) and converts it to a normalmap.

regards,
m4gnus
"There are 10 types of people in the world... those who understand binary and those who don't."
You should take a look at a more recent technique for parallax occlusion mapping that Tatarchuk talked about at I3D this year. I think she integrated it into the latest DirectX SDK so you can get a shader sample there as well.

I found the paper here:

http://www.ati.com/developer/techreports/2006/I3D2006/Tatarchuk-POM-SI3D06.pdf

There are also a bunch of slides explaining various art authoring issues (look at the GDC presentation deck).
Quote:Original post by Anonymous Poster
http://www.ati.com/developer/techreports/2006/I3D2006/Tatarchuk-POM-SI3D06.pdf

This, as far as I've understood is POM, which is exactly what this thread is about. It's not "new" it's just the topic.
Quote:Original post by JeffKershner
Has anyone tried to modify this such that the effect is not evenly spaced?
...
Has anyone used this effect with some kind of placement map to determine how to place individual bumps at desired locations?

I hope to hit some of your issues because I'm not sure I've understood what you're trying to do.

I have implemented POM a few months ago.
Because I was well aware of its performance hunger, I went for a simplier, non-occluding version, as well as taking a few additional shortcuts, yet the performance was very low.
As a test, I've actually tassellated the real geometry: I got almost 5x performance increment so, bottom line: I guess you'll be better with standard geometry at least on low-end hardware.

Going back to the issue however, generating the normalmap just takes a difference shader.
Take the heightmap (for real geometry the zbuffer shall be fine) and run it thuru the shader, save resulting rendertarget as texture... but if you really need to handtune the bumps then this is a different story.

If you need to place correctly the object "models" or "billboards" or "whatever", I don't see why you should use bumpmaps... are you thinking about applying POM to the terrain itself to simulate the models?

Previously "Krohm"

This topic is closed to new replies.

Advertisement