Depth Mapped Shadows on ATI

Ok all OpenGL pimps…
I have had depth mapped shadows working for some time in JOGL a’ la - http://developer.nvidia.com/object/Shadow_Map.html

HOWEVER, I have never gotten to work on ATI because, well, the technique I implemented uses register combiners which are nVidia only.

So, short of a pixel shader (which would be jsut fine as well) does anyone know or have pointers on how to pull it off with “standard” OpenGL. I would like this JAVA (yet video card specific!) demo to run cross-platform!

Thanks for any help!

[quote]Ok all OpenGL pimps…
[/quote]
Awe yeah! Pimp on mofo’s!

As far as I know, ATI supports ARB_shadow extension from Radeon 9500 on up.
It only supports doing GL_NEAREST filtering though, if you want more, you will have to use a fragment-program.
Another “problem” is, that currently render-to-depth-texture is not supported so you will have to resort to glCopySubTexImage.

Jan

After a evening of baning my head on the ATI wall, I will move on to a Fragment program for the final combiner stage.
It’s a shame, because with the standard ARB extentions the conbiner stage is real simple…

OK!
Just about got it working right with standard OpenGL token/functions.
I will post the code when I am sure if anyone is interested, especially since I couldn’t find it laid out nicely in one block online or in a book.

However, there is one thing still giving me trouble on the ATI only and that is GL_CLAMP_TO_BORDER.
I need to clamp a border color around the edge of the texgen using
gl.glTexParameterfv(target, gl.GL_TEXTURE_BORDER_COLOR, hwBorderColor);
It works fine on my nVidia Quadro, but not on my ATI RADEON 9600

Can anyone confirm or deny this? I googled the heck out that and found no evidence for or against texture border color working not.

Wel, I got a chance to test on some other ATI hardware and it works fine!
Whew. Just my laptop graphics are wrong it seems.

Gotta love the whole, different vendor/card model/driver world.

Anyway I have correct standard OpenGL cross-vendor depth map shadows working at last. :smiley:

Would you consider contributing this demo into the jogl-demos workspace? The only depth map shadow demo we have is also NVidia-specific…

I’d also like to get the VertexProgramRefract and ProceduralTexturePhysics demos running on ATI cards…any volunteers to port them over?

/me rises hand

[quote]/me rises hand
[/quote]
That’s cool…would you look at the VertexProgRefract demo and see what you can figure out? It uses register combiners to assemble the R, G, and B components of the texture. In theory it could use a fragment shader to do the same but I haven’t looked at it in detail.