Ψ(`∀´)Ψケケケ と (´・ω・`)ショボーン

AviUtl用のスクリプト配布やBlender、自作PCのパーツやガジェットの情報を配信中

 

【AviUtl】スクリプト制御 第2回【拡張編集】

Edit Category Aviutlと拡張編集プラグイン > スクリプト(自作配布物と解説)

AA2014000253

スクリプト制御を使うと、通常とはちょっと違ったオブジェクトの制御も可能になるので、半ば自分用の覚書(プログラミング知識は初心者なので……)として記事に。

ちなみにスクリプト制御を使うためには最低限、Lua構文とAviUtlの関数の知識が必要。とはいえ、全てを理解してからスクリプト制御を利用……なんて言っていたら永遠に使えないので、ちょっとずつ使いながら覚えていく感じで。

テキストオブジェクトのテキスト入力欄でもスクリプト制御は可能だけど、基本的にはスクリプト制御フィルタを使った記事になるのであしからず。


スクリプト制御で使うif構文(Lua)の基本形

if (条件1) then
  条件1に適合した(真の)ときにさせたいこと。
  (値の代入、計算、新たな構文など)
elseif (条件2) then
  条件2に適合したときにさせたいこと。
  (※ elseif~thenは未使用・追加も可能。)
else
  それ以外のときにさせたいこと。
end

 

スクリプトは基本的に上から下に向かって順番通りに処理されていく。ただし、扱う構文によってスキップされたり、繰り返されたりする。if構文の場合は、設定した条件によって変わる。

※ 上の形は厳密に言えばプログラミング的には基本形ではないのだろうけれど、この形で覚えておけば、後は必要なときに必要な部分を足したり、削ったりできるので、覚えるならばこの形が無難。

時間経過による移動サンプル

とりあえず基本形だけを見ていても、理解できないので、サンプルを表示。解説っぽいものは下の項目で。ちなみに下記のサンプルをAviUtlのスクリプト制御に貼り付ければ動くはず。

if( obj.time < 5 )then
     obj.ox = obj.time*30
elseif( obj.time < 10 )then
     obj.ox = -obj.time*30
else
     obj.oy = -obj.time*15
end

※ スクリプト制御にコピペOKのはず。上手くいかないときは、スペースが全角になっている可能性あり。また、『else if』ではなくて『elseif』なのも注意点。orz

上のサンプルの解説というか日本語訳?のようなもの

  • 1行目:もし、オブジェクトの時間が5秒未満ならば
  • 2行目:オブジェクトの時間×30をオブジェクトのXに代入する
  • 3行目:あるいは、オブジェクトの時間が5秒以上、10秒未満ならば
  • 4行目:オブジェクトの時間×マイナス30をオブジェクトのXに代入する
  • 5行目:それ以外ならば、
  • 6行目:オブジェクトの時間×マイナス15をオブジェクトのYに代入する
  • 7行目:if構文の終わりを宣言

 

  • obj.ox:設定ダイアログのXを設定するのと同じ。obj.oyやobj.ozはYやZと同じ。ただし、設定ダイアログのXYZとの扱いは異なる。X=50のときにobj.ox=50だと、オブジェクトは100の位置に移動する。※
  • obj.time:オブジェクトの先頭からの時間経過。オブジェクトの長さが10秒のとき、最小値は0で、最大値は10。※

 

※ AviUtl独自の関数。訳として正しいかはわからないけれど、AviUtlでオブジェクトをスクリプトで制御するための制御項目。あるいはスイッチ、入力事項、要素、エレメントとか入力ダイヤルとか入力ペダルとか……兎に角、そういうものなので覚えるしかない。

 

ちなみにひとつ上の項目の題名が『時間経過による移動サンプル』なのは、設定した条件がどれもobj.timeというオブジェクトの経過時間を数値で出力するものであり、また、各条件が真(適合)のときに実行されるのが、obj.ox(obj.oy)はオブジェクトのX(Y)といった位置の値を出力するものだから。

ちょっとだけ実例っぽい凡例

x1 = 10
obj.ox = x1 + obj.time*10
if(obj.ox<50)then
     obj.alpha = 0.5
end

 

  • x1:変数。値の容れ物。円の面積=3.14*r^2の『r』のようなもの。ここではx1にしたけれど、x2でも、aでも、bでもいい。Xの初期値として数値の10を代入。
  • obj.ox:オブジェクトのX。ここでは、x1とオブジェクトの経過時間を足したもの。
  • if(obj.ox<50)then:if構文と条件。オブジェクトのXが50未満のとき
  • obj.alpha =0.5:透明度を表すAviUtlの関数。0ならば0%、1ならば100%。
  • end:if構文の終了の宣言。

 

