1. ソルラジ 〜ゲーム開発の挫折共有ラジオ〜
  2. #game46 素人開発の2Dモーシ..
2024-10-16 19:30

#game46 素人開発の2Dモーションゲーム開発の秘訣 前編  〜モーションづくりは地道な作業!?〜

<内容>

-体の各部分がバラバラのモーションになる

-アニメーションを秒ごとに設定する

-モーションを細分化していく

-人間として違和感のある動きになるモーション

-モーションは大げさの方がかっこよく見える

-点と面の見せ方

-魔法を発動するモーション

-感覚で作るモーション制作

-自分の絵に綺麗にボーンを合わせていく

-モーションを素人からどうやって理解するのか

-動きの変わる場所を確認していく作業


SOLVENTERとは?

「世の中のつまらないことを無くし、好きな事で生きる世界を作る」を理念として立ち上がったゲーム開発チームです!

現在は、プログラミング学習の挫折率を下げたい!

という想いで

プログラミングが楽しく学べる

「EXEACT(エグゼアクト)」を開発しています!


SOLVENTER RADIO(ソルラジ)とは?

ゲーム開発の日々の挫折をRADIOで発信していきます。

開発の苦悩を面白おかしく共有していきます!


SOLVENTER

X/Twitter(フォローよろしくお願いします!)

⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠▼https://twitter.com/Solventer_jp⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠


EXEーACT

<ブラウザで遊べます!開発中のゲームはこちら>

プログラミングが学べる3Dブラウザゲーム

⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠▼https://unityroom.com/games/exe_act_stage01⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠

⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠▼https://unityroom.com/games/exe_act_stage02⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠

⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠▼https://unityroom.com/games/exe_act_stage05⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠


プログラミングが学べる2Dブラウザゲーム

⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠▼https://unityroom.com/games/test0000test

サマリー

このエピソードでは、SOLVENTERの野川さんがUnityを使った2Dモーションゲームの開発プロセスについて話しています。キャラクターの動きやアニメーションの設定に焦点を当て、複雑な骨組みやモーションの連動についても触れています。また、素人開発者が2Dモーションゲームを制作する際の秘訣を語り、特にモーションづくりの地道な作業について詳しく説明しています。具体的には、Unityを利用したアニメーションの基本的な理解やキャラクターの動きの調整方法が紹介されています。

