View Single Post
Old 24th May 2003, 16:05   #98
Major Dude
sidd's Avatar
Join Date: May 2003
Location: Australia
Posts: 1,353
i posted this on another thread, and thought it should go here:

The color fade doesnt use HLS, as this wouldnt really effect the way it fades out at all. It is is tad more complicated, and if you read this you will see why Nullsoft didnt even try to explain it to all the n00bs who download AVS.

This is what i have worked out:

The top bar deals with the additive colors, or cyan, magentta and yellow. If it is left of half way across, is timesed by a number between 0 and 1, if more than half way across, it is timesd by a number greater than 1.
Because C,M and Y are comprised of mixes of the base colours (RGB), this method connot make solid cyans etc. Instead, as you increase the slider, the colors apear to lose their base, or their saturation, and eventually fade to white.

The middle slider deals with the base colours, or Red, Green and Blue. It works in the same way as CMY, by multiplying by 0-1, or 1>. Because it is multiplied, not added, and colours connot excede there maximum potential, the colours dont fade to white. Instead, more to the right you put it, the more the original colours will become solid red, green or blue.

The last one sort of works with brightness, luminescence, or the amount of 'white' (whichever does it for you). Works with the same multiplication method as above. This is the most 'normal' and useful: This will make the screen either fade to black or white. At a rate depending on how far to the left or right you place the bar.

A few tips:
the normal fadeout effect can be done by placing all the bars in the same position, and to the left of the center.

You can avoid the CMY bar doing the fading to white thing by makjing sure the RGB bar is always postioned slightly greater.

Remember that the sliders do not actually reprisent the colour values, they are multipliers and such.

If you dont understand the multiplication thingo, it is basically doing this:
if the slider is x units to the left: variable/x
if the slifer is x units to the right: variable*x
sidd is offline   Reply With Quote