[HOU-2376, HOU-2532] Lightmix workflow

As I had a little time on my hands, I started to look into the Lightmix workflow and a question popped up. When changing the color/intensity of lights in VFB’s Lighmix Panel, shouldn’t the GI (and in fact any secondary rays) from that light also change? Currently, the GI (and secondary rays) together with the light’s shapes (rec lights in my case) live in the “Rest”-Element. Is that how this should work or am I missing something? I also want to add that I played with lightmix back in maya’s vray5 beta, and I think I remember, that GI would change along (which is really the only useful option).

Also as a sidenote, the default setting for Light groups in the LightMixRE is called “Instanced Lights” where as in the docs it’s called “Individual Lights” (insterestingly enough only in a screenshot) which makes a lot more sense. Also, the structure in the doc for describing the LightMixRE’s Paremeters seems a bit off, might be good to change that.

My simple testscene is attached.

V-Ray for Houdini number:10756 hash:c8d62a9 from 07 Jan 2021 05:10 (build number:10756)
V-Ray Core 5.00.50 [28341730] from 4 Jan 2021
vray5_lightmix_v01.zip (30.1 KB)

Hi,

I was about to raise this topic too, you read my mind @ronald_a .

As it stands at the moment the light might is quite unusable for us, well the VFB workflow of adjusting lights works but the output doesn’t. It seams the light selects generated by the light mix are not “Full”, so the GI contribution of each light and the self-illumination part (the actual light sources) of the lights are missing in the light, all of this is overflowing to the “Rest” element which I guess is just a “difference” vray makes from the beauty render to the lights selects, environment, selfIlum and puts there what’s missing. Don’t know why this is but it doesn’t make much sense, in terms of comp, when a light select is modified you also need to modify its GI and selfIlum components.

Request section @Gosho.Genchev @chakarov .

1 - Can the light selects generated by the lightMix be changed to “Full”?
2 - Could we get more options for the light mix exports? Option do divide each light into Direct, Indirect and selfIlum components.
3 - More grouping options for the lights. Group by name (eg; lgt_ceeling_001 and lgt_ceeling_002, this 2 lights could go together since the name is the same but the number padding is different).
4 - Make the light intensity and color in the lightMix match the lights (all lights in the lightMix are at 1.0 and white, so if I want to make a small adjustment of the color I can’t since I don’t know the original color, I have to go and copy the color in the light first. And if my light color has values over 1.0 it doesn’t even let me use those).

Light color and intensity should be in lightMix:


Missing components of lights in Rest:

Color values in lightMix can’t go over 1.0:
lightMix_color.gif

Best,
David.

Hi @david.anastacio

The mode should be “Full”, but I’ll double check

To divide light contribution to direct,indirect and full you could use Manual mode of LightMix and add LightSelect elements you need.

You could set LightMix to Manual mode and add as many LightSelect elements as you need by grouping lights the way you want

The value and color in LightMix controls in VFB are just multiplier for light parameters, it is done this way because you could combine lights with very different intencity or colors but control them in one place.

Hi @chakarov , thanks for taking the time to answer,

The mode should be “Full”, but I’ll double check
Then is probably a bug, lightMix is not generating “Full” light slects.

To divide light contribution to direct,indirect and full you could use Manual mode of LightMix and add LightSelect elements you need.
Sure, but that way you lose the ability to get the light selects automated…bummer. One of the cool things about the lightMix is to not have to use lightSelect elements, just throw a lightMix and output all light selects automatically.

You could set LightMix to Manual mode and add as many LightSelect elements as you need by grouping lights the way you want
Same answer as before, lightMix is cool because it outputs light selects automatically.

The value and color in LightMix controls in VFB are just multiplier for light parameters, it is done this way because you could combine lights with very different intencity or colors but control them in one place.
We discussed this internally and everyone was of the opinion that this color and intensity values would be better if they were the values of the lights. The reason you mentioned to use those values as offsets would actually only work if users set the lightMix to “Manual Mode” and use more than 1 light in the light selects, otherwise in “Instanced Lights” mode the lights cannot have different color or values since they are instanced, and in “Selected Objects” mode the lights selected are all individual, so no group of lights to offset here.

Plus this raises some issues regarding offsets, if I have a light with a color value of 1.0, 0.0, 0.0 (Red), how can I offset that light to add a green and blue components to it? I can’t, the value sliders can only go down. Second example, my light has a value of 33, 20, 18 (hight values are normal when sampling lights from plates) and I’m matching this color to a plate by color picking it’s RGB values, and now I need to offset my light to match the individual RGB components, how can I offset the individual components up, or increase it’s saturation? That doesn’t work to, we can’t make values go up and if all I want is to saturate a color, by sliding the saturation slider up, it doesn’t do anything because it takes the white color as a base, not the light color.

When working with plates matching light usually is a precision work of reading and matching values, and working with offsets this way does not allow for that, we would really like to see this changed to reflect the exact color and values of the lights.

Best,
David.

Hi again,

This might be caused by an old style LightSelect export. Devs are working on it.

About Light grouping and Full/Direct/Indirect contribution, I’ll add your request in our system and will inform you when there is something new.

About multipliers and colors of LightMix in VFB, I’ll talk with devs if it is possible and will inform you.

Hey,

Just looked if there was any update on the lightMix, and it looks like GI is finally going into the light select, but the light source is still missing. See attached images.

Best,
David.

Hey,

Just a reminder in today’s build, the light mix is still NOT full mode. Light sources are still going to the “Rest” channel.

Best,
David.

Ha, just found out the exact same thing.

Hello and sorry for late reply, the problem is reported but still not fixed.
this post-translate should workaround it for now

import vray

from vfh import vfh_utils

renderer = vray.VRayRenderer()

for plugin in renderer.plugins: [INDENT]if plugin.getType() != "RenderChannelLightSelect":[/INDENT]
  [INDENT=2]continue[/INDENT]
  [INDENT]if (plugin.getName())[:14] != "LightMixSelect":[/INDENT]
  [INDENT=2]continue[/INDENT]
  [INDENT]plugin.light_select_mode = 4

Hi again @chakarov ,

Just pulled today’s build of V-Ray 5, and the issue still persists and it kind of got worse. Light sources are still going to “Rest”, and now GI is also going there, again.

Also, using the post translate you indicated, same result:

V-Ray for Houdini number:12909 hash:3a42a64 from 06 Apr 2021 01:59 (build number:12909)
V-Ray Core 5.00.50 from 31 Mar 2021

Best,
David.

Indents of post-translate script are messed. I guess copy does not copy them, you will need to do it manually.

Hi @chakarov ,

True, the indents were missing, after fixing them it works as it should. So you are just forcing mode 4, which is “Full”, which means “Full” mode works and it’s not broken, it’s just getting incorrectly set to the wrong mode by V-Ray when using the light Mix for months now, what’s keeping you guys from fixing this issue?

Best,
David.

Yes the problem is that modes from 0-4 are not exported at all, problem is reported.

what’s keeping you guys from fixing this issue?
It’s the USD support, the devs are working on USD support