Open NelloF opened 5 months ago
This should be generalized a bit; the current proposal is specific to the temporal mapping, but similar concepts could be applied to other mappings as well. The idea is that the "Output X" and the "Output Y" parameters are simply values in the [0, 1] range that are then used to pick a color, either by looking it up based on "Output X" from the color ramp, or by looking it up based on both the "Output X" and "Output Y" values from the associated image. I guess what you really want is a scalar multiplier to "Output X" and "Output Y". So, for instance, "Output X" = "Temporal" would make the X value go from 0 to 1 according to the passing of time during the light effect. However, if you multiply this by 10 with a newly introduced "Scale X" parameter, and then take the result modulo 1, you effectively speeded up the passage of time by 10x, looping over the color ramp 10 times during the duration of the light effect. The advantage is that the same concept could be used to alter the result of any output function, not only "Temporal".
How does that sound?
sounds great! this way you could also scale the xyz mapped gradients and repeat them multiple times over the formation space
I was thinking about this a bit during the night and I can't get rid of the feeling that instead of implementing a linear mapping ourselves, we should somehow jsut make it possible for the user to associate an F-curve to the light effect and then the F-curve will map the raw output to a new value. The new value will then be taken modulo 1 (or clamped to the [0;1] interval) to determine the position to evaluate on the color ramp. This would make the feature even more powerful.
I need to figure out whether it's possible to create F-curves "on their own" so that they are not attached to the animation data of a mesh.
with an f-curve would be even more useful, allowing acceleration ad deceleration in the speed for example
about the light effects: temporal Output x mapping could have a "loop x number of times" option during the total duration of the effect. So the color change could repeat with different speed depending on the number of loops value
(1 = no loops)