質問: ### 前提・実現したいこと 今MacPCでUnityを用いてゲームを作っていて、exe形式での書き出しをしています。 ### 発生している問題・エラーメッセージ ``` しかしexeにしたは良いものの、なぜか敵に一切の反応を示しません。敵自体は追いかけてはくるのですが触れても本来起こるべきイベントなどが一切起こらないのです。 敵以外のオブジェクトにはちゃんと反応しますし、exe書き出しをする前、つまりUnity上では一切問題なく動きます。 以前知人がMacで開発したのちにexeに書き出したところ同様に原因がわからない不具合が発生していました。 Macはexe形式と相性が悪いと言ったようなことがあるのでしょうか? ``` ### 該当のソースコード ``` Unity上では一切問題なく動くのでコードがおかしいということはないように思われます。 ``` ### 試したこと 再起動してやり直したり等は何度かしました。 ### 補足情報(言語/FW/ツール等のバージョンなど) Unity;5.6 使用言語;C# 先月からゲーム製作を始めた初心者で、もともとPCがあまり得意でないのでわかりやすく教えていただけると幸いです。
回答: エディタ上で動いても実機で動かないのは結構起こります。 原因としてざっくり挙げるだけでも以下が考えられます。 * Unity上では動くが実機上では動かないコードを書いている(環境依存するプラグインを使っている等) * exeにする段階で何らかのエラーが起こっている(コンパイルエラー) * exeは正常だが動作環境が合わない(windows用のファイルをMacで開こうとしている等) * Unity上と実機上で画面サイズが違っていて、画面サイズ依存の当たり判定が発生しない 問題のソースコードだけでなく、他のプロジェクト内全てを疑う必要があります。 「実機上とUnity上で違う所は何か」をまずは探しましょう。 「簡単なプログラムに置き換えてみる」のも有効です。 (例えば今回なら「敵が触れたら画面を赤くする」という処理を入れて、「敵が触れた処理が起こっていないのか」「敵が触れた処理は起こっているが、その後の処理で失敗しているのか」を切り分けます。それをどんどん続けて問題箇所を絞り込みます。) ちなみに「exe=app」と読み替えていたのですが、普通Mac用に書き出したらappファイルが出来ますよね? Mac版として書き出されているかも確認してみてください。