Let’s play with the lights. As I mentioned before despite using Lightmaps or CompleteMaps to simulate the original lighting conditions, we can make the impression of controlling the lights. Of course not individually, but all of them together.
If you take a look at a shader, for e.g. the shader of the Midfloor object, we can see a property named “Complete Map Color”. With this, we can adjust the intensity of the CompleteMap and also apply a color filter to it. Obviously, this effect should be applied on all the shaders simultaneously to achieve the desired result, for e.g. a fading in or out the lighting in the scene.
First of all, let’s add a Copy Color module that will represent the global lighting color of the scene. Let’s name the module “Lighting” for easier identification. Now we have to connect this module to all of the shaders in the scene. To do this, first select all of the shaders. We did this before: on the search, panel find all the shaders by type, mark them all, and press enter to select them in the Flow Editor. There is a special behavior of the editor. If multiple modules are selected and we do wiring from right to left, in this case for the “Complete Map Color” pin, then all the pins with the same name from all selected modules will be connected. This is a very convenient way for making group connections.
As we can see everything has turned black in the scene. The reason for this is that the default color in the Copy Color module is black. Let’s change it. We can push it up to white or we can set it to any color, we can see that the lighting changes globally in the whole scene. Let’s leave it on white.
Now we expose the global color so we can control it from the outside. This compound is already crowded enough, so we’ll put the further light controlling structures outside instead. Now we can see the new Lighting property on the model compound with which we can play with and we can wire things into it.
Let’s put together a structure that enables choosing between a few preset lighting colors. For the presets we’ll use a Switch Color module. Let’s connect it to Lighting. The scene is pitched black again. No worries. Currently, the Value 1 of the Switch Color module is active, so we change Value 1 to white. Let’s made this our base color. Now we switch to Value 2 by setting the Selected property to 2. Let’s set Value 2 to another color, let’s make it orange, but a moody darker one. Select Value 3. Make it dark, but not fully black.
From now on by changing the Selected property of the Switch Color module we can shift between our three presets. It would be much more pleasing if the color changed gradually. We have a simple module for this, the Smooth Vector. We already saw the Smooth module in the basic tutorials, it makes the change of a scalar value gradual. Smooth Vector is its big brother which does the same for vector values consisting of an arbitrary number of numeric values. A color value is actually a four-component vector so we can easily apply the Smooth Vector on it. Let’s make the Delay 1 second. From now on changing the Selected property results in smooth 1 second color transitions.
Note that also a slight editing difficulty has resulted from this structure. If we want to change a preset color, for e.g. Value 1, while we’re setting the color it’s disturbing that we see our changes with a delay due to the smoothing. The solution is that for the time of setting up we connect the color directly, bypassing the Smooth Vector module. When we finish we restore the connections.
Now we want this color selector to appear as a simple button row that can easily be used during the live show. We want a Control Board similar to the ones for Camera and Billboard settings. We can do it easily. Let’s create a new Control Board. Control Boards in general are a bigger topic, but now I will discuss the basics. Let’s right-click on an empty area, and choose a “New Special Compound” then “Control Board”. We name the Control Board „MAIN”. We can see it appears here at the top in the Control Board list. We can switch to it, but of course, it’s currently empty.
This box represents the Control Board in the compound, we can place it anywhere, it doesn’t matter.
How can we fill it with content? We can assign any module to the Control Board. For example our model compound. With right-click, choose “Add To Control Board” then “MAIN”. If we now switch to MAIN, we can see the Midnight Show module on the board along with all its properties. In other words, we can make an arbitrary selection of our modules that will appear on the Control Board undisturbed by other less important ones and the web of their connections.
By adding full modules to the Control Board is still not satisfying enough since we usually only want to adjust some of their properties during the show. So let’s remove the Midnight Show module from the Board. Right-click it and choose “Add Control Board”. We can see that “MAIN” is checked in the menu indicating that the module is added to it. By clicking it again the checking is removed and also is the module from the Control Board.
So instead of adding complete modules to the Control Board, we can use Pin Collectors. Let’s add one. Right-click on an empty area, and choose “New Special Compound” then “Pin Collector”. We can wire any input pins into the collector even from different modules. What we need now is the “Selected” pin of the Switch Color module, so connect it. Let’s name the Pin Collector something reasonable for e.g. “STUDIO LIGHTS”. Then add the Pin Collector itself to the Control Board. Now if we switch to MAIN we have a box here that only has the property that is important to us, the “Selected”.
But it’s still not comfortable enough. We want big buttons like these on the camera control board. The way to do this is to give a special name to the property. First of all, we start the name with a #, it indicates that we want buttons. After that, we enumerate button names separated with a comma. For now let it be A,B,C,D. Now we see that the A, B, C, D buttons appear on the box. Furthermore, these buttons give the 0, 1, 2, 3 values to the property when they are selected. A is 0, B is 1, C is 2, and so on.
But the Switch Color module is currently controlled by the 1, 2, 3 values, we don’t need the A button here. We should skip value 0 somehow. This can be done by removing A from the pin name, but leave the comma, thus creating an empty element in the list. We can see that only the B, C, D buttons remained with the 1, 2, 3 values. Let’s add proper names to the buttons. We can make them Full, Orange and Dark. Now we have an easily identifiable button row.
We can add gaps between the buttons. For example, we want the Full button to be well separated from the others. We can do this by adding underscore characters before the name of the next button, which is the “Orange” in this case. We can see the gap appeared. So an underscore represents a gap. We can create bigger gaps using multiple underscores.
It can also be uncomfortable that we have a separate Control Board for our own buttons and a factory one for controlling the cameras. We have to constantly switch between them during the show which is inconvenient. There is a solution: from an existing Control Board, we can assign modules to another Control Board. Let’s select all the four yellow camera path controlling modules, right-click them, choose “Add To Control Board” and then “MAIN”. From now on they are also accessible from the MAIN Control Board.
Now we’ve returned to the topic of light controlling. We’re able to resolve the issue with the lights, so now the lights of the studio apparently can change their intensity and color. But it would be much more pleasing if according to the lighting the chandelier and other lamps change their intensity and color as well. We can do this easily. We have this global Lighting module that is connected to every shader. We have to wire it into the Luminosity Color of the lamps as well.
But it’s not quite that simple. Let’s select the material of the chandelier. We can see that the shader already has a distinct Luminosity Color value, to be more precise it has a high intensity value. We exploited it before to create a glow effect around it. We don’t want to ruin this original intensity. So instead of directly connecting the light color to the Luminosity value, we’ll multiply them together. Let’s add a Color Multiply module. Copy the original Luminosity Color to its B argument. Then wire the global lighting color into the A argument. We can do this by cloning an existing wire coming from the desired source. Hold down the Alt key, drag the wire and connect it to the A pin. Finally, the result goes into the Luminosity Color of the shader.
We see that the intensity of the lamp is faded since we are in DARK mode currently. If we switch presets the chandelier's color changes along. But this doesn’t feel correct yet. It’s unrealistic that such a dark lamp surface can cause this lighting level. We should assign a different intensity curve to the lamp so that its intensity decreases slower. We can apply the Power module here which is also familiar from the basic tutorials. Since it can work on vectors as well, we’ll apply it on the lighting color. We put it before the multiplication to preserve the base luminosity value. Now if we decrease the power exponent, the intensity curve will condense towards 1. Let’s set it up so that even in this dark setup it has a bit of a glow. Now if we check the presets the conditions are a bit more believable.
It also would be nice if we applied this color control on these little lamps as well. Let’s select their shader. We’ll use the Power-modified color again, and do a multiplication as before. We add a Color Multiplier, copy the original Luminosity Color, and make the connections. Now the color and intensity of the small lamps change, too.
Don’t forget our extra Point Light used for specular reflections. Since its main Color is the default white, we’re in a much easier situation. We can skip multiplication and simply wire the Power-modified color into the light’s Color. Now the color of the specular highlights also accommodates to the global lighting color.