上の凡例を日本語的にすると、『オブジェクトのXを初期値10で(一行目)、経過時間に10を掛けた値を足して動かしながら(二行目)、Xが50未満の位置にいるときは(三行目)、透明度を50%にしておくれ!(四行目)、五行目は終了宣言なので特に無し』と書いている。

※ 記述の順番も重要。変数x1を一番上で書いているけれど、これが一番上以外の場所だと、Errorになる。スクリプトが動かない場合もあるし、動いたとしても予期しない動き(思惑とは異なる結果)になる。

ちょっと発展したif構文の形

ちなみにifから始まる構文の形は、

if(条件1)then
 実行1
end
if(条件1)then
 実行1
elseif(条件2)then
 実行2
end
if(条件1)then
 実行1
elseif(条件2)then
 実行2
else
 実行3
end
if(条件1)then
 実行1
else
 実行2
end
if(条件1)then
 実行1
elseif(条件2)then
 実行2
elseif(条件3)then
 実行3
else
 実行4
end
if(条件1)then
if(条件1の条件1)then
elseif(条件1の条件2)then
end
elseif(条件2)then
 実行2
end

といった感じで様々で、if(~)then、endは必ず一回、elseは使わなくてもいいけれど、使うならば一回のみ、elseif(~)thenは使わなくてもいいし、使うならば何度使ってもいいけれど、if(~)then、else(end)の間で使う。

※ 表の右下の奴は、最初は発展形として覚えておけばいい程度。慣れてきたらでおk。

 

 

関連記事
スポンサーサイト
Community テーマ - フリーソフト解説  ジャンル - コンピュータ

Newer Entry【AviUtl】スクリプト制御 覚書1【拡張編集】

Older Entry【AviUtl】スクリプト制御 第1回【拡張編集】






Comments


 
04 2018
SUN MON TUE WED THU FRI SAT
1 2 3 4 5 6 7
8 9 10 11 12 13 14
15 16 17 18 19 20 21
22 23 24 25 26 27 28
29 30 - - - - -

03 05


 
 
DCコミックス コレクション バットマン 1/6 PVC
ファンタジーフィギュアギャラリー DCコミックス コレクション バットマン 1/6 PVC
 
注意事項

紹介されているフリーソフト、スクリプトをインストールするときは、フリーソフトの説明および注意事項を熟読し、自己責任においてご利用下さい。



記事:Amazonギフト券の期限など
特価情報:各ジャンル・タイムセール

 
【2018年春夏】動画編集にも3DCGにもゲームにも使える高コスパ自作PC構成
新世代Ryzenで組むコスパの優秀な構成。ただし、まだメモリとGPUが高騰中なのが玉に瑕。SSDは値下がり気味で吉。

AMD CPU Ryzen 7 2700 with Wraith Spire (LED) cooler YD2700BBAFBOX
AMD CPU Ryzen 7 2700 with Wraith Spire (LED) cooler YD2700BBAFBOX

ASUS AMD X470搭載 マザーボード  Socket AM4対応 PRIME X470-PRO【ATX】
ASUS AMD X470搭載 マザーボード Socket AM4対応 PRIME X470-PRO【ATX】

CORSAIR DDR4 メモリモジュール VENGEANCE LPX Series 8GB×2枚キット CMK16GX4M2B3200C16
CORSAIR DDR4 メモリモジュール VENGEANCE LPX Series 8GB×2枚キット CMK16GX4M2B3200C16

MSI GeForce GTX 1060 AERO ITX 3G OC グラフィックスボード VD6308
MSI GeForce GTX 1060 AERO ITX 3G OC グラフィックスボード VD6308

WD 内蔵SSD M.2-2280 / 256GB / WD Black / PCIe Gen3 NVMe / 5年保証 / WDS256G1X0C
WD 内蔵SSD M.2-2280 / 256GB / WD Black / PCIe Gen3 NVMe / 5年保証 / WDS256G1X0C

Seagate 内蔵ハードディスク 3.5インチ 4TB PCユーザー向け BarraCuda ( SATA 6Gb/s / 5400rpm / 2年保証 ) 正規代理店品 ST4000DM004
Seagate 内蔵ハードディスク 3.5インチ 4TB PCユーザー向け BarraCuda ( SATA 6Gb/s / 5400rpm / 2年保証 ) 正規代理店品 ST4000DM004

オウルテック 10年間新品交換保証 80PLUS GOLD取得 コンパクトサイズ ATX 電源 ユニット フルモジュラー Skylake対応 Seasonic FOCUS+ シリーズ 650W
オウルテック 10年間新品交換保証 80PLUS GOLD取得 コンパクトサイズ ATX 電源 ユニット フルモジュラー Skylake対応 Seasonic FOCUS+ シリーズ 650W

