PDA

View Full Version : Alpha Issue



kcole
09-13-2005, 07:22 AM
Not sure if this has been reported or is a known issue, but here goes:

The below renders are from LW's native renderer. The alpha channel appears to be incorrect, in the areas where a partially transparent textured object is in front of a fully opaque one. The transparency is a UV-mapped texture. The tree is from polas.net's TreesDesigner and the grass is HD-Instanced and generated from polas.net's GrassGenerator. Note that the issue occurs without HDInstance.

The background is an HDR ImageWorld.

FPrime renders a correct alpha, but of course won't render the grass. Also, if I use the 'Fully transparent polygon in front of the camera' render speedup trick, the alpha is rendered correctly with LW's standard renderer.

http://static.intervocative.com/kcole/HD-Grassy-Field.jpg
http://static.intervocative.com/kcole/HD-Grassy-Field-Alpha.jpg
FPrime's Alpha:
http://static.intervocative.com/kcole/HD-Grassy-Field-AlphaFP.jpg

MonroePoteet
09-13-2005, 09:57 AM
It doesn't look like UV-mapped transparency is the basic problem. My (really basic) experiments shows a correct alpha channel from native LW renderer in the simple case:

1) Several UV-mapped, textured transparency objects first in Z-order
2) Solid object next in Z-order
3) Image-world background

Is there perhaps refraction setting on the leaf surface allowing the edges to bend light showing through the background? Are there other shaders on the leaf surface from TreeDesigner?

mTp

kcole
09-13-2005, 10:45 AM
MonroePoteet, thanks for your help. No, there isn't a refraction setting on the object. I spent some time narrowing the problem down and eliminated the UV maps (replaced with standard transparency), and shut off all other channels. I also removed HDInstance and removed the ImageWorld. The problem remains.

I did notice that the alpha renders correctly when Ray Trace Transparency is off. Is yours off in the test you ran?

MonroePoteet
09-13-2005, 12:47 PM
No, I've got Raytraced Transparency turned on, and the alpha channel is correct.

Is there a clip-map on the tree object, or on the leaf groups, or on the individual leaf objects? I don't know how TreeDesigner populates the leaves on the tree. Does it use a Pixel filter like Sasquatch, or a Surface filter?

It appears from the original post that the trunk is correct, only the edges of the leaves are the problem. Can you save the Surface for the leaves and reproduce the problem by loading it on a different object (like a plain old sphere)?

mTp

kcole
09-13-2005, 01:16 PM
I delved through the surface and found that the problem only happens when the G2 shader is applied. Removing it solves the problem, and adding it back (even with default settings) brings the problem back. Guess I should move this to the worley group? Although, you wouldn't think a shader applied to a front object could override the alpha from a back object?

MonroePoteet
09-13-2005, 01:27 PM
I think shaders have to be applied in reverse Z-depth order. In other words, draw the stuff in back before drawing the stuff in front. So, I think overriding the alpha channel from background objects is at least feasible. I'd definitely ask Worley, especially if you can reproduce it in a simple scenario.

mTp