投稿記事

2019年 08月の記事 (29)

MetaFormingPro 2019/08/12 18:57

【2.5Dアニメーションエンジン】MGB-Engine #7 アニメーション

何か過去に作ったやつレタッチしようと思って
何故か逆光っぽいの挑戦してみようと思い至ったが割と無理があった図
そもそも毎回こういうの用意するのは無理がある


まあ、MGBの機能もおよそ紹介できました。
というか、今回の記事でひとまず一段落かな?


構成と描画については説明しました。
で、残りはモーションについて。

といっても、基本設計に関しては、既存の3Dモーションや
スプライトアニメーションと殆ど違いはありません。
人体に準じたボーンの角度を弄ってポーズをつくっています。

UnityEditor拡張でこんな感じになってますね。

ただ、モーションに関しては多少独自設定をしています。

モーションはキーフレームとその補間で作られます。
これは一般的なアニメーションと同じです。
MGBでは、リニアでもベジエでもなく、IIRを使って補間します。

IIRとは何か?
IIRとはInfinite Impulse Responseの略称であり、
無限インパルス応答の事を指します。
はい何言ってるんだこの人。

物凄く簡潔に説明すると、IIRはDTM、もう少し厳密に言うと
信号処理の分野で使われるアルゴリズムです。ローパスフィルタやら、
ハイパスフィルタやらあそこらへんの処理に密接する概念です。

ローパスフィルタは「滑らかにする」処理です。IIRの最大の強みとして、
「リアルタイムに不規則にキーが打たれても、滑らかに補間を維持できる」
事にあります。これがアクションゲーム中の人の動きに
無茶苦茶相性が良いと思っています。

ここまで書いてマニアックすぎてどうでもいいなと思いました。



ざっくらばんにいうと、ポージングとそのポージングへの遷移速度だけで
構成されています。複雑な補間の打ち込みなどは必要ありません。
この設計により、各種モーションをかなりの低工数で作れます。

もとより、アクションの標準的で使われそうなモーションは
デフォルトで用意され、人型なら誰にでも適用できるため、
「とりあえずキャラを作れば、アクションゲーム的に動かせる」
位になっています。


うーん文章だらけで辛い記事だ。
でも説明は必要だったのだ。

ここまででMGBエンジンの一通りの仕組みについて説明しました。
次回あたりで統括記事を出して、一連の投稿はひとまず締めたいと思います。

MetaFormingPro 2019/08/11 12:04

UnityRoomにゲームを投稿しました

唐突ですが。

UnityRoomにゲームを投稿しました。
↓↓↓
m.t.colosseum
↑↑↑

ゲームとしては、何の変哲もない、いろんなボスと戦うアクションです。
なにゆえこのゲームを投稿したかと言うと、
MGBエンジンの試遊台的な意味合いが強いですね。
MGBエンジンについては毎日投稿している通りの内容ですが、
結局の所、「Unityでゲームを作れる人にしか扱えない」わけで。

なので、「MGB製のキャラをゲームとして動かせる場所を、
ひとまず作者自身で設けておいたぜ!」という感じですねー。
今後もゆるゆるとコンテンツを追加していこうかなー、と考えてます。

まあテキトーに触ってみてください。
MGBエンジンはこれくらいのものがつくれるんだぜ!
ていうのを感じ取ってもらえれば。

おまけ・作中内の個体名の読み

Methia⇒メティア(再三出ている黒服の子のおなまえ)
Humaned⇒ヒューマンド
Norterm⇒ノルテーム
Lene⇒レネ
Zunu⇒ズヌ
Alice⇒アリス
Mold⇒モールド
StillAlive⇒スティルアライヴ
Chimera⇒キメラ
Grooge⇒グルーゲ
Lycorita⇒リコリタ
Raggamur⇒ラガマー

MetaFormingPro 2019/08/10 14:59

【2.5Dアニメーションエンジン】MGB-Engine #6 拡張パーツ

↑見出し画像用
 レタッチしてます。レタッチ前はフォロワー限定のところにでもあげますか。
 
前回がくっそ地味な内容だったので、今回は彩りのある内容にします。

拡張パーツとは

MGBは人体を前提とした設計となっています。
そして、今まで紹介したものは人の形の基本形をベースとしたものでした。
実際には、人型+αのデザインのキャラ造形も多くある訳です。
そしてMGBエンジンはそういったものにも、
「拡張パーツ」として適時実装が施されています。

実装拡張パーツ


「皆さま、初めまして」

