obj.effect

lua.txtの記述

obj.effect([name,param1,value1,param2,value2,...])
指定のフィルタ効果を実行します。メディアオブジェクトのみ使用出来ます。
引数なしで呼ぶとスクリプト以降のフィルタ効果を実行します。
name エフェクトの名前を指定します。
param1 エフェクトのパラメータの名前を指定します。
value1 エフェクトのパラメータの値を指定します。
param?,value?の組み合わせは必要な分だけ指定できます。
※トラックバー、チェックボックス以外の設定のparam,valueはオブジェクトファイルのエクスポート等で出力された時の名前や値になります。
例:obj.effect("色調補正","明るさ",150,"色相",180)



解説

拡張編集のフィルタ効果を適用します。
フィルタ名や項目は、正確に入力する必要があるので注意が必要です。


トラックバーにない項目名

例えば、「色ずれ」フィルタの「色ずれの種類」のように、ドロップダウンリストやチェックボックスで指定する項目があります。
この場合は、スクリプトに入力する項目名が、フィルタの表示名と異なる場合があります。
項目名は、フィルタ効果を適用したオブジェクトを、エクスポートし、EXOファイルをメモ帳などで開くと、項目名を確認することが出来ます。

例えば、色ずれの種類の場合は、"type"が項目名となります。
_name=色ずれ
ずれ幅=5
角度=0.0
type=0

→obj.effect("色ずれ","type",1)


適用範囲

obj.effect()を使用すると、それより以降のスクリプト全てに影響を与えます。
例えば、画像を複数描画する場合、最初にobj.effect()でフィルタを適用すると以降に描画されるオブジェクトに影響が及びます。
obj.draw(-100)
obj.effect("クリッピング","上",10)
obj.draw() --クリッピング10が適用される
obj.draw(100) --クリッピングが10適用される


またfor文の中で使用すると、フィルタ効果が重複して適用されてしまうため、for文の中では使用しないこと推奨です。
for i=0,4 do
  obj.effect("クリッピング","上",10)
  obj.draw(-200+i*100)
end



引数のないobj.effect()

引数のないobj.effect()を記述しておくと、スクリプト以降にフィルタ効果を追加した場合に、遡ってフィルタ効果が適用されます。
obj.draw()のように、以降にフィルタ効果が適用できなくなる関数を使用した場合に使用します。
obj.effect()

  • 最終更新:2011-12-16 17:09:52

このWIKIを編集するにはパスワード入力が必要です

認証パスワード