差分レイヤー
差分レイヤーとは、キャラクターのまばたきや口パクを実現するために、STPに実装された機能で、この名前は開発者の造語ですので調べても出てきません。次回のバージョンで名前が変更される可能性があります。
そ こ に 3 び き の れ い む が い る じ ゃ ろ う !
https://scrapbox.io/files/6887a57f4aa130b9159558f8.webp
差分レイヤーを使えば(さらに指示があればもっと)簡単にこれらのようなアニメーションを実現できます。
差分レイヤーの仕様を理解したい人は差分レイヤーについてのTipsをご覧ください。
ここではその仕様を理解している前提で説明をします。
https://scrapbox.io/files/687233e7a73fd1feeab25a4e.png
「差分レイヤー」は『ブロック情報』グループの最後のパラメータです。
ここには「差分レイヤーリスト」がただ一つあり、デフォルトでは「差分レイヤーブロック」が一つも入っていません。
https://scrapbox.io/files/687235f730f12310f4189219.png
「+」ボタンを押して「差分レイヤーブロック」を追加してから初めて機能します。
https://scrapbox.io/files/6872365fccf604be57e663ff.png
『差分制御』というグループが出現しました。このグループにはいつも「制御モード」「範囲外の値」「備考」の3つのパラメータが用意されます。まずそれらの説明をしましょう。
制御モード
STPでは、パーツ画像とその連番画像を切り替えるために、出力値を決めてそれに合わせて差分を切り替えます。
そこで、その出力値を決める方法を指定します。
モードには以下の5つがあります。
1. 「2数の和」… セラール・アブリール の値を足し合わせた結果で制御します。
2. 「2数の積」… セラール・アブリール の値を掛け合わせた結果で制御します。
3. 「sin」… セラール を振幅、アブリール を位相とする正弦関数(sin関数)で制御します。(は?)
4. 「口パク」… キャラクターが喋っているときに、音量に合わせて セラール・アブリール の間で値を動かし制御します。
5. 「周期的往復」… 指定された時間間隔で セラール・アブリール を定期的に往復して制御します。
6. 「周期的ループ」… 指定された時間間隔で セラール・アブリール を定期的にループして制御します。
これだけでは説明は不十分でしょう。詳しく知りたい場合は 制御モード をご覧ください。
範囲外の値
差分を切り替える制御モードで決まった出力値は、場合によっては、0% を下回ったり、100% を超えることがあります。そのとき、超えた値をどのように処理するかをここで決めます。
1. 「指定なし」… 0% 以下の値をすべて 0% と見なし、100% 以上の値は 100% と見なします。
2. 「往復」... 0 ~ 100% の間をシャトルランのように行き来します。
3. 「ループ」… 100% に到達すると 0% に戻されます。
こちらも別ページ「範囲外の値」で詳しく説明します。
備考
こちらに書いた文字列が、差分レイヤーブロックの右端に表示されるだけです。この差分レイヤーブロックが何の動きを制御しているのかのメモ程度に使ってください。
残りのパラメータは制御モードによって出てくるものが変わります。現バージョンでは常に「セラール」と「アブリール」がありますが、次のバージョンではこの名前は廃止し、パラメータ名前や組み合わせが変化するようにしようと思います。
<| 開発者の言い訳 |>
初回リリース時はまだパラメータの組み合わせや名前を変化させる技術を持っていませんでした。この二つのパラメータは様々な用途に使われるので、日本語でも英語でもない、ユーザが意味を知らないカタカナの単語を使えば、単語から用途を限定されずに済むと思ったんです。サボってごめんなさい。