うちのこです。キメラといいます。
MGBエンジン制作時に最初に作られた存在です。

というわけで、聖剣を持っています。
こんな感じに、手に何かを持たせて動かすことも出来ます。
武器攻撃なんかも実装できるというわけですね。

そして、このキメラ君、気づいた方もいるかもしれません、
そうです、振袖です。はい、振袖も既に実装しています。
3Dの振袖は衝突問題が結構厄介な問題なのですが、
2.5Dならわりと誤魔化せるのも一つの強みですかね。



あとは。




「ちょっと!?」

はい、しっぽですね。尚、今回特別に装着しただけで
この子が設定で尻尾を持っているとか、そういうわけではないのであしからず。
尻尾もアニメーションによって動かすことが可能です。
なお、対になるであろう耳については、
単に顔パーツに書き込むだけで実現できるので割愛。
というかヘアバンドと競合してしまってな

現時点で実装しているのはこんなところでしょうか。
あとは翼、羽系も実装しようかなーと考えています。


ところで今回、記事の中でいろいろな輩が出てきましたが、
全員、ちゃんと設定を持っているうちのものどもです。
どこかの機会で紹介します。


よし、結構華やかな記事になったぞ!

フォロワー以上限定無料

無料プラン限定特典を受け取ることができます

無料

MetaFormingPro 2019/08/09 20:46

【2.5Dアニメーションエンジン】MGB-Engine #5 データ定義

前回で画像データの作り方を説明しました。
しかし、それを実際にどう組み立てるのかの定義は不明のままでした。
というわけで今回は定義のしかたについて。

……はい、わかる人は解りますね、Jsonですね。
とりあえずデータフォーマット作るときはJsonにする程度にJson厨です。

そんなに説明する事もありません。
MGBデータとして定義されたクラスに応じて、Jsonフォーマットで
フィールド情報を適宜入れていくだけです。
具体的なクラス定義の説明はここでは割愛します。

MGBフォーマットのデータ定義に関しては、Json1ファイルで完結します。
また、全てを1から書いていく必要もなく、
他のMGBアーカイブを改変していく感じで十分作れます。
画像ファイル名を変える位ならば、フィーリングで行えるでしょう。



……さすがにこれだけだと味気なさすぎるな!
過去に作った動画を張ってお茶を濁す!


必殺技どーん

MetaFormingPro 2019/08/08 21:14

【2.5Dアニメーションエンジン】MGB-Engine #4 パーツ画像

前回の記事で全体構造について説明しましたが、
今回は各パーツについての説明を。画像いっぱいあるぞ!

パーツについて

MGBエンジンは主に「回転体」「髪パーツ」「固定パーツ」の
3つの種類のパーツによって形成されます。

1.回転体

MGBの主力?となる、Y軸回転が行えるパーツです。
人体のうち、胴体・両腕・両脚を担当します。

画像内に説明がありますが(前に作った資料画像なので内容被りありあり)
「表面画像」「裏面画像」「側面マップ」の3情報から構成します。
(厳密には正面マップあり)
基本理論は、
「断面が楕円系であるならば、正面と側面のサイズで形状が確定する」です。
専用シェーダにより、各座標が楕円のどの部分にあたるか計算し、
ピクセルを描画しています。作った当時は意識していませんでしたが、
いわゆるレイマーチングに近い手法ですね。

2.髪パーツ

そのままです。髪の毛(長髪)を担当します。
髪の毛でなくても揺れ物とかにも。


主に2種類の画像で構成されます。ひとつはそのままグラフィック画像。
もうひとつはモーフィング用のマップ画像です。
大きく動くと物理的になびきますが、その加減を調整する感じのものです。

このなびきまじ美しい(自画自賛)

3.固定パーツ

これも名前のままです。人体的には顔と手ですね。
任意ですが足先(靴)も担当できます。何の変哲もない、固定の平面画像です。

顔部分だけだと淡白ですね。
顔に関しては、各向きを書きます。中割を増やせばより滑らかになりますが、
実際は斜め前・横・斜め後ろの3パターンx鏡の6方向で十分かなーと思います。
もちろん表情差分的なアニメーションを実装しています。

かわいい(自画j(

まとめ

という感じで構成されています。見ればわかるとおり、全て画像です。
また、UV展開のような「情報的な画像」ではなく、
そのままイラスト的な雰囲気の画像です。
なので絵を描きなれている人ならば、直感的に作っていけるのが強みです。
……たぶん。

1 2 3 4 5 6

月別アーカイブ

記事のタグから探す

限定特典から探す

記事を検索