妹でもわかるUnrealEngine4

毎日更新? 妹に説明するために書いてるけど、たまにわかってない場合もあるUnrealEngine4を中心としたゲーム制作の話。略すとイモリアル

毎日更新? 妹に説明するために書いてるけど、たまにわかってない場合もあるUnrealEngine4を中心としたゲーム制作の話。略すとイモリアル

マテリアルによるトゥーンアウトライン研究(1) とりあえず眺めてみる

「マテリアルを使い方もだいぶわかってきたから、今度はちょっとトゥーンレンダリングというやつをやってみようと思う」

妹「ゼルダみたいな?」

ゼルダのは色の塗り方というか、光のあたり方を調節してるやつだと思うんだけど、どちらかというと輪郭線の方が欲しい。たぶんゼルダも輪郭線の細工は何かあると思うんだけど、具体的な手法はわからない」

f:id:una_unagi:20170320001807p:plain
f:id:una_unagi:20170320001815p:plain

「線を出す方法は色々あるんだけど、とりあえずStylizedRenderingサンプルに線が入ってるから、まずはこれをパクってみようと思う。思うんだけど、なんか角度によって線が出たり出なかったりしてる気がする。このキノコとか」

妹「上からだと輪郭線みえないね」

「前にマテリアルをそのまま使って試そうとした時も、線が上手く出ないことがあった。その時は原因不明のままほったらかしにしたんだけど、何か仕組み的に、線が出せる時と出せない時があるのかもしれない。そのへんも含めてどういう仕組みなのか調べる必要がある」

UE4でNintendo Switchのゲームをどうやって作るのか?

www.unrealengine.com

妹「4.15のアップデート内容見てるとさ、スイッチのゲーム作れますって書いてあるんだけど、作れるの?」

「それは個人ではいまのところ無理。任天堂のゲーム機は、普通に売ってるゲーム機とは別に開発機という、色違いの制作者専用機がある。作るのはパソコンで作るんだけど、実際テストプレイする段階で開発機が必要になる。でもこれがまだ発売されてない」

jp.gamesindustry.biz

「発売の予定はあるんだけど、5万円ぐらいするらしい」

妹「開発機がまだないんだったら、今作ってる人たちは一体どうやって作ってるの?」

「たぶん開発機の試作機とか、少数生産したバージョンがあるんじゃないかな。当然Epic社もそういうのを持ってて、それを基準にUE4を対応させてるはず」

妹「でもそれで自分のゲームも遊べるんだったら、普通のじゃなくてそっちのバージョンが出るの待ってから買えばよかったのかな」

「いや開発機が出てもたぶん普通のゲーム動かないと思う。少なくとも今までの任天堂の開発機はそんな感じ。制作用に色々出来る機械だから、それを使って不正なアレコレをやりやすくなるのが嫌なんだと思うけど」

妹「両方買わないといけないとなると、やっぱりお高いね……」

「例えばXBox Oneの場合だと、市販のゲーム機をそのまま開発機として使えるらしい」

妹「親切ですな」

「でも個人じゃ開発者としてのユーザー登録ができないから、会社を作って、会社としてマイクロソフトと契約を結ぶ必要がある」

妹「……不親切ですな」

「会社作ると多分5万円以上かかる。任天堂の場合は個人制作者でも開発機を買って、ゲーム販売も出来るようになってる。最初は日本からだと登録できなかったけど、半年ぐらい前から出来るようになった。兄も登録はしている」

妹「いつのまにそんなことを。そうすると5万円の開発機というのが買えるようになったら、それを買って、ゲーム作った場合、それ売れるの?」

「多分売れると思うけど、ただ今までの例だと、ダウンロード販売のみの場合でもCEROの審査が必要だったみたいで、それが噂では数十万かかるとかで」

nanmo.hateblo.jp

「この記事にWiiUの時に個人で出したケースの事例が書いてあるから、Switchでもこんな感じになる可能性が高い」

※3/20追記
任天堂側でもこのハードルの高さは認識していて、もうすこし簡単にゲームが出せるようにしようと考えている様子
www.4gamer.net

妹「なんかよくわからないけど大変そうだ」

「ただUE4で作れることはわかってるわけだから、まずはパソコンかスマートフォン向けで作って、それで人気がでたら調整してSwitch版を出すみたいなパターン。こういうのが個人の場合だと多くなるだろうと思う」

UE4のブループリントと構文木の図はよく似ている

「今日は遺伝的プログラミングについて調べてたんだけど、なんかすぐにブループリントで実装できるサンプルが見つからなかったので小休止」

妹「こないだ動画を見たやつ?」

「あれは遺伝的アルゴリズムで、遺伝的プログラミングというのはその強化版みたいなやつ。数字とかフラグだけじゃなく、ブループリントのノード自体を遺伝子として扱って、組み替えていこうという。そうすると原理的にブループリント出来ることはなんでも出来るはずだし、何回もやってれば勝手に最強になるのではないかと」

妹「それはすごい!」

「でも完全にランダムにブループリントのノードつなぐと、まともに動くプログラムが出来るわけもなく、ある程度作るノードを制限したり、色々調整しないといけないみたい」

妹「そんなにすごくなかったみたい……」

「まあそんなことを調べていてふと気付いたのが、遺伝的プログラミングでもよく使われる構文木というのが、ブループリントのグラフにとても良く似ている」

f:id:una_unagi:20170318004003p:plain
Wikipedia遺伝的プログラミングのページにある、構文木の例

f:id:una_unagi:20170318004009p:plain
同じ計算式をブループリントで表現した物

「ピンが向いてる方向の関係で右に90度傾けたけど、同じ計算式を同じように表現してる。最初に何のノードがあって、次にそこにつながるピンを書く。そのピンにパラメータが必要なら、さらに別のノードをつないでいく」

妹「構文木というのがまずわからないんだけど」

「(プログラミング)言語を文法によって解析したデータ……なんだけど、普通はなかなか説明するのが難しい。でもブループリント図を紙に書いたやつ、といえば簡単に説明出来るんじゃないかと」

妹「そういう図だと言われれば、そういう図には見えるけど。ピンと線のつながってる方向がわかりにくいかも」

「それは基本的に下から上にデータが流れていく感じの図面になってる。ピンが増えると線もたくさんになるけど、真横に線を伸ばしたりはしない。どっちが上か下か関係がわかるようになってる。ブループリントみたいに線がグネグネしたりは出来ないから、その点はちょっと違うかも」