投稿者: tong

AEアニメについての知見

開発中のゲームは「いじりゲー」にカテゴライズされます。
そして「いじりゲー」に不可欠なのがエロいアニメーションです。
ご存じのとおりアニメには2Dと3Dがあり、当方的には今から使い慣れたツールであるPhotoshopのデーターからアニメーションを起こせるAfterEffectsを使って2Dアニメを作るのが一番リーズナブルかなと考え、ここ数年試行錯誤を繰り返してきました。
ところがWebでAEアニメ関連のノウハウを探してもあまり見つからないんですよね。
なので、覚書も兼ねて当方の気付いたことを書いておこうかなと思います。

  1. 絵を作りこむPSDとAEに読み込むPSDは別物にする。
    これは読み込んだ時点には存在していたレイヤーがなくなった場合など、PSDのレイヤー構造が途中で変わるとAE側でエラーが出る事を防ぐ事が目的です。
    例えば、img_101_org.psdをコピーしてレイヤーやレイヤーグループを整理したimg_101_integrated.psdを作成してAEにはこれを読み込ませます。
    AEの読み込んだ後にPSDを変更する必要が生じたときはimg_101_org.psdを修正して修正したレイヤーをimg_101_integrated.psdに複製して再統合、レイヤー名を合わせて保存すると、AE側で開いたときエラーもなく変更が反映された状態になります。
  2. AEに読み込むPSDはレイヤーグループをなるべく使わずシンプルにする。
  3. 絵を作りこむPSDの塗はグループマスクを使う
    AEに読み込ませる絵は一枚絵の場合とは異なり動く部分の影になる所まで書き込む必要があります。そのため、例えば手や足の絵と胴体のレイヤーを分けて描かなくてはなりません。
    またレイヤー分けした手足と胴体は主線が無い場合がほとんどなので「アルファ―チャネルで滑らかに繋げる」ことが必須です。
    通常肌の塗等は複数レイヤーを使う方が多いと思うのですが、各レイヤー毎にやわらかい消しゴムで消してしまうと作業が増えるだけでなく、レイヤー毎でボケ足が統一できない等の不具合が起きます。
    その場合は複数ある塗りのレイヤーをレイヤーグループにまとめレイヤーグループにボケ足の着いたマスクを掛ける事で回避できます。

あと、AEではなくてFlashのActionScript3のTipですがマウスイベントは複数のイベントリスナーを設定した場合、イベントが伝わるのに「時差」がある事を最近発見しました。
しかも、その時差は実行するパソコンの処理能力に左右されるのでタイミングが関係するような処理はイベントリスナーを複数使うと意図した動作に「ならない場合」があります。
(ただし、これはマウスイベントに限定した現象らしく他のイベントでは発生しないみたいです)

最近は「Live2D」や「Spine」などPSDからアニメーションを起こすツールも増えてきましたがこの覚書の内容はAE以外でも通用するのではないかと思います。(と言うか最近Adobeの品質劣化が激しいのでCLIP STUDIOSpineUNITY に移行してやろうか等と考えている当方だったりします)


あけましておめでとうございます。

新年あけましておめでとうございます。

年末年始も関係なく匍匐前進のごとくじりじりとゲーム作りを進めているtongです。
もう1月も半ば近くなっているにもかかわらずBlogを更新していないことに気付き慌てて記事をでっちあげている次第ですが本年もcatwhiskerをよろしくお願いいたします。

と言うことで、本年一発目の更新は制作進行中のゲームの動画を上げてみました。

ではいずれ、またどこかでお会いしましょう。


Adobe JavaScript

前回投稿のエロゲ用動画作成は進んではいるのですが、AEとPhotoshopの連携で自分がやろうとしている事が世間様的あるいは業界的には異端なせいなのか今一つ使い勝手がよろしくないんですよね。
当座困っている事が2つあって、一つはAEはコンポジションのデュレーション(動画の尺)や背景色を一括して変更する仕組みが見つからなかったので一つずつチマチマ直していたんですけど1プロジェクト内のコンポジション数が150超えたり、そんなプロジェクトが恐らく50くらいあるのでとても手作業では追いつかない。