ゲーム開発の背景と目標
ソルラジ ゲーム開発の挫折共有トーク
この番組は、素人ゲーム開発者たちが、プログラミングにおける挫折を つれづれなるままに共有していく番組です。
ゲーム開発に興味のある方や、開発者の方の参考になることを目指した番組です。
じゃあ、ソルラジ始めていきたいと思います。よろしくお願いします。
よろしくお願いします。
SOLVENTER代表のパギジョウです。
野川です。
相馬です。
お願いします。
よろしくお願いします。
お願いします。
今日のテーマですが、野川さんの2Dモーションの話をしたいなと思います。
2Dモーション?
今、Unityで2Dのゲームを作っています。
RPGゲームに近い感じなんですけど、キャラクターの絵があって、四頭身ぐらいの横向いている絵なんですけど、
そのキャラクターをコマンドに合わせて攻撃したり、防御したり、走ったり、ステップしたりとか、
そういうことをアニメーションをさせたいと。
そういったときに、Unityでどうやってやるんですか?っていうところで、
野川さんがこの1、2ヶ月くらい頑張っていろいろ実装したっていうような話になります。
何のゲームなんですか?
このゲームはExact、今ソルベンタで作っているゲームです。
プログラミングを学ぶゲームね。
2Dアクションに変わったんだね。
2Dアクションに変わった。
そもそもどうやって動かすのっていう話、ちょっと簡単にできたらいいなと思ってて、
まずキャラクターが動いてもいいように、
頭とか首とか胴体とか足とか手とかをそれぞれ絵を描いてもらって、その絵を用意します。
バラバラなの?
そう、バラバラ。
バラバラでバラバラにしておくと、
それをまず貼り付けて、なんか棒立ちしている状態っていうか、それを作って、姿勢を作ってあげて、
それぞれの絵にボーンっていう骨を設定できるんですよ、ユニティ上で。
例えば手の絵の部分に、例えば腕のところに腕用の骨、
その先の手のひらは手のひら用の骨とかでもいいし、
胴体は胴体の骨、頭は頭の骨みたいなボーンをそれぞれ作ってあげると、
その後にボーンを、この例えばアニメーションで5秒間はどういうふうにそれぞれボーンを動かしますかっていうのを設定してあげるんですよ。
骨組みの設定をしてから全体の動きを設定してくるの?
そうです。骨を動かせば、例えば腕に骨を付けてあげれば、骨を動かせば腕も動くので合わせて、絵も動くっていうような感じですね。
これってどういうソフトでこういう設定してるんですか?
ユニティ上でできます。
ユニティでできるんですか?
そう。ユニティの一つの機能としてアニメーション設定っていう機能があって、それを作って使ってやってますね。
野川さんどうですか?やってみて。何ができるようになったんだっけ?
できるようになったのはバラバラな絵に、例えば肘から先、胴体からつながっている腕、胴体、足、首などの絵のパーツみたいなのに、さっきジョーさんが言ったボーン、骨組みですね。
それを絵に貼り付けてあげると、ボーンを上下に動かすっていうのをボーンを上下に動かしてあげれば、絵も連動して上下に動くので、それを一個一個、胴体、足、腕とかっていうのに、
このフレームの時、例えば1秒後に腕は高い位置、足は右足が一歩前、一歩前に出したから胴体は少しだけ立っている時より下の方に動かすみたいなのを連動させると、
絵の上の画面上のキャラクターが本当にしゃがんだりとか、剣を振ったりとかっていう風なモーションを再現するようなっていう感じの仕組みの作業ですね。それを今やっています。
そうですね。やっぱり人間が無意識に体を動かすのって、改めて画面上とか絵の上で表現しようとすると、すごく細かく連動していたりとか独立していたりとかっていうすごく複雑なので、それをデフォルメ化するといいますか、そんな細かくやってもとっても作業工程が多くなっちゃうので、
キャラクターがやっぱり3Dの実際のモデルとかよりもデフォルメ化された、カービィみたいな感じの一等身とかだったらすごく簡単に動かせる。しかも複雑でもない。そんな感じです。
アニメーションの工夫と表現
ね、少ないからね。
はい。この辺あるんですかね。
できたところっていうのは、歩くっていうところと、走るってところと剣で斬るってところ、あとアイドル状態って言うんだけど、普通に立って呼吸している感じ。そのアニメーションができているっていう感じなんだよね。
そうですね。そこまでは今できたような感じです。
動画とか画像、これあったほうが絶対わかりやすいんだけどね。
ちょっと言葉の上では説明が難しいかなというところもあると思いますけど、そこをちょっと構造で。
イメージとして、例えば片手を上げるようなモーションするとするじゃないですか。立っている状態から片手上げます、右手を上げますっていうふうにやったときは、まずアニメーションを新規に作ってあげて、新規作成っていうふうにやるとね、時間がまず出てくるんですよね。
0秒から、じゃあこのアニメーションは何秒ぐらいのアニメーションかなみたいなところがあって、最初の状態はただ立っている状態の骨っていうのが全部座標があって、5秒後に手を上げてたらいいなっていうので、5秒後の棒の状態、棒を動かしてあげるんですよね。
5秒後は右手がまっすぐ上に立つように最終的な姿勢の棒の位置を設定してあげると、あとはその5秒の間は自然に動くようによろしくやってくれるんですよね、ユニティで。
だからポイントポイント大事な姿勢を座標を打ってあげると、そこまではスムーズに動いてくれるっていう、そこが結構便利な仕組み。
そうですね。
その間をユニティが補完して作ってくれるんですね。
そう。
そんな感じ。
その速度に合わせてね。だから早めにこの右手を上げて、遅めに左足を上げるみたいな、そういうこともできたりする。
その動き方の環境もつけられるんだよね。
うん、環境もつけられる。だけど、思ったより1個のモーション、0から作るのは時間かかるよね。
そうですね。やっぱり今言った手を上げるっていうモーションもやっぱり細分化していって、5秒後には腕が一番上、万歳している状態に持っていきたいっていうふうにしたときに、
そうですね。1秒経過時にはここ、2秒経過時にはここ、3秒経過時ぐらいでだいたい平行に行って、4秒経過時に平行よりちょっと上。
5秒後だったら万歳しているみたいな感じでうまくやらないとすごく違和感があるというか、2Dで全然実際の人間とは違うんですけども、それでも人間として違和感のある動きになってしまう。
それをなんというかスムーズにしたりとか、違和感をなくしていくっていうふうな作業ですね。
だから、そうだね。
千代さんどうぞ。
人間に最終的に手を上げるって言っても、肩から上がってその後手の先が上がってみたいな、そういう流れとかもあったりするじゃないですか。
だからちょっと人の動きっていうのを知ってた方がそこら辺は自然に作る上で有利かなと思ったりしてます。
実際に2Dで見ているのと自分が動いているのとで、リアルなものと違いそうな感じもするんですけど、それってどういうのを参考にしながら自分の感覚で作っているものなんですか?
今のところは結構感覚に近いかも。
そうですね。感覚ですかね。視覚的な感覚に頼っているような感じですかね。
あと気持ちね、あれもやったりしてる。ちょっと大げさにしてみるみたいな。ここをあえてもうちょっとグイッと動かしてみるとか、大げさの方がわかりやすくてかっこいいっていうのを聞いたことあって。
確かにエフェクトが激しい方がいいもんね。
やっぱり2Dモーションなんで、漫画的表現みたいなのをすごく参考にするとあんまり違和感がないっていうイメージでたまに作ったりします。
漫画的に激しいみたいな感じですか。
例えば剣を振るモーションを作るんだったらちょっと大振りと言いますか、そんな感じで。踏み込みすごく大きいとか。見栄え重視みたいな感じの方が映えですかね。
アセットの活用方法
キングダム的な感じですか。
それもあります。あとはかっこいいポーズみたいな。剣で踏み込みでかくして体勢をめちゃくちゃ、アキレス剣を伸ばすようにものすごく前にして、かつ頭を下げてるとギャキーンってやった後みたいな感じになる。
そこ持っていくようにボーンを調節するっていう風なのだと見栄えいいのかなって感じで動かしたり。
ジョジョって言うジョジョ立ちしてるみたいな感じですか。
それもいい表現ですね。そんな感じです。いい意味で大げさっていう表現が一番ゲーム的には見てて楽しいのかなっていうイメージです。
ポイントポイントの姿勢、動きの一連の動きの中のこの大事な部分の姿勢みたいなのを意識して、ここではこの姿勢、このタイミングではこの姿勢、このタイミングではこの姿勢みたいな、そこがそれぞれ大げさな姿勢になってると、その間の動きも結構大きくなって良くなるイメージある。
大げさに点を作っていくと他も大げさになってくるんだ。
あとはさっきも言ったように骨格腰なので、要は連動したりくっついてたりするので、思いっきり足を前に出すと、思いっきり前に出してるのに右足を思いっきり前に出しても左足が棒立ちになるとものすごい体勢になっちゃいますし、
なのでそれに合わせて左足の方も後ろに引いてあげたりとか、漫画的表現ながらもリアルでの説得力っていうのもある程度必要になってくるっていうところが調節のしがいがあるというか、結構面白いところになってくるね。
大げさだけどリアルからも外れないみたいな感じですね。
そうですね。
難しい?
ものすごく使って飛んでぐるぐる回ってから剣を振り下ろすとかっていうのはいいんですけども、ただその星が90度曲がってこれ死んでるじゃんみたいな感じになっちゃったらダメですしみたいな。
そんな感じ。
アニメとかいっぱい見てるとそこら辺のアイディアいろいろあるのかもしれないんだけど、本当は手をちょっとここは手を大きくしてあげて強調するとか、そういうこともできたりすると多分本当は幅広がるんだろうなって思ってるけど、今のところは大きさは変えずに動かしてるっていう感じ。
モーションづくりの基礎
なんか機能自体はあるんですよ、そうやって。ここでは手のスケールをちょっと1.2倍にしてみるみたいな。ここではちっちゃくするとか。そういうこと多分うまく使うとより強調された表現できるんだろうなと思ってます。
こんな細かいやつあるんだ。
そう、めっちゃ細かくできる。だからね、いくらでも時間使えるんだよね、モーションって。
こだわりってとこですかね。今はちょっとゼロから魔法を発動するモーションみたいなのを作ろうとしてるんですけれども、それは一応僕の頭の中では手を上げてただ杖を掲げるみたいな感じでもいいんですけれども、
その前に若干しゃがむまではいかないですけれども、少し間を置くというか、ためてるようなモーションをやってからパッて体を開いて腕に何かを掲げているほうが何かを発動してる感が出るというか、そういったのも取り入れていったら、
まあ要は説得力みたいなのを見てて、魔法を発動しているんだとか、なんかためてるんだとかっていうのが生まれるのかなと思っていじったりしてますね。
なんかやってますよ感を出すと確かにわかりやすいですよね。
そうですね。本当に現実の動きではそんなことをやらないけれども、余計な動きを一個入れると、アンリアル上というかゲーム上とかでは逆にリアリティが出てきたりするっていうイメージです。
逆にゲームではリアルに見えるんですね。
はい。あとはね。
大げさな動きをどう入れていくかっていうのは、それも全部感覚で入れていくんですか?
これはそうですね。やっぱり制作者のイメージみたいなのが結構大きく反映されるのかなって思ってます。
まずはちゃんと最低限動くよねってところから始めていて、後で修正というかもっと大げさ、ここを大げさにできるよねとかそういう編集の仕方もできるんですよ。
個人的にちょっとやってたのは、Googleスライドにそれぞれ部品のパーツ入れて、普通にパワポというか、そこでも部品の絵の置き方でこういう姿勢できるね、こういう姿勢かっこいいなとか、こういう姿勢かっこいいなっていうのをいくつかいじいじして見てみたんですよ。
で、そしたらこういう姿勢につながる動きしたいな、させたいなとか、なんかそこら辺がアイディア出てくるから、結構僕はそれ良かったんですよね、やってみて。
Unity上の一個前にかませて、そのポーズを確認するっていうのをスライドでやるんですね。
そう、そっちの方が楽だったから、自分は。
確かに圧倒的に楽だね。
パラパラ漫画みたいな感じのワンシーン、ワンシーンみたいなのを具体的にするとすごく作りやすい。
それを作った上で最後流れる形にUnity上で作っていくと。
一連の動きになっていく。
今回これでも最初始めたところからだと思うんですけど、何から始めていったとかあるんですか。
アセットを参考にしたっていうのも、アセットでいろいろストアみたいなものですね、Unityにキャラクターの絵とそのボーンがあって、試しに歩いている動きとか走っている動きとかそういうデータがあって、
こんな感じでボーンを動かしているんだなっていうのを確認して、それをうまいこと自分たちの作った絵にボーンをある程度合わせるような感じで動かしたら、同じように歩きっぽい動きになるんですよね。
なるほど、じゃあボーンだけ持ってきて自分たちの絵に付け替えるみたいなのができるんですね。
そこやり方いろいろあるっぽいんだけど、絵が違うとボーンのそれぞれの長さも絶対変わるじゃないですか。
まったく同じシルエットじゃない限りね。
だから絶対そのボーンの長さとか角度とか微妙にズレが出てきて、そうなると結構動くとまたそれまたズレるのね。
だからいずれにしろ修正は結構したんだよね。
大まかな動きはでもなんとなくわかるって感じ?
うん、なんとなくわかる。例えば歩くとき胴体ってそんなにグラグラしないじゃないですか。
どっちかというと手と足がそれぞれ動くみたいな。
右手が前に出てる時は左手が前に出てるイメージ。
そこら辺はざっくりやってるから、あとはじゃあどの角度まで行くかとか、どの速度で行くかとか、どれぐらい上げるかとか、そういったところを修正してあげる、調整してあげるみたいな感じ。
そこの辺の細かい調整を後で足してやっていくんだ。
そこからが結構始めやすい気がする。
ゼロから全くわかんないゼロの状態から動かそうとすると結構大変な気がする。
1からっていうよりかはアセットを持ってきて、そこをもとに作っていく方が早いって感じなんですね。
早い。なんだけど、アセットも実はいっぱいあるわけじゃないから、基本的なムーブしかないから、結局オリジナルの技とか攻撃とかさせたりするときは絶対必要になる。
だけど最初に理解をしながら、アニメーションを理解しながら触っていくっていうスタートとしてはめっちゃおすすめって感じですね。
どうやって理解していったんですか?初めてやりながら。
まずアセットを持ってきて再生するってところから始めます。
アセットからダウンロードした絵、ダウンロードしたボーン、ダウンロードした動きっていうのがデータとしてあるので、それをダウンロードしてそれをまず再生したら、
プレビューみたいな感じで出るんですよね。再生の画面の。
そうしたら、そのプレビューを見ると、ユニティのこの部分の設定がタイミングの設定で、この部分が姿勢の設定、ボーンの設定で、この部分がこれなんだなっていう、そのユニティのどこクリックするとどういうふうに変わるかみたいなことが理解できるって感じ。
なるほどね。ポチポチそこを変わることによってこの動きが変わる場所を確認してたって感じ。
それ分からない状態でゼロから動かそうとすると、1個1個動いて、よく分からない動きになったなってなりやすいけど、完成したものを1回再生するっていうのが、これが正しく動いている例っていうので一目で分かるから。
これが関連してるんだなっていうのも、ちょっといじってちょっと違和感出たところが違いだし、そういう感じで触っていくっていうのが結構今回やったことに近いかな。
なるほど。1個1個ポチポチして動かして、どれがどれに当たるっていうのをひも付けていって最終的にどこをいじるっていうのを決めてやっていくって感じなんですね。
本当はね、調べて学んでからやるっていうのもが正しいかもしれないんだけどね。
19:30

コメント

スクロール