[Question] Emission with alpha blending?
In many classic games, a texture with transparency is often used to represent a special effect which is usually associated with light-emitting phenomena, such as electrical sparks, fireballs, magical effects, etc etc
In RTX Remix, these textures are rendered at 'full brightness' which includes seeing them in reflections, however they do not actually give any light to their surroundings, which makes them look like they are still being imposed by the technological limitations of their original games.
In this example, I am attempting to turn this 'sparking' effect into an actual light source. This is the actual .dds texture as captured:
- Emission: For this material I have enabled Emission in RTX Remix , edited the .dds file in Paint Dot Net by messing with the brightness and contrast and setting the saturation to zero(reason explained below), then saving it as a .png file, before ingesting it into Remix as the Emissive Mask Map.
- Alpha blending : I have enabled 'Blend Enabled', and I am testing out the various blend modes.
- With 'Use Legacy Alpha State' checked, it appears visually identical to 'AlphaEmissive' , suggesting that this is the original blend mode:
- When the blend mode is set to 'Alpha' , the entire Emissive Mask Map appears in place of the intended texture and the lighting works:
- 'ReverseAlphaEmissive' :
- 'Color' , similar to 'Alpha' but only the parts of the Emissive Mask Map which are not black are rendered:
- 'ColorEmissive' :
- 'ReverseColorEmissive' :
- 'Emissive':
- 'Multiplicative' and 'DoubleMultiplicative', looks identical, seems that Blend Enabled has no effect:
It is possible for a game to use a single material, then change a parameter in the alpha blending in order to shade it with different colours for different purposes, for example a generic 'lens flare' texture might be given a blue colour to represent an energy weapon or magic spell, and a yellow colour to represent a simple light bulb or candle flame, for instance. Or in the case of this example, it is rapidly cycling through different purplish hues to represent electrical discharge. In other areas of the game, it is given a dark orange colour as a weapon's firing effect, as well being bright yellow a health pickup orb. Thus necessitating 'Use Legacy Alpha State' to preserve these effects. (This is is the reason for my Emissive Mask Map image to be pure white, as a compromise between the different in-game representations - they all appear white instead of their original colours.)
As it stands now, I have the choice between having this static white light which is the wrong colour but lights up the scene , or the original colour-changing special effects which do not actually emit any light.
Is it possible for one of the 'emissive' blend modes to actually emit light?
I kinda would expect it to emit some light, there's essentially 2 paths for that to happen in Remix currently: Direct - NEE cache, not entirely sure this would work since it may skip particles or at least non-opaque ones like this. Indirect - Emissive stuff should just be accumulated along indirect rays in reflections, GI, etc.
Given that, I'd expect at least the contribution from Indirect lighting to be showing up even if it's not the best quality usually (due to the poor sampling of indirect rays compared to directly sampling the texture), so it's odd that it's not in this case. Do you have Unordered Resolve/Emissives enabled in indirect rays? You can check this in the dev settings in Pathtracing -> Integrator -> Unordered Resolve in Indirect Rays and Unordered Emissive Particles in Indirect Rays. The latter will be disabled in High graphics presets, and the former disabled on Low which is why I ask.
You can check this in the dev settings in Pathtracing -> Integrator -> Unordered Resolve in Indirect Rays and Unordered Emissive Particles in Indirect Rays. The latter will be disabled in High graphics presets, and the former disabled on Low which is why I ask.
Hello thanks for the reply
I run on Ultra preset, and both those settings are turned on
Thanks for the update @ccarmatic - we've filed REMIX-4442 for internal investigation.
Thanks for the info! I have been struggling with this as well, trying to find a good way to do alpha effects. One thing i have found some use for was to remove the alpha channel from the texture entirely, save it as BC6u using nv texture tools, and use alpha emissive blend. this is with emissive disabled on the material.
In practice, i've had most success using the base came scripting tools to programmatically spawn light anchor meshes for rtx remix to attach lights to.
painkiller makes heavy use of vertex colors to change the color of these effects.
painkiller rtx remix showcase discord: https://discord.com/channels/1028444667789967381/1313627595815911448