回答:
技術的な理由:
非技術的な理由:
もっとあると思います。これらは私の頭のほんの一部です。お役に立てれば。
なぜなら、利用できるということは、無料ですぐに利用できるということではないからです。
最も単純な形式でもう1つのオペレーティングシステムをサポートするということは、テクニカルサポートを提供するもう1つのプラットフォームを意味します。
サポートするプラットフォームが増える= サポートを提供する必要があるプラットフォームが増える= サポートにより多くの時間を費やす=ゲームの改善に費やす可能性のある作業時間を失う。
プラットフォームのサポートはすべて、ゲームがそのターゲットプラットフォームで十分なプレーヤーベースを獲得できる場合、プラットフォームのサポートを提供するために費やす時間を補うという自信に帰着します。
これまでのところ良い答えがありますが、一番下の行に行きましょう。
Steamの2017年6月のハードウェア調査によると、サンプリングしたユーザーの96.24%は Windowsを使用していました。Windowsユーザーの87.37%は、Windows 10または7、64または32ビットです。OSXバリアントはユーザーの2.95%を占め、Linuxバリアントは合計0.72%です。
時は金なり。市場がニッチで、特にOSXまたはLinuxを対象としない限り、市場の4%未満が時間の価値がある前に、多くのゲームを販売する必要があります。特に、ゲーム開発者は通常、製品機能を完成させるために時間をかけられます。
ここでの他の答えは良いですが、ここでは言及されていませんでした。
私は今この問題を抱えています-私のチームはWindows / Mac向けのUnityで作られたゲームをリリースしようとしています。ゲームがモバイルに対応していない理由について、多くの質問が寄せられています。主に2つの答えがあります。
1)電話はゲームに追いつくほど強力ではありません。アートの忠実度(モデルのポリゴン数を減らす、テクスチャのピクセル数を減らすなど)を減らすことができるかもしれませんが、それだけではありません。携帯電話で実行できるように最適化するには、ほとんどのゲームを書き直す必要があります。試しましたが、1秒あたり約0.5フレームしか得られませんでした。明らかに、プレイできません。
2)入力。ユーザーインターフェイス全体はマウスを使用して設計されており、ゲームの一部は、常にマウスの位置を知ることに依存しています。マウスがどこにあるかを知らずにゲームが機能し、画面上のさまざまな「タッチ」アクションを「マウス」アクションに変換して同じ機能を実現するには、入力メカニズム全体を書き直す必要があります。彼らの答えで言及されたuser3797758のように、これは「マウス」と「タッチ」の入力が同じシステムに送られるように書き直す必要があり、一方のバグは他方に影響を与えず、そのバグの修正他にも影響しません。これには、私のチームが現在利用できるリソースよりも多くのリソースが必要です。
user3797758の回答にも記載されているように、Linuxマシンではパッケージの1つがクラッシュしますが、Windows / Macでは動作するため、Linuxのサポートさえありません。エンジンがクロスプラットフォームであるからといって、それを使用するすべてがそうであるとは限りません。