吉里吉里への道>「吉里吉里/KAG」実験室>フェードつきスタッフロール

フェードつきスタッフロール

 フェードつきのスタッフロールというのを試しに作ってみました。

 説明するよりも、ダウンロード して実行してもらった方が分かりやすいと思います。

@position opacity=0
@image layer=base storage=bgimage rgamma=0.2 ggamma=0.2 bgamma=0.2
@iscript
var layer = new KAGLayer(kag, kag.fore.base);
layer.left = 0;
layer.top = 0;
layer.width = kag.scWidth;
layer.height = kag.scHeight;
layer.face = dfAlpha;
layer.colorRect(0, 0, layer.width, layer.height, 0, -255);
var marginTop = 48;
marginTop += kag.current.top;
for(var i = 0; i < marginTop; i++)
{
    layer.piledCopy(0, i, kag.fore.base, 0, i, layer.width, 1);
    layer.colorRect(0, i, layer.width, 1, 0, -255 * i / marginTop);
}
var marginBottom = 48;
marginBottom += layer.height - kag.current.top - kag.current.height;
for(var i = layer.height - marginBottom; i < layer.height; i++)
{
    layer.piledCopy(0, i, kag.fore.base, 0, i, layer.width, 1);
    layer.colorRect(0, i, layer.width, 1, 0, -255 * ( layer.height - i ) / marginBottom);
}
layer.visible = true;
layer.order = kag.current.order + 1;
// kag.fore.base.colorRect(0, 0, layer.width, layer.height, 0, 255);
@endscript
@nowait
@defstyle linespacing=100
@deffont face="MS ゴシック" size=32 color=0xf0f0f0 edge=true edgecolor=0x404040 shadow=false
@position top=&kag.scHeight-kag.current.defaultLineSpacing height="&kag.current.marginT + kag.current.marginB + (kag.current.defaultFontSize + kag.current.defaultLineSpacing) * 8"
@style align=right
スタッフ1[r]
スタッフ2[r]
スタッフ3[r]
スタッフ4[r]
スタッフ5[r]
[r]
[r]
Produced by スタッフ
@move layer=message time=15000 path="&(kag.current.left+ ', ' + (-kag.current.height + kag.scHeight / 2 + kag.current.marginB + kag.current.defaultFontSize / 2) + ', 255')"

 需要があれば、使いやすいようにプラグイン化するかもしれません。

吉里吉里への道>「吉里吉里/KAG」実験室>フェードつきスタッフロール