Beat
Posts: 165 |
Inspired by ThreeDee's filter 'Branching', I started to expand and experiment a bit with that filter.
I ran into the following problems : Branching has many Perlin Noise Components. I want to have one controller to adjust all the Angles of the Perlin Noises, but giving them slightly different values. I tried to add different amounts for each Perlin component to the basic controller. I used Add from the RGBmath. But that does not work, as the Angle input from the Perlin Noise component does not accept the RGBmath output. So basically, I want to have a slider and add different amounts to this control signal that must go into the Angle input of the Perlin. How do I do that? I attached a simple example of the question. FF Question 2.ffxml The Stone Age did not end because they ran out of stones. Niels Bohr |
|||
Posted: January 20, 2024 5:04 pm | ||||
Rachel Duim
![]() |
Go to the Slider control and check Use Remapping. In the attached example the second noise is always 10 degrees higher than the first. Click the remap box to set the min and max.
FF Question 2 answered.ffxml Math meets art meets psychedelia. |
|||
Posted: January 20, 2024 5:19 pm | ||||
Beat
Posts: 165 |
You're a rapid replier, Rachel, thanks.
I had seen your answer yesterday, just as I was going to bed, so it had to wait until today. I get your solution, quite clever. I hadn't thought of that. I was too fixated on doing it with arithmetic. Still, it would be nice to have some basic arithmetic components for controller values (+ - x / at least). In more complicated situations than my example, it might not be possible to do it with Remapping. I will think of some situations where I think 'real' arithmetic is needed. The Stone Age did not end because they ran out of stones. Niels Bohr |
|||
Posted: January 21, 2024 6:52 am | ||||
Rachel Duim
![]() |
I agree, remapping only goes so far. Here's another example, showing a control (remap changes range from 25 to 75) changed to a curve then sent to the Roughness input of the Perlin Noise. And a sine curve to the Contrast. This only works to green inputs. In most cases the value you send to a green input needs to be between 0 and 1, values above or below are clipped. So adds and other math operations can be used as long as you keep the green input between 0 and 1.
Grey inputs are trickier and can be done in some cases with Map Switches, but that's another story. FF Question 3 example.ffxml Math meets art meets psychedelia. |
|||
Posted: January 21, 2024 1:48 pm | ||||
Beat
Posts: 165 |
Your solutions give some new possibilities to to simple/basic things with the controllers + it also opens up some new possibilities.
In the same vain, I came up with a solution for a simple "On/Off" for each channel of a MultiBlend. See attached example. I know Switches, I know Curve Switches (the blue ones), but what are Map switches? I would like to learn more as to 'recalculate' (meaning, putting the controller values through a function) controllers that can go into the Grey inputs. E.g. how can I make 1 controller give control values of 50 -100 for grey input 1 and at the same time go from 50 down to 0 for the second grey input? A easy function would do the trick, but that seems not possible in FF. I also think it would be great if every component has a bypass switch so it can let through the signal without affecting it. Of course with a switch object it is possible, but these objects take up much space in the editor and do make the whole filter less clear. A simple Bypass option would do the tick, like on an effect pedal for a guitar ![]() FF Example On-Off.ffxml The Stone Age did not end because they ran out of stones. Niels Bohr |
|||
Posted: January 22, 2024 12:03 pm | ||||
Beat
Posts: 165 |
I just found the Map Switch.
Unfortunately, it also has a green output, so no way to anything with it to route controllers to a grey input. I do not understand why there is no switch that works on Grey inputs. That should not be too hard to make ![]() The Stone Age did not end because they ran out of stones. Niels Bohr |
|||
Posted: January 22, 2024 5:32 pm | ||||
Rachel Duim
![]() |
Check out this topic to look at an example using Map Switches to deal with grey inputs. Towards the bottom of the topic is a Map Switch example to show a workaround to manipulate otherwise "constant" grey values.
Math meets art meets psychedelia. |
|||
Posted: January 22, 2024 9:39 pm | ||||
Beat
Posts: 165 |
Rachel, thanks again for your input.
I looked at the examples you provided and I kinda get it, although the Randomiser is confusing me a bit. I will study it some more and really nice, as a bonus catch, you drew my attention to map Switch, which I had not used before. You're solutions are very clever ![]() What puzzles me, that grey input controls cannot be managed in an easy way. Why is it not possible to add two controller values and send them added to a grey input, for example. It seems so basic to me. I am wondering, is it not quite easy to script in Lua a new component that converts from Green input to a Grey output? E.g. a color (0.4,0.2,0.7) could convert to -selectable - one of the 3 channels and output a grey value. Then we could use the RGBMath components to do the calculations for grey inputs. I have not learned Lua, but something like this seems easy enough for someone who knows a bit of Lua. Maybe I am totally wrong. The Stone Age did not end because they ran out of stones. Niels Bohr |
|||
Posted: January 24, 2024 11:57 am | ||||
Rachel Duim
![]() |
Grey inputs are very different than green ones. With a green input, for example, you can specify a different value at every pixel which is powerful, but much more complex. Grey values are a constant value over the whole bitmap, which is partly why they are made for control components. I can’t emphasize enough how much more complex green inputs are hence many inputs are grey.
Lua is powerful but has limitations. The main one being it can only use one core of your CPU. I’ve done a few filters with it: I found it difficult to work with, especially debugging. Math meets art meets psychedelia. |
|||
Posted: January 25, 2024 8:38 pm | ||||
Beat
Posts: 165 |
That is exactly what I have understood as well : green inputs are very extended and complex, as you say. So, it should not be too difficult to use RGBMath to go to Grey inputs. Example : I have colorA (monochrome, all channels have the value 0.2 for all pixels, so DarkGrey) and ColorB (also monochrome with 0.6 as values, MiddleGrey). If I add or multiply these two values in a RGBMath component, I only get a Green output, which is incompatible with a grey input. But, the only and single value that should be outputted is 0.2+0.6 = 0.8 in the case of addition. Even if the Green output from the RGBMath output gives me (0.8,0.8,0. ![]() I have left out the alpha channel value in this example for clarity. On another foot : as it turns out to be quite complicated to do simple arithmetic for the Grey control lines, it is even more amazing that FF does not provide in this ![]() The Stone Age did not end because they ran out of stones. Niels Bohr |
|||
Posted: January 26, 2024 11:09 am |
Filter Forge has a thriving, vibrant, knowledgeable user community. Feel free to join us and have fun!
33,712 Registered Users
+19 new in 30 days!
153,533 Posts
+31 new in 30 days!
15,348 Topics
+73 new in year!
124 unregistered users.