【Unity】UniRx の復習
- UniRxの概要
- UniRxの覚え方
- どういうものか
- Subject
- ReactiveProperty
- OnTrriger
- 処理を停止するオペレータ
- AddTo(this)
- TakeUntilDestroy(this)
- サンプル
- オペレータ逆引き
【Unity】UniTask の復習
- UniTaskの概要
- await と Task
- async と Task
- UniTaskの補足
- UniTaskのネスト
【Unity】AddressableAssetSystemの復習
- AddressableAssetSystem の概要
- メモリ管理の仕組み
- LoadAssetAsync と InstantiateAsync の違い
- RetroSpriteAnimator.cs
- UniTask との連携
- 他メモ
【Unity】AddressableAssetで詰まったところメモ
- PreloadDependenciesについて
【ADX2】CriAtomCraftでプレビュー再生できなくなる問題の改善方法
さいきんUnity勉強するついでにADX2もやろうと思いまして、ADX2LEを落として組み込もうとしたのですけども。
いやまあ、もともと仕事でちょっとADX2使ってたので「簡単にいけるだろ~」と思って油断してたら…
AtomCraftのプレビュー再生でまさかの事態。「プレビュープロセスへの接続に失敗しました」とは…? 最初の一発再生したあと2度め以降はこの表示が出てきて使えないんですね。
原因
いろいろ試行錯誤した結果、結論としては「AVGの挙動監視シールドに引っかかった」でした。アンチウイルスのせいか~!
改善方法
AtomCraftはプレビュー再生に「AtomPreviewer_PC.exe」を使ってるのですが、これをAVGが強制隔離して使えなくしてたようなのですね。1回使用した瞬間に「cri\tools\criatomex」フォルダから抹消されます。ですので、「メニュー」→「設定」→「一般」→「例外」でAtomCraft等が配置された「cri\tools\criatomex」を例外に追加することで動作するようになります。
wavも再生できなくなる
ちなみに原音再生もaifは正常に再生できるのですが、例外追加以前はwavも再生できません。なので、原音再生されないようなら、たぶんこのあたりに問題があるかもです。
【雑記】RPGを個人で作るための4つのノウハウ(+アドバイス10点)
箱セレで経験した問題を踏まえて、RPG個人開発において「これだけはやってはいけない」「これをやるならこうしよう」という要素をザックリまとめておきます。すべて僕の失敗経験を通したノウハウなので、これからゲームを作る人、今作ってる人も、よかったら参考にして頂けたら幸いです。
目次
1.マップ作りに凝りすぎるな
RPGツクールやウディタで作るなら、デフォルト素材やフリー素材、販売素材でなんとかしましょう。確かに見た目は量産型になるかもしれませんが、そこにこだわると、作業量が倍々に積み重なって、終わらなくなります。僕の場合はボツ・試作込みで最低でも40000パーツ作りました。
もしオリジナルのゲーム画面にこだわりたいなら以下を守ること。
- レイヤーを使わない。1レイヤー範囲内で作れる仕様にすること。
- マップを絵で表現するならとにかく流用できる設計にすること。
- ドット絵でもバリエーションを作らず、流用できる設計にすること。
2.人形劇はコスパが悪い
なるべく紙芝居にしましょう。キャラを動かすのはデバッグでかなり苦労します。いちいち計算しながら何十個、何百個とイベントを作っていくのはキツイです。1イベント作るのに何時間かかるのだろう?
3.パラメータ管理は適当にやるな
自力で入力する要素を極力排除すること。
敵モンスターを100体、200体と作る段階でデータ的な個性付けをするのに、基準を設けましょう。
最低でも、基本パラメータを設計すること。何百体とパラメータを入力し続けるのは苦痛ですし、バランス調整する際、ある程度全体をオートメーション的に調整できる設計にしておかないと、いちいち関連する値を数百体ぶん書き換えることになります。
敵の行動パターンも同様。設計をある程度しておかないと、何百パターン、何千パターンと自力で書き込んでデバッグすることなります。
解決策は、個性パターンをあらかじめ設計して、敵の強さにあてはめて、その上から少し人間味をつけるといった調整をつけることかなと、現時点は考えています。
4.作り手の人的リソースは一番重要な箇所にだけかけろ
コンシューマRPGに出てくる要素を一人で作ろうとするのは避けるべきです。あれらは複数人が同時に並列で作業することで製作スピードを上げているので、一人で直列作業しようとすると、つまり作業負担が倍々ゲームになっていきます。
とにかく設計段階で、あらゆる要素を自動化しましょう。PCが計算して結果を出せる事項は、ぜんぶプログラムに任せましょう。
それができないなら、一度事前にバランスを取って、決め打ちして作りましょう。人間は絶対にやらなきゃいけないことだけやればいい。
5.今後ゲームを作りたい人向けのアドバイス
- 一人で作るなら、とにかく一点突破型を作ること
- 「作ってます」と公に発言するのは、動くゲームを見せられるようになってから
- 個人制作ゲームは短編で十分に需要を満たせる
- お金をかけるならキャラクターイラスト
- 皆が「おおっ」と言うのはイラスト。見える要素が一番伝わりやすい
- コンテスト向けのゲームは、ストーリーとキャラクターに集中すること
- どこに投下するにしろ、システム重視のゲームはウケが悪い
- リアルイベント展示では、アクションゲームやSTGのほうがウケがいい
- 動画映えするポイントと、静止画映えするポイントを意図的に作ること
- 本当に作りたいものを作るなら、生活に負担をかけない範囲で、趣味でやろう
6.まとめ
割と周囲から心配されつつ開発を続けてきましたが、実は17年8月に操業資金が底をついて、廃業寸前の地獄を味わいました。今は運良く様々な方に助けて頂いて完全回復しているのですが、やっぱり精神的にかなりキツイというか、必死になりすぎて周りが見えなくなってしまい、よりマイナス方向に落ちていくので、余裕をもってやるのが良いです。
そのためには(良い意味で)手を抜くこと。がんばりすぎないこと。やりたいことだけをゲームにすること。要素を増やさないこと。一極集中して、短期間で仕上げること。
時間=お金です。とにかく時間をかければかけるほどキツくなっていくので、手早く仕上げられる設計をあらかじめ考えて、ゲームを作りましょう。それに尽きます。
僕自身も、次はもっと簡単に作れるものを作る予定です。やりたいこと以外は全部自動化しようかなーと。そう考えてます。
一言で表せば、「無理すんな!」というわけなのでありましたとさ。
【雑記】やっとゲームをリリースできました、という苦労話
長かった、4~5年作ってた気がする。まだ終わってはいないけど。作ろうと志して10年かかりました。ちなみに挫折履歴とやりたかったことは下記。
挫折履歴
- 2008年 プログラマと共同制作、連絡が取れなくなって挫折
- 2009年 プログラマと共同制作、最終的にうやむやになって挫折
- 同年 他人と組むのを諦めてツクールVXで組み始めて、理解できなくて挫折
- 2011年 会社を辞めて独立、ツクールVXAで組み始める
- 2012年 ↑スクリプトの理解度の問題で挫折
- 同年 ウディタで組み直し始める
- 2014年 ついに箱庭セレナータ体験版までこぎつける
- 2018年 悪戦苦闘の末、やっと本編ひとあそびverリリース
やりたかったこと
- 3DダンジョンRPG作りたかったのに、いつのまにか2DRPGを作ってた
- 2Dやるなら本格的な昔ながらのRPGが作りたい
- でも、見た目は今風な感じにしたい、キャラ絵とか
- 女性にも遊んでもらえるような見た目にしたい
- レベル上げしてもしなくてもクリアできて、RTAもできるやつにしたい
- ジョブチェンジ、スキルシステムを自分なりに読み解いたものにしたい
- 何度も遊べる作りにしたい
苦労話
音楽の仕事していて、どうしてもミスマッチ感をかんじていたというか、他の人とのズレをすごく感じてました。
音楽ってゲーム開発とはだいぶ切り離された独立した分野で、最終的には生演奏・ライブ・スタジオで収録なんかの、完全に音楽音楽した方向に行かざるを得なかった。
みながそっち方面にどんどん進出していくなか、「あれっ、僕はゲームが作りたかったんだけどなぁ」「これ、違うな…」っていう思いがすごく強くなっていって。求められることとやりたいことのズレをどんどん強く感じるようになっていったのでした。
そのズレを解消するために、開発人数の少なく、より深く介入しやすい個人制作ゲームの仕事を受けたりしつつ、お仕事で得た収入をゲーム制作に投入していった、というのが独立してからの自分なのでありました。
かといって投資者からお金を募って作ると、僕のゲームではなくなる。お金を出した人が一番偉いし、権利はそこへ行ってしまう。僕が考えたものなのに僕が関われなくなる可能性が1%でもあるなら、それはイヤなので。プログラマと組んだら、僕自身の成長がない。プログラマがいなくなれば、僕はゲームが作れなくなる。
なので、当時30歳っていう微妙な年齢ですけども、ゼロからやり直すことにしました。つまり「自分でも扱えるエンジンを探して」「一人で作る」。
XNA、Flash、C++、C#、いろいろ探りましたけど、プログラムのプの字もわからない僕には全然ダメでしたね。ツクールもスクリプトいじりまで行くと、途端にわからなくなる。
けっきょく永い挫折を経て、ウディタに辿り着きました。これなら動かせると。
あとは実際にドット絵を自分で打って、UIを手探りで作ってを繰り返しながら、どうしても作れないイラスト周り、エフェクトを他の方に手伝って頂くことにしました。
エンジン部を(ゲームが作りたい奴が)自分でいじれるなら、ゲームは完成できる。
永らく抱えてたミスマッチ感を、これでようやく解消できた気がします。音楽の仕事は音楽の仕事。ゲーム開発はゲーム開発として切り離すことで、ピントをあわせることができた。
思ったこと
めっちゃ金がかかる。生活費です。ゲームを作ってる間は無収入なので。個人制作はちびちびとしか開発が進まない。結果、時間が半端なくかかる。一時期、貯金が底をついて、こいつはまずいな…と思ったこともありました。お金がないときの精神的重圧はやばいです。
働きながらゲームを作るのは、かなりしんどいですね。
今後の目標
これからやるべきことは、すこしでもいいからゲームで収入を得て、ゲームを作りやすくすることかなぁ…と。
あと、ゲームの開発速度を上げること。時間がかかりすぎるのはキツイ。半年にひとつくらいのペースで出せるくらいのノウハウを作りたい。時間かかかると、お金もかかるので。
だいたいそんな感じですね。ひとまず、今思ってることを記録に残しておきます。