ColorTalk スクリプト (2)
ノイズの利用
ColorTalk でランダムな要素を入れたいときは noise 関数を使います。これは 0 から 1 の間のランダムな数値になります。
ノイズ画像を生成する
単純に各ピクセルの RGB 要素をランダムな値にするのは簡単です。生成した画像は合成方法をオーバーレイなどにして、他の画像にノイズを乗せるのに使えます。
red=noise; green=noise; blue=noise;
red、green、blue の各要素は ColorTalk ではそれぞれ 0 から 1 の範囲の数値を取るので、そのまま noise を代入すればピクセルごとにランダムになります。また、モノクロのノイズなら、こっちの式。
value=noise; saturation=0;
ノイズが必要になるたびにこれをやるのが面倒(けっこう頻繁にノイズを使う)というかたは、300 x 300 ピクセル程度の新規ファイルを作成して、それに対してこのノイズの式を実行し、その結果を「パターンのキャプチャ」でパターンライブラリに追加しておくと便利になります。
画像にノイズを加える
noise は0 から 1 の幅でのランダムというのは常にプラスの数になります。この変化の幅の中心を 0 に持ってきたいときは noise-0.5 が使えます。ノイズをかけたあとの数値が 0 以下や 1 以上になると 0 あるいは 1 になることもいちおう考慮が必要です。noise-0.5 を RGB にそれぞれ加えると非常に効果が強くなるので、効果を何分の一かにすることも考えます。たとえば、効果を三分の一にするとして、
t1=3; red+=(noise-0.5)/t1; green+=(noise-0.5)/t1; blue+=(noise-0.5)/t1;
などとできます。最初に t1 に数値を代入しているのは、保存してあるスクリプトを開いて t1 に入れる数値の一か所だけ変更すれば効果の倍率を変えることができるからです。最初から用意されている整数は 4 までしかありませんが、3+2 で 5、3*2 で 6 など大きい数値にしてノイズ効果を弱めることもできます。
あるいは、元画像を複製してレイヤーとして重ね、それに強めのノイズをかけておいて、透明度を下げるほうが調整が自由になるかもしれません。この方式だとレイヤーの合成方法がデフォルトでも問題なく使えますし、オーバーレイの他、数種類の合成方法でも使えます。
(Last Modified: 2004/06/29)
|