AviUtlスクリプト制作入門(環境構築から完成まで)

2018年12月3日月曜日

AviUtl AviUtlスクリプト lua VisualStudioCode プログラミング 開発




スクリプトを作りたい

最近、AviUtl界隈が盛り上がっていますが、みんなスクリプトを作っています。
でも僕はプラグインを作りたい!
あわよくばバズりたい!


といった触れ込みで前回はプラグインを作ったのですが

今回は、スクリプトを作ってみたいと思います。
スクリプトのほうが敷居が低いらしいので、多分すぐ終わります。



環境構築

使用言語

AviUtlのプラグイン制作においての使用する言語は「Lua」です。
ちなみにLuaも、前回同様触ったことがありません。


大丈夫かよ

環境構築

まずはエディダの用意です。
今回は、Atomエディダを使おうと思ったのですが、せっかくVS Communityをインストールしたので、VSで統一しようと思い、VS Codeにしました。


まずはこちらのサイトにアクセス。
(前回のサイトと同じです)


クリックすると、Visual Studio Code(以下VS Code)がダウンロードされます。
インストール方法はめっちゃ簡単で、ファイルをクリックしてインストールするだけです。


お好みでデスクトップへのショートカットやエクスプローラーの設定をしてください(オプション選択)
めっちゃ簡単ですが、これで環境構築は完了です。



スクリプトを作ってみる

今回作るスクリプトは、アニメーション効果です!
それでは作ってみたいと思います!


まずはVS Codeを開きます。


そしたらこの「Welcome」画面になります。
(この画面は Help>Welcome からいつでも呼び出せます。)


「File>New File」から、新しいファイルを作成します。


するとこの画面になります。
左のファイルメニューがない場合は、一番左のアイコンの一番上をクリックすれば出てきます。


そしたらまずは「Untitled-1」右クリック、「Save As...」をクリックして


AviUtlのscriptフォルダに移動して、そこに「[お好みのスクリプト名].anm」という名前で保存します。
このとき、下のプルダウンメニューから「No Extension(*.)」を選択しておいてください。でないと.txtで保存されます。


こんな感じになったと思います。
これから、この「.anm」ファイルにスクリプトを書いていきますが
今回は拡大するだけのシンプルなものを作ってみます。


まずはトラックバー(数値をいじるやつ)を作ります。
--track0:名前,最小値,最大値,デフォルト値[,移動単位]
これがトラックバーのプログラムです。
これを
--track0:拡大レベル,0,100,0
こんな風に書きます。


今はこんな感じです。
テストしてみましょう。


「File>Save All」をクリック。
そうしたらAviUtlを開き、図形に今作ったアニメーション効果を適用します。


こんな感じで、トラックバーだけのスクリプトができていればOKなんですが。。。

文字化けしてるね

そうですね。エンコード設定忘れてますね。


【補足】エンコード設定

さて、AviUtlスクリプトは、「Shift-JIS」じゃなきゃいけないんですけどVS Codeでは標準で「utf-8」設定になっているんですね。


なのでそれを変更しなければ、上のように文字化けするわけです。


右下の、UTF-8となっているところが、設定の該当箇所で、クリックすると


二つ選べるので、「Reopen with Encoding」をクリック


そうしたらエンコードのリストが表示されるので
「Japanese (Shift JIS)」をクリック

もしもエラーでできない場合は、一旦ファイルを消去して、最初からShift-JISに変更して上のプログラムを書いてください。


さて、そうやってエンコードを変更すると、文字化けが治っております。


こんな感じ。


そうしたら、次はこのトラックバーの数値で実際に拡大をいじってみましょう
obj.zoom = obj.zoom + obj.track0
obj.zoomとは、拡大率を表しています。
そしてobj.track0は、先程の拡大レベルの数値を表しています。


これを書きこんで、保存して実行してみます。


見事、オブジェクトを動かすことに成功しました!
あとは、anmファイルを配布すれば、配布もできます。


次はなんのスクリプト、作ろうかな。



スクリプト公開しました

こちらのスクリプトは、ランダムに画像の拡大率を動かすスクリプトです。
たぶん今度解説します。



参考サイト




AviUtl Advent Calender 2018に参加してます

ePi様主催、AviUtl Advent Calender 2018に参加しています。
前回の記事も含めて参加しているので、ぜひ見てね!
(他の人も役に立つ可能性のある記事を投稿している可能性があります)



ブログ検索

総閲覧数