カレンダー

2018/10
 
   
       

広告

Twitter

記事検索

ランダムボタン

開発中止の危機

by 唐草 [2024/04/18]



 Unityでのプレビューだとゲームは動くのに、ビルドした実行ファイルだとフリーズする。これでは配信できない。プレビューとビルドで挙動が違うことは何度も経験がある。でも、ここまで致命的な違いは初めてだ。
 前日にも似たことが起きていた。それはプレビューが無限ループになるものだった。そのままフリーズするのでエラーは表示されず、原因は不明。エラーのたびにUnityを再起動するので多くの時間を要した。エラーと再起動のストレスでぼくのメンタルはボロボロになっていた。
 それでもプレビューでのエラーなので、デバッグツールを駆使してプログラムを1行ずつ進める泥臭いやり方で問題を特定した。
 その結果に安心して眠りについた。
 だが、早合点だった。昨日の修正はプレビューで動くようにしただけ。ビルドした実行ファイルは、デジャブのように昨日と同じエラーを発症した。
 プレビューならデバッグツールが使えるが、実行ファイルではそうもいかない。エラー表示も関数名までで問題の起きた行番号は出ない。それは住所を頼りに目的地に行こうとしていたのに、ざっくり「駅の近く」と伝えられるようなもの。
 昨晩同様泥臭く1行ずつ確認するしかない。だが、今回は確認のたびにビルドが必要。ぼくのゲームは小さいので1分でビルドできるが、作業の大半はビルド待ちになる。
 何度ビルドしても原因は分からず時間だけがいたずらに過ぎていく。連日の致命的なエラーのせいでストレスは限界に達しつつあったし、ビルドの1分が永遠のように感じられた。
 次第にプロジェクトを巻き戻すしか無いと思うようになってきた。でも、どこまで巻き戻せばいいか分からない。ついに開発は完全に失敗したと絶望を感じ始めた。
 ビルドを繰り返すこと4時間。胃に穴が開き始めた頃、問題の核心部にたどり着いた。ぼくがC#のstatic修飾子の使い方を誤っていたのが原因。どうしてプレビューが動くのか理解できないエラーだった。
 人間が最もストレスを感じるのは仕事が進まないときと聞いたことがあるが、まさにその通りだ。ゲームが動かない間、ぼくは生きる気力を失っていた。