と言う事でAdobe JavaScriptと言うものを使って自動処理させることにしました。
内容はシンプルなものでプロジェクト内のアイテムをForループで一つ一つ調べてコンポジションなら背景色とデュレーションを決められた値に書き換えると言うもの。
面倒なのでインターフェイスとかも作らず背景色の指定とかもハードコーディングと言う超手抜きですが、今まで30分掛かって居た事が5秒で終わる、すばらしい(笑

もう一つはAEにPSDファイルを読みこませるとグループなどのレイヤー構造をコンポジションとしてプロジェクトに登録してくれるのですがコンポジション名=グループ名なところ。
例えば以下のようなレイヤー構造のPSDがあったとします。

頭横向き(グループ)
├目(グループ)
│ ├目 怒り(レイヤー)
│ ├目 普通(レイヤー)
│ ├目 泣き(レイヤー)
│ └目 笑い(レイヤー)
├口(グループ)
│ ├口 怒り(レイヤー)
│ ├口 普通(レイヤー)
│ ├口 泣き(レイヤー)
│ └口 笑い(レイヤー)
└頭ベース(グループ)
├頭線画
└頭塗
頭正面(グループ)
├目(グループ)
│ ├目 怒り(レイヤー)
│ ├目 普通(レイヤー)
│ ├目 泣き(レイヤー)
│ └目 笑い(レイヤー)
├口(グループ)
│ ├口 怒り(レイヤー)
│ ├口 普通(レイヤー)
│ ├口 泣き(レイヤー)
│ └口 笑い(レイヤー)
└頭ベース(グループ)
├頭線画(レイヤー)
└頭塗(レイヤー)
体(グループ)
├腕(レイヤー)

表情や顔の向きなどの差分があるので同じレイヤー名やグループ名のものがたくさんあります。
で、これをAEに取り込むのですが、右側の「理想」のようになってくれれば良いのですがプロジェクトのコンポジションは左側の「現実」のようになります。(チッ)

現実 理想





頭ベース
頭ベース
頭横向き
頭正面

頭横向き
頭横向き 目
頭横向き 口
頭横向き 頭ベース
頭正面
頭正面 目
頭正面 口
頭正面 頭ベース


要するにAEのプロジェクト内のコンポジション名にはPhotoshopの「上位のレイヤー名が飛ぶ」のでコンポジション名だけを見たのでは親レイヤーが何だったのかが分からないのです。
これを防ぐにはPhotoshop側のレイヤー名やグループ名を「上位レイヤー名も含めた形にしておく」事しかないのですが、これがレイヤーが大量にあってまた大変なんですね。(1ファイル毎でレイヤーを統合してもレイヤー、グループ合わせて500位にはなってしまいます)
でも、このままだと一々上位のコンポジションが何なのかを調べながら動画を作らなければならないのですが、まぁ非常に効率が悪いですわな。

と言う事で、これまた調べてゆくとPhotoshopでもAdobe JavaScriptが使えてレイヤー名を変更出来るみたいなんですね。さすがPro用のツールって所でしょうか。
Photoshop用のスクリプトはこれから作るのですが、一段落したらこう言ったツールもここで公開出来たらよいかなとか思ったりしてます。
まぁ、現在進行中のエロゲの方が先なのですが・・・

5月25日追記:実際に作ってみたらレイヤーの選択が遅い遅い。
レイヤー、グループ合わせて500程度のPSDで20分以上かかると言う体たらく・・・
割高になったサブスクリプションを正当化するためにどうでも良いタブレット用のデッサンツールとかより、こう言う所やファーストリリースのバグを減らしてマトモにするとかもっと力を入れるところあるでしょ。って感じですわ


匍匐前進

SFの名作「宇宙の戦士」のブートキャンプ(新兵訓練所)での訓練に匍匐前進中に「フリーズ」って言われたらそこが白アリの巣の上であろうと固まって動いてはならないってエピソードが出てくるんですけど、関係ないですね。
一年以上放置状態だったのですが、その間も匍匐前進の如くジリジリ開発は進んでいたという事が言いたかったのです。

立ち絵

立ち絵

座ってイジイジ

座ってイジイジ

ち、近い・・・

ち、近い・・・

暴れず大人しくしてりゃいいんだ

暴れず大人しくしてりゃいいんだ

ほれ、お前もいじれ

ほれ、お前もいじれ

お、重い・・・

お、重い・・・

奥がイイんだろう

奥がイイんだろう

あぁぁ・・・なんか変

あぁぁ・・・なんか変

中でイくぞ

中でイくぞ

ダメっ中はダメっ

ダメっ中はダメっ

うぅ、ダメって言ったのに・・・

うぅ、ダメって言ったのに・・・


今年は特に暑かったよねぇ

暑い中セックスすると汗だらだらだよねぇ
と言う事で汗を描いてみた。

でも、ちょっと汗かき過ぎかなぁ・・・
これだとサウナとかシャワー浴びてるって感じかも

汗だらだら

汗だらだら