Transparency Tests

Do you have the .blend file so i can test it ?

I tried another test including a separate black and white transparency map using the ArmoryPBR group, since it gave the best results, but the same or similar opacity issues persist. This 2nd test file is a bit cleaner with only 3 textured cubes. There still appears to be some sort of alpha sorting and emission problems as it would seem.

Some more results:
alpha sorting problem (skytexture and 1 lamp present)

emission problem when only skytexture is present (no lamps):

Files:
diffuse map

alpha map

2ndTransparencyTest.blend (906.1 KB)

(Edit) Here is the current node layout,

Hello i was able to reproduce the problem with my system (OS X® 10.11.6 ) even with deferred_path_high as suggested here:

I also tried to add alpha channel to the diffuse texture but the problem is the same:


At the end i suggest to post this issue on Armory GitHub.

Thanks for testing! Must be (another) transparency bug - will investigate and report back. Maybe going with different technique for rendering transparent surfaces would be the best solution.

Selecting deferred-high path is not needed anymore, it is enough to set Camera - Armory Render Path - Translucency to Auto on On. By default it is set to Auto - if translucent material is detected then render path builder will set it up automatically. On the other hand if no translucency is used then some resources/perf is saved. :slight_smile:

1 Like

As reference in my test i tried with Translucency “On” but the issue persist.

This topic seemed like a bit of a loose end at this point… I figure I’d mention that in build 12, the Discard option in the Armory Material Properties has solved all the issues so far seen in this thread with sorting and opacity! Woo!

(pardon the year old bump)

3 Likes

Oh wow this is cool! Happy the Discard option works.

1 Like

Hello, I’m digging up this topic :smiley:

I also have a problem with transparency.
I did enable “translucence” in Armory Render Path -> Renderer, my material is an Armory PBR, but I have no transparency until I check the “Discard” box.
With Discard checked, it is all or nothing: if the opacity of my materials is lower than the value of “Mesh Opacity”, my object is totally invisible.

Did I forget something?
Is it not possible to have anything other than a totally transparent or totally opaque object?

Thank you!

Translated with www.DeepL.com/Translator

Hi, i have a problem with transparency
in the img below the rotating letters should normally go behind her head
but they appear always on top.
I am using Armory PBR with Renderer/Translucency -> ON

marquee

btw, i tried setting the plane (with the girl) to “Armory Props -> Discard”
but it produces a weird fringe.
Is there a way to make the letter go around here without using Discard?

any help will be appreciated

here is the file as well
marquee-1.blend (499.3 KB)

Thank you.

I am having issues with particles with the tile sheet and transparency too. I can get the particles working fine but getting them to look right is driving me nuts. If anyone has gotten in to work a write up world be awesome. I have studied the smoke example and can not seem to replicate it.

Thanks

I’m stuying the smoke example too and try to get my sprite sheet work … when i have a result, i will post but not sure to get this work :slight_smile:

1 Like

I will keep at it too. I might have to skip this step for a while to keep my video series going.

@nassosyian I would just use the discard function and also use a different file format with an extra alpha channel like tga.

this is how I would setup my texture

for the text image I just put the actual text into the alpha channel of the tga and the rgb channels are completely white.

I played with smoke example, try to tweak it, but it seems we can not achieve a acceptable effect in blender … may be there is a beginning of answer here : https://blender.stackexchange.com/questions/32900/how-to-properly-render-smoke-on-a-transparent-background . Sprite sheet need to be in .png to have the transparency in armory viewport but blender not seems to manage emissive with transparency correctly. I tried many attempts in photoshop to store emissive of fire simulation in alpha channel to create a torch sprite sheet without sucess. However i can tell that sprite sheet seems working. I will try to share another smoke scene that reproduce this example.
Cheers.

… Sprite sheet need to be in .png to have the transparency in armory viewport …

This can’t be true since the smoke example uses a jpg without any alpha channel at all.

But haven’t found out why it behaves like it has transparency. Might have something to do with the “Blending” option in the material tab.

Maybe black color is recognize as alpha in armory, or blending mode as you say… don’t really understand how armory handle this yet. But i’m not sure armory can store emissive with transparency to make particle fire effect. I need to investigate more. I will share any progress on this.

Found something interesting in the manual:

Blending
To enable additive blending for specific material, set Armory Render Path - Blending to On and check the Blending property in Material - Armory Props.

So yes it is additive blending which gets rid of darker sections of the texture without the use of an alpha channel and it has to be switched on in the render settings of armory as well as the material.

Not sure about the emissive but I would stay away from the armory shader group. The emissive is having some kind of bug since it should use the base color to determine the color of the emission. But the moment I turn on emission the object just turns white.

@manfredp thank you for the reply,
unfortunately i want it for web use where the tga format is not supported
and PNG discards all the color information on pixels that have opacity==0.

Anyway, hope someone fixes translucency because it would be such a great feature.

@nassosyian In this case I would just use an rgb image for the color and another grayscale image for the opacity. Having both in the same file is nice but not a necessity. And you could also go with jpg which would make both combined still smaller than a single png.

I don’t think there is anything to fix really since I encountered the same issue in unity and unreal as well.
And the artefacts that happen with png and the discard option are to be expected. As I understand it the discard option reduces the opacity down to 2 possible states → fully opaque or fully transparent. And since the transparent parts in a png are handled as black you get unwanted outlines.

just because you have encountered it, as you say, in other packages does not mean it is ok.
there is no point having a feature if it doesn’t work.

It would be better if the edge-cases, when it stops working,
would be documented, just so we can avoid user-confusion.