サイズ オリジナルCPUクーラー 虎徹 Mark II
サイズ オリジナルCPUクーラー 虎徹 Mark II

Pioneer パイオニア Windows10対応 BD-R 16倍速書込 S-ATA接続 ブラックトレー仕様 BD/DVD/CDライター ソフト付 バルク品 BDR-209BK/WS2
Pioneer パイオニア Windows10対応 BD-R 16倍速書込 S-ATA接続 ブラックトレー仕様 BD/DVD/CDライター ソフト付 バルク品 BDR-209BK/WS2

Fractal Design Define R6 - Blackout - Tempered glass ミドルタワー型PCケース CS7012 FD-CA-DEF-R6-BKO-TG
Fractal Design Define R6 - Blackout - Tempered glass ミドルタワー型PCケース CS7012 FD-CA-DEF-R6-BKO-TG

I-O DATA モニター ディスプレイ 31.5型 EX-LDQ321DB(WQHD[2560×1440]/広視野角/DisplayPort/スピーカー付/3年保証/土日もサポート)
I-O DATA モニター ディスプレイ 31.5型 EX-LDQ321DB(WQHD[2560×1440]/広視野角/DisplayPort/スピーカー付/3年保証/土日もサポート)

Razer Naga Trinity サイドボタンを2/7/12ボタンに付け替え可能 MMO/MOBAゲーミングマウス 【日本正規代理店保証品】 RZ01-02410100-R3M1
Razer Naga Trinity サイドボタンを2/7/12ボタンに付け替え可能 MMO/MOBAゲーミングマウス 【日本正規代理店保証品】 RZ01-02410100-R3M1

センチュリー バックライトLED機能搭載 CHERRYメカニカルキーボード 63キー/日本語配列 『BLACK QUEEN 茶軸』 CK-63CMB-BWJP1
センチュリー バックライトLED機能搭載 CHERRYメカニカルキーボード 63キー/日本語配列 『BLACK QUEEN 茶軸』 CK-63CMB-BWJP1

Microsoft Windows 10 Home Fall Creators Update適用 32bit/64bit 日本語版 (最新) |パッケージ版
Microsoft Windows 10 Home Fall Creators Update適用 32bit/64bit 日本語版 (最新) |パッケージ版

ドイツ Thermal Grizzly社製 オーバークロック用特別設計高性能熱伝導グリス Kryonaut 1g
ドイツ Thermal Grizzly社製 オーバークロック用特別設計高性能熱伝導グリス Kryonaut 1g



 
ブログ内検索
記事を探すときは、キーワードで検索をかけると速くて便利です。
 
"figma ARMS NOTE バイオニック・ジョシコウセイ
figma ARMS NOTE バイオニック・ジョシコウセイ ノンスケール ABS&PVC製 塗装済み可動フィギュア
 
 
ねんどろいど 初音ミク GTプロジェクト レーシングミク 2018Ver.
ねんどろいど 初音ミク GTプロジェクト レーシングミク 2018Ver.  ノンスケール ABS&PVC製 塗装済み可動フィギュア
 
 
ブログ内検索
記事を探すときは、キーワードで検索をかけると速くて便利です。
 
 
オススメA

[まとめ買い] ゴールデンカムイ
[まとめ買い] ゴールデンカムイ


Oneplus 5T (A5010)6.01 inch 2000万画素 +1600万画素 デュアルレンズカメラ 6GB/64GB RAM CPU Snapdragon 835 LTE 4G+ sim フリー日本語対応
Oneplus 5T (A5010)6.01 inch 2000万画素 +1600万画素 デュアルレンズカメラ 6GB/64GB RAM CPU Snapdragon 835 LTE 4G+ sim フリー日本語対応


Opolar LC06吸引式ノートPC冷却ファン 任天堂 Nintendo Switch冷却ノートクーラー pcクーラーファン コンパクト 静音 温度が表示され ファンスピード調整ができ ノートPCの冷却台 PS4 ニンテンドースイッチの冷却
ファンスピード調整可能なOpolar LC06吸引式ノートPC冷却ファン 任天堂 Nintendo Switch、PS4対応


スマホレンズ 5点セット カメラレンズキット 回りでモード交換 クリップ式 (180°魚眼、15倍マクロ、0.62倍広角レンズ、CPL偏光レンズ、ズームレンズ) スマートフォン タブレット 簡単転換装着 レンズ保護キャップ付き
スマホレンズ 5点セット カメラレンズキット 回りでモード交換 クリップ式 (180°魚眼、15倍マクロ、0.62倍広角レンズ、CPL偏光レンズ、ズームレンズ) スマートフォン タブレット 簡単転換装着 レンズ保護キャップ付き



