基本操作

基本的な操作方法を解説します。

基本操作

座標の指定

まずは画像を配置してみることにします。
以下のように入力すると、画像のX座標=200の位置に画像が配置されます。
obj.ox = 200

※なおここで使われている「=」は数学的に等しいという意味のイコールではなく、右辺を左辺に代入するという意味です。
数学的なイコールは「==」(=を二つ重ねたもの)を使用します。

オブジェクトの移動

次に画像を移動させてみたいと思います。
以下のように入力すると、オブジェクトの時間が進むごとにX座標の数値が大きくなっていき、結果、画像は右に進んでいきます。
obj.ox = obj.time*10
画像のX座標 → オブジェクトの時間(秒)×10

X座標だけでなく、拡大率や透明度、回転なども変化させることが出来るので、実際にいろいろと試してみることをお勧めします。



TIPS

注意事項

スクリプト入力においては全て半角で入力する必要があります。全角スペースも不可です。
なお、日本語や全角文字を使用する時は「""」で囲む必要があります。


定義

スクリプト内では適当なアルファベットで数値や式を「定義」することができます。
例えば、スクリプト内で「x = obj.ox + obj.time*10」と記載すると、「x」は「obj.ox + obj.time*10」のことを意味するようになります。
同じ式を繰り返し使用する場合や、スクリプトを見やすくしたい場合に使用します。
【定義した数値を確認するケース】※テキストオブジェクトで使用
<?
t=obj.time*10
mes(t)
?>



計算記号

+ 加算
- 減算
* 乗算
/ 除算
% 割り算の余り
^ べき算

%は割り算の余りを表すので、これを利用して一定の数値をループさせることも出来ます。
【10をループするケース】
math.floor(obj.time)%10


関係演算子

a < b aはbより小さい
a > b aはbより大きい
a <= b aはbより小さいか等しい
a >= b aはbより大きいか等しい
a == b aはbと等しい
a ~= b aはbと異なる


論理演算子

a<10 and b<50 a<10 かつ b<50
a<10 or b<50 a<10 または b<50
if文の中で使うことが多いかもしれません
a=5 b=10
if(a<10 and b<50) then
  obj.zoom=obj.zoom*2
end


連結子

「 .. 」(スペース..スペース)で前後の文字などを繋げることができます。
例えば、テキストと変数などをつなげたい時に便利。
obj.setfont("MS UI Gothic",34)
obj.load("text","現在" .. math.floor(obj.time) .. "秒です。")



コメント

半角ハイフンを二つ重ねることで(--)、スクリプト中にコメントを記載することが出来ます。
スクリプトの式に影響しないため、補足説明をする場合に使ったりします。
【一行の場合】
--補足説明などを記載
【複数行の場合】
--[[補足説明などを
複数行で記載]]


戻り値

通常、関数は「"obj.rand(0,100)"→30」といったように、一つだけ数字が"戻って"きます。
ただ、obj.getpixel関数のように戻り値が複数のケースがあります。
このときは、いったん下のようにwとhを定義してから、以降はwやhを使用することとなります。
w,h = obj.getpixel()


よく右辺に記述される"obj.ox"って?

"="というのは、右辺を左辺に代入するという意味なので、例えば、
obj.ox=100
obj.ox=-200

と書いた場合、2行目でobj.oxが"-200"で上書きされ、画像の座標は(-200,0)となりますが、
obj.ox=100
obj.ox=obj.ox-200

と書いた場合、2行目でobj.oxが"100-200"と計算され、画像の座標は(-100,0)となります。
特にアニメーション効果を複数重ねがけしたときなど、右辺にobj.oxがないと、二つ目の座標計算で一つ目のアニメーション効果の座標計算が上書きされ、一つ目のアニメーション効果がちゃんと適用されなくなる可能性があります。


F5による再読み込み

スクリプトファイル(.anmなど)の内容を変更した場合、キーボードの「F5」で再読み込みすると、変更を反映することが出来ます。
ただし、新しいスクリプトの追加までは反映されないので、その場合はAviUtlの再起動が必要になります。

  • 最終更新:2012-03-04 10:32:11

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

認証パスワード