ゲームエンジン簡単にまとめたので、興味ある方は読んでください。
@hinemosu判断よろしくお願いします。
選定条件
- 複数のプラットフォームで動くこと
- 完成させることができること(中規模開発に耐えられる機能があるか)
- なるべくサポートが長く続くもの
- パフォーマンスが十分出るもの
とりあえずいけそうなエンジン
上記の中でいけそうなものをピックアップ
名称 | ホームページ | 特徴 | 言語 | サポート | 導入事例 |
---|---|---|---|---|---|
Cocos2d-x | http://www.cocos2d-x.org/ | 2006年からある老舗OSS。 昔は日本企業でも使われていたが、大規模開発する際に色々と使いづらく、最近では少数派。 直近で有名なタイトルはクラッシュフィーバー、アナザーエデン。 | C++ | 中国の企業(名前忘れた)で開発を行なっているので、そこまで問題ないと思います。 日本語の情報もそれなりにあります。 | 国内国外問わず多数あり。 ブラウザに関しては中国で実績あり。 |
Unity | https://unity3d.com/jp | 日本ではストアのランキングの半分以上がUnity使っていると思われます。 コンポーネント指向を採用しています。慣れないとわからないのできつい。 それ以外でも | C# | Unity社が開発を行なっているので、問題はなさそう。 日本語情報も豊富。 OSSではないがエンジンの中身のコードは見れるみたいです。 | 国内国外問わず多数あり。 ただ、WebGLでの実績はあまりない。 |
Egret Engine | https://www.egret.com/en/ | 日本では聞いたことないが、中国では有名なゲームエンジンの一つ。 IDE、アニメーションツール、ゲームエンジンが一通り揃っており開発に入りやすそう。 コード自体はいたって普通のC#と印象を受けた。 | C# | 中国の会社で開発しているので、安心。 情報が中国語しかないのが難点。 | 中国を中心に実績あり。 |
Kiwi.js | http://www.kiwijs.org/ | 使ったことないけど、ぱっと見悪くないのでここに追加。 一般的に想像出来るゲームエンジンぽい作り。 jsの方法に則てるので、typescriptとかで堅牢な開発も可能と思われます。 | javascript | 今調べていると途中なのでわからないですが、開発を重視しているみたいで活躍したコミッターをHPのトップに載せているみたいです。 | わからないので要調査。 |
enchant.js | http://enchantjs.com/ja/ | かなり昔からあるウェブゲームエンジン。 DOMを操作してアニメーションを実現している。 | javascript | 二年ほどgithubの更新が滞ってるので、今後更新されることは少なそう 情報はそれなりだし、DOMなので最悪無理やりjsで直接操作もできる | ミニゲームならいくつも作られているが、大規模だと実績はないと思います。 |
phina.js | http://phinajs.com/ | 日本人の元ゲームエンジニアの方が作っているOSSのゲームフレームワークです。 jsにClassがない頃からのフレームワークなので、通常のjsのClassと宣言方法が異なります。 pixi.jsを裏で使えるので、弾幕系も作ることは可能。 作者の方にtwitterで実装要望を出したら対応してくれるいい感じ。 | javascript | OSSだが個人開発なので、どれぐらいの長さでサポートが続くか不明 自らコミッターにもなれるので、何か要望があれば作ってしまえば通りそう 日本語の情報は多い。というより日本語しかない。 | ミニゲームならいくつも作られているが、大規模だと実績はないと思います。 |
create.js | https://createjs.com/ | 基本的にcreate.jsだけで完成させず、用途によってあった他のブラグインを組み合わせて使う場合が多い。 前自分が触った印象だと、canvas apiをオブジェクトで扱いやすいようにラップしている感じでした。 こいつ自身機能が少ないので開発にはそれなりの熟練者が必要そう。 | javascript | かなり昔からあるので大丈夫だと思われます。 | 多くはないがある。 作品は思い出せないので、思い出したら追記する。 ちょっと触った感じパフォーマンス的には問題なさそうでした。 |
pixi.js | http://www.pixijs.com/ | WebGLを使って、canvasに2Dゲームとして出力している。 パフォーマンスはかなりよく、シェダーとかもモリモリでもかなり軽い。 create.jsと同じようにゲームエンジンとしての機能は少ないので、自分で実装したりプラグインの導入が必要。 | javascript | v4まで開発されており、今も活発に開発されています。 | 実績は特に見つかりませんが、アート方面ではいくつも導入例がある。 |
他にもあると思いますが、とりあえずこれくらいにします。
開発での考えうる問題点
イベントの設定方法
スクリプトやツールを使って実現することが多い。
既存のプラグインを流用したり、独自で実装したり状況に応じて最適な方法を選んだほうがいいです。
一から作るとなるとその分時間が取られるし、熟練者でないと厳しい場合があります。
アニメーション
アニメーションは専用ツールかエンジンに備わっているものを使うことになります。
組み込み実装はSDKがあれば楽ですがないと、SDKの開発に技術力がいるのと時間が取られるので注意が必要です。
crodovaの使用に関して
cordovaは簡単に説明すると、ブラウザとhtml類をまとめて一つにアプリにしたものです。
なので、パフォーマンス的にがブラウザと同じになってきます。
そうなると一番ネックになるのがandroid端末。
iosは問題ないですが、androidはかくつきます。
これはなかなか難しく、DeNAが作ったFFRecordKeeperは通常のUIはHTML、アニメーションやエフェクトが多いシーンはOpenGL(つまり端末により近いレイヤーのapiを使ってる)使っています。
かくつきが許容できるレベルかどうかが重要になってきます。
アセット配布方法
webとアプリは根本的に違うので分けて作成しないといけません。
アプリの場合はゲームデータとかを1GBとか丸々入れると思いますが、webだとそうれが出来ないので都度ダウンロードする形になります。
なので、プラットフォームごとにアセットのDLタイミングを調整する必要があります。
その実装を行う必要があります。
ゲームの仕様
元のゲームから一部仕様が変わるとのことだが、何をどう変えるのかわからないので、モック以上の作業が進めにくくなります。
育成システムや戦闘システムはデータ構造全体に影響するので、ある程度、決まっていないと開発が行いづらいと思われます。
モーション・エフェクト・演出できる人才
モーション・エフェクトや演出は意外と手間がかかるので、できそうな人才は早めに集めておきたいです。
私も詳しくは知らないけど、会社では専門職でデザインやイラストとは別れているので、それくらい違うものだと思います。
個人的にエフェクトちゃんと出来る人は少ないと思います。
期間
何よりも気になったのがこれですね。
8月下旬は多分無理です。
クオリティによりますが、ぱびりおんくらいの規模でも最低半年は欲しいです。
規模の大きいゲーム故に手戻り含めての試算が必要だと思います。
ここら辺は見直しが必要かもしれません。
個人的には来年の8月が妥当なラインだと思います。
総評
総合的に考えると個人的にはUnityが一番いいと思います。
crodovaみたいな無理やりアプリ化するのはやっぱりパフォーマンスが落ちるし、知見やライブラリが豊富なゲームエンジンとなるとUnity以外の選択肢はないです。
正直どれもいいゲームエンジンで、特にEgret Engineは個人的にはかなり気にっています。
どれを導入するかは、リード(たぶんひねもすさん?)が決めればいいと思います。
リードの人が一番コード書くし読むので、リードがいいと言えばいいと思います。
先ほども述べたようにどれもいいゲームエンジンです。
本当は実際にミニゲーム作って、色々検証したかったが余裕がなかったのでこれで勘弁を。。。
あと、今見ると誤字脱字多いのですが直すの面倒なのでこのままで。。。意味がわからない場合は質問してください。
情報収集お疲れ様です。
やはりunityですね。webで遊べることには実はそこまでこだわってないんです。
あくまで「プラットフォームに依存しないゲーム」を作るための一手段なのです。
一応こちらで便利なアセット・小技を探ってみました。
とりあえず、
会話イベント用アセット
http://jokerscript.jp/home/download
読み込み画面
https://qiita.com/SARU_KABUTO/items/02d0d13b41e1f94534e1
ガチでやらなくちゃいけないのはゲーム本編ですね。
さすがにアセットは見つからなかった。
unity便利ですよね~
旧アプリのUI再現してた人もunity使ってたんでしたっけ(記憶に自信ナシ)
まったくこういう事に疎いズブの素人なので、あえてバカみたいな質問をしますが、
(すでにご存知だったらすみません)
nabyさんや今度タクティクスを作るitsukiさん、他にもゲームを作っている方が
何を使ってるのか尋ねてみてはどうでしょう?
(ジャンルが違うかもしれないので、参考になるか分かりませんが)
>> 173
NABYさんは今やろうとしているのと同じUnityですね
ITSUKI監督は…
あれはゲーム風にMMDで作っているだけじゃないですかね?見直してみましたけどITSUKI監督はわからないです…普通にゲームを作っているのかもしれない
あといつものアニメはMMDではなく、blenderで全部作っているようです(blenderってそんなことできたのか)
訂正してたら訂正されてた…何を言っているのか(ry
そうなのかぁ。
お返事ありがとうございます。
>> 173
NABY氏もUnityを使用しています
いつき監督は「Blender」という3DCGソフトを使っています
>> 174
MMDじゃないんですよこれが
だから、まんまるふっくらしている感じが出ているんですね。
来年の8月か…
期間を長めに設定して、もしもの場合に前倒しするほうが
精神衛生上はよろしいかな。
どこまでやるか、何をやるかがまだ具体的でない(物量が出せない)状態なのでなんともですが、今年の8月は厳しいですね。
12月ならありそうですが、ここでかけをする意味もないのである程度バッファをとって一年を目処にした方がいいかもしれません。
ゲームは一発では仕様が決まってそのまま完成とは行かず、何回も作り直して作っていくものなので。
こういうののスケジュールは長く取ると終わりませんよ!!
だらけるってより、変なとここだわり始めて収集がつかなくなるんです・・・
キツめに設定して巻きで仕上げて、最後に詰めていったほうがダレないと思います
細かいフェーズごとに分けて期間を設定すればOK
そうですね、全体完成は一年で、機能ごとに締めを作る方法がいいと思います。
例えば
会話パート:8月
戦闘パート:11月
育成パート:2月
全体のつなぎこみ等:5月
みたな感じです。
もっと細かくてもいいと思います。
あとは諦めて機能を削って完成時期を早める方法もあると思います。
正直今のなんでも機能モリモリ状態だと一年でもキツキツです。
地味にメニューがしんどいかも。
図鑑メニュー、フレンズのステータスメニュー、ステージセレクトなどなど
なるほど。
システムと芸術(シナリオ/音楽/背景等)は同じ工程で行くんですかね?しつこい質問で申し訳ない・・・
>> 183
そうなりますね。
分担できるほどの人がいれば!
メニュー用の画像がたくさん必要になりますね…どうやって用意すればよいか…?
作るんですよ!我々は人間なので創造出来るのです!
出来るのです…
なるべく原作に近付けたい気持ちは分かりますが、
削れるところは削った方がいいと思います。
「ステージセレクト」は要らないのでは?
一本道で作ってリリースしておいて、後で追加シナリオをアップするとか・・・
どっちが大変なのか分からない素人意見ですが…
NABYさんもメニューとかUIの制作はしんどそうでした
unityはUIまた別ですからね。
あれも慣れが必要ですね。。。