乃木坂46 衛藤美彩 写真集 話を聞こうか。 封入特典 特別付録 スペシャル ポストカード 水着
乃木坂46 衛藤美彩 写真集 話を聞こうか。 封入特典 特別付録 スペシャル ポストカード 水着


【Amazon.co.jp限定】Transcend microSDXCカード 64GB Class10 UHS-I対応 無期限保証 Nintendo Switch 動作確認済 TS64GUSDU1PE (FFP)
【Amazon.co.jp限定】Transcend microSDXCカード 64GB Class10 UHS-I対応 無期限保証 Nintendo Switch 動作確認済 TS64GUSDU1PE (FFP)


Anker ウルトラスリム Bluetooth ワイヤレスキーボード iOS/Android/Mac/Windows に対応 ブラック
Anker ウルトラスリム Bluetooth ワイヤレスキーボード iOS/Android/Mac/Windows に対応 ブラック


【Amazon.co.jp限定】西野七瀬1stフォトブック『わたしのこと』 Amazon限定カバーVer.
【Amazon.co.jp限定】西野七瀬1stフォトブック『わたしのこと』 Amazon限定カバーVer.


【国内正規品】密閉型 ゲーミングヘッドセット SteelSeries Arctis 5 Black 61443
【国内正規品】密閉型 ゲーミングヘッドセット SteelSeries Arctis 5 Black 61443


Elgato (エルガト) Game Capture 4K60 Pro ゲーム録画 4K対応 PS4 Pro・Xbox One Xに最適  【日本正規代理店品】
Elgato (エルガト) Game Capture 4K60 Pro ゲーム録画 4K対応 PS4 Pro・Xbox One Xに最適 【日本正規代理店品】


イヴの時間 劇場版
イヴの時間 劇場版


Kirklandカークランドシグネチャー ケトルチップス(ポテトチップス)907g×12袋
Kirklandカークランドシグネチャー ケトルチップス(ポテトチップス)907g×12袋


(ユナイテッドアスレ)UnitedAthle 5.6オンス ハイクオリティー Tシャツ 500101 002 ブラック M
(ユナイテッドアスレ)UnitedAthle 5.6オンス ハイクオリティー Tシャツ 500101 002 ブラック M


 
オススメのフリーソフト
■ブラウザ(お好みで。複数可)
Chrome
Firefox
Vivaldi
Sleipnir
Opera
■ファイアウォール(必須)
Comodo Internet Security
ZoneAlarm
Outpost Security Suite FREE
■アンチウィルスソフト(必須)
avast! 4 Home Edition
avira 無料版
AVG Anti-Virus Free Edition
■レジストリ保護&クリーナー(必須)
Spybot-S&D
CCleaner
■圧縮・解凍ソフト(必須)
Lhaplus
7-Zip
■オフィスソフト
OpenOffice.org
LibreOffice
Mery
TeraPad
■メーラー
Thunderbird
■オンライン・コミュニケーション・ツール
Open Live Writer
Skype
Windows Live メッセンジャー / MSN メッセンジャー
■Backup & PartitionEditor
AOMEI バックアップ、クローン、パーティション管理
EaseUS Todo Backup Free
EaseUS Partition Master
■コーデックパック(どちらか)
K-Lite Codec Pack
 
Combined Community Codec Pack
■各エンコーダ&デコーダ、スプリッタ(競合注意)
ffdshow
Xvid Codec
qaac Codec
x264vfw
Haali Media Splitter
LAV Splitter
webm
Google VP8 Video For Windows codec
■動画音楽再生プレーヤー(複数可)
MPC Home Cinema
GOM PLAYER
SMPlayer
VLC media player
■動画加工編集ソフト
Windows ムービー メーカー
Windows Media エンコーダ
MP4Cam2AVI
Any Video Converter フリー版
CamStudio
SEffect
x264vfw
AviUtl
AviUtlのプラグイン
MediaCoder
Nero AAC Codec
Avidemux.org
真空波動研 Lite
えこでこツール
XMedia Recode
■グラフィックソフト
Blender
Inkscape
GIMP
PlayMemories Home
FireAlpaca
XnConvert
■HTML&ブログ制作
ez-HTML
XnConvert(画像一括処理)
Open Live Writer
FFFTP
WinShot
Aptana | Studio
■AviUtl
AviUtlの基礎構成ファイルDL
■その他、色々と……
DataRecovery
CPU-Z
CrystalDiskMark
CrystalDiskInfo
 
 
QRコード
QRコード
 
プロフィール

(o・ω・o)

Author:(o・ω・o)
現在はAviUtl用の駄スクリプトを書いて配布中。使用は自己責任でお願いします。

 
 


ARCHIVE RSS