フロントエンドエンジニアがUE4を触って気づいた勘所|PARTY|note
PARTYで主にフロントエンドを開発している清滝です。今年のフジロックに合わせてリリースされた「 FUJI ROCK `19 EXPerience by SoftBank 5G 」というアプリの開発に携わりました。 このアプリは、Unreal Engine ...
https://note.com/prty/n/n7ca7525a6ebd
[この記事は2019年11月3日にPARTY公式noteにて公開された内容です。]
前回、ヴァーチャル空間でFUJI ROCKを楽しめるアプリ「FUJI ROCK `19 EXPerience by SoftBank 5G」の開発秘話をお送りしましたが、後編もチームビルディングや今後のテック事情など、引き続きお話を伺っていきます!
前編はこちらよりご覧ください。
ー 今回、アプリ開発するにあたって、意識したこと、大変だったことはありますか?
中村:うちはゲーム開発の会社なんですけど、映像とか建築とか、他業種の人とはたくさんやらせていただいていて。今回だと、圧倒的にスピード感が違いましたね。企画が決まっていくスピードや納期的にも、普段ゲームを作っていると長いものだと2〜3年とかかるものが、いきなり話が来てしかも、納期が2ヶ月とか普通ではなかなか味わえない世界でしたね。
あとは考え方。デザインするものに対する考え方も、見た目をすごく重視するというのを感じましたね。ゲームの場合ももちろん、見た目は重視するんですけれど、作りながらゲームらしさとか、ゲームに使うことを意識していっているな、という感じでした。
広告系とかだと、見た目の話はしやすいと思うんですけれど、内部的な詳細周りとか、考え方、テクスチャーの解像度に対する考え方とか、ゲームを作っていたら共通認識として持っている土台が最初なかったりするので、そこを補いながらやることは意識しました。
梶原:例えばテクスチャーサイズとかは、広告ウェブ業界だと全くないですね。なんで2の累乗なの?みたいな。
中村:GPUの一番効率よく圧縮展開できて、うまく出せるという技術的なもので、ゲームとかハードウェアが当然なんですけど、ウェブだとそういうの関係なく・・。
今回モバイルだとiOSがその辺り厳しかったので、かなり序盤の方にその話をして、解像度を気をつけてください、みたいな話はしましたね。
梶原:僕は前職でこういうのをやっていて、モバイルでUnreal Engine4を使ったアプリとかインスタレーションを作っていたのですが、そういう時はそういうチームでどん、とやってしまうので、特に社内チームに情報共有とかしないでやってたんですね。そこを僕も当然だと思っていた節があって、誰にも共有していなかったけれど、「確かにそうだな」と思って。こういう3Dリアルタイムレンダリングの技術周りをなんて説明したらいいのかな、って。
ー清滝さんはまさに、普段ウェブのフロントエンドエンジニアですが今回初めてUEを触りましたよね。
清滝:先ほどの2の累乗の話は、一番僕が失敗しところで、僕は普段ウェブのフロントエンジニアなんですけど、そこらへんを気にすることって普段は全くないんですよ。何入れても表示してくれるんで。
一同:(笑)
清滝:僕も昔、フラッシュとかで3Dをやった時に、確かに2の累乗で用意しろって言われていたけど、そうしなくてもなんだかんだやってくれる、みたいな状況だったので。累乗じゃなくても見れてるじゃん、って。でもそれって、内部的にアプリケーションが色々やってくれていただけであって。だから今回は前提の知識というのが全くなかったので、やりながら慣れていく、というのを今回やっていましたね。
ー 恐ろしいですね。2ヶ月という短納期の中で(笑)
梶原:やれるっしょ、という感じでアサインするという(笑)そして、みんな優秀だから結果やれる、という。
デジタル広告系のエンジニアの強みは、飲み込みと順応の速さですよね。この辺に関しては多分どの業界のエンジニアよりもすごいと思います。みんな必要であればなんでも覚えて本番投入していく。
逆に、僕たち側はゲームを普段作っている方の予見能力というか、「こういう方向にいくとあとで大変だよ」などというのを事前にアラートを出しておいていただけるのがさすが、というか、ありがたいなと思いながらやっていましたね。
そこを事前に分かるようにしていただけたので、そのフィードバックをデザインやCG側に即座に戻して、じゃあこっちにしよう、とか意思決定がしやすかったですね。
そういったことをしっかりと経ているから、最終のクオリティが良かったな、と思っていて。この期間でなかなかないですよね。夏フェスでこれをやりたい、という話が出て来たときに、もうすでにみんな半袖短パンだったので(笑)
中村:同じことをやっているところはたぶん、他にはないと思います。今回と同じ期間で同じ規模のものを作れと言われてもおそらく、ノウハウや経験者が全然いないので。
今回、ネットワーク周りとかUnreal Engine周りとか、たまたま僕が一番相性の良い部分が揃っていたから、うまく全部繋げられたみたいなところはあるのかなと。
ー 今回、PARTYと一緒に案件を進めていただいて、最初と後とで印象は変わりましたか。
中村:実際にやって見たら、勢いがとんでもなくあるな、って。やろうと思ったらすぐやる、その場でどんどんいろんなことが決まっていってすぐやる、という感じでした。
技術に関しても貪欲で、新しいことを取り入れていくのが良かったですね。今回Unreal Engine4を使ったことがある方は初めてなのにも関わらず、覚えて言った速度はめちゃめちゃ速かったです。なかなか、そんな短期間では使えるようにはならないですよ。
梶原:意外と、なんとかなるもんだな、みたいな感じでしたね。
与羽:ぼくもUnreal Engine4は初めてだったんですが、、チームで開発していてすごく良いツールだと思いました。アセットやレベル管理などチーム開発のシステムがある程度整備されていれば、そんなに迷わず開発が進められるなと思いました。
中村:今回、ブループリントという機能をほぼ使って作っているんですけど、ブループリントじゃなかったら作れていなかったと思います。速度感が全然違うので。作っては動かす、というトライ&エラーがすごく速かったので、もしこれをコードで全部書いていたら、おそらく間に合っていなかったと思います。
梶原:なので、意外とUnityのノウハウがそこそこある人はいるんですけど、これだけ大きな規模のことをやると設計がひっちゃかめっちゃかになりがちなので、そこを今回、Unreal Engine4でやったというのは結果として良かったかなと思いますね。
ー 今後も結構、Unreal Engineはいろいろな案件で使えそうな感じですか。
中村:今まで多かったのはゲーム機だったんですけど、モバイルで使用するのが最近、すごく増えています。多分、今後ゲームだけじゃなくて広告とか、他のアプリとかでも使われていくんじゃないかなと思います。
梶原:僕、前職でインスタレーション案件をUnreal Engine4で結構やっていたのですが、やっぱりアウトプットが良いですよね。ARとか、現実のものをカメラで撮って映して、カメラと全く同じFOVでそこにCGを作るときに、ライティングやマテリアルも調整してあげれば、結構な精度で、もうほとんどそこにある、現実と見分けがつかない。という感じで再現することが出来る。
それは、Unityだとしんどいですね。CGが浮いちゃうので。
チューニングももちろん裏側にあって、絵作りがすごくしやすいので、デザイナーレイヤーがライティングをいじりやすいんですよね。さらにC++をかける人がいれば、コードでどんどん書いちゃえばいい。例えば今回だと、Photonのプラグインがないから自作すればいい、みたいな。
ー 過去にNHKでも、Unreal Engineを使った施策を行ったそうですね。
梶原:前職で実施した案件なのですが、そのときは横30mの巨大スクリーンで、Nvidiaの Flowとか使って、流体シミュレーションをリアルタイムかつリッチな表現で、しかもインタラクティブにやる、というものだったんですけど、その時も結構ギリギリで進めていましたね。メッシュとかもリアルタイム生成して、みたいなことをやっていたんですけど、スケジュールギリギリすぎて、最後ビルドしないでエディターベース走らせてスクリーン表示する、というのをやっていました。Unreal Engine4意外と安定しているねー落ちないねー、って言って、実施期間中はみんなで食堂行ってご飯食べながら見守る、みたいなことをしてました笑
与羽:ビルドしなくてもある程度はいけますよね笑
梶原:そうそう。結果よければOKな、広告のよくないところです笑
ー 最後に、今回をまとめるとどんな感じでしょうか。
中村:反応とかも見ていましたけど、自分が思っていたよりもかなり良い評判というか、レビューとかも書かれていたんですけどすごく楽しんでもらえて、ユーザーの反応も良かったなという印象でした。
いろんなことを割り切って、でもここはちゃんとやろう、というところと、割り切るところとしっかり区切ったおかげで、作業的にも集中して取り組むことが出来たので、そこがうまく行ったのかなとも思いますね。
梶原:今回、超絶短納期だったんですけど、クオリティ高かったですね。何が良かったのかというと、中村さんがいてくださったのが超絶良かったです。多分、僕ら広告業界でUnreal Engine4を使ってゲーム系やるのって、今後もどんどん増えていくと思うんですけど、ノウハウがないので、効率的な作業フローがまだあまりないんです。
だからこうやって一緒に、僕らみたいなところにジョインしていただいて一緒に作れると、クオリティも高くなっていくんじゃないかなと。
ゲームレベルの高いクオリティとか、すごいノウハウとかがあるのを、お客さんとかクライアントの手元に、しかも広告のキャンペーンみたいな形で届けられるようになるというのは、こういう座組みの良いところなのかな、と思いますので。
何が言いたいかというと、今後ともぜひよろしくお願いします!という感じです(笑)