Blizzardは、ゲームでMac OSとWindowsをどのようにサポートしていますか?[閉まっている]


22

私は常に、Direct X for Windowsを使用することが、今日のグラフィックスでゲームを作成するための最も強力で簡単かつ最新の方法であると常に考えてきました。Windowsのみであることを知っているので、他のプラットフォームで似たようなものを作るのはかなり難しいと思います。Mac OS、正確には。しかし、BlizzardはどうにかしてMac OS用のStarcraft 2を提供し、Diablo 3もMacで利用できるようになります。

私が興味を持っているのは、次の情報です。

  • ゲームエンジンに使用している技術は何ですか?
  • 両方のゲーム(Starcraft 2とDiablo 3)に1つのエンジンを使用していますか、それとも各ゲームのカスタムエンジンを開発していますか?
  • Mac OSサポートに時間とお金の面で何を払っていますか?


1
「このゲームはどのように作られたのか」または「このゲームはどうやってそれをしたのか」という質問をサポートしていないので、この質問をトピック外として終了することに投票しています。そのような質問はほとんど推測的なものであり、建設的なものではありません。通常、質問を編集して「この機能はどうすればよいのでしょうか。この質問は古すぎて、そのような編集は建設的ではありません。」
Gnemlock

回答:


17

ブリザードは非常にカスタムテクノロジー主導です。記事へのリンクはありませんが、マルチプラットフォームの互換性と後方互換性の両方のために、ゲームごとに数千のカスタムシェーダーを開発していることを覚えています。

マルチプラットフォームのサポートは新しいものではありません。多数のソフトウェアがLinux、Mac OS、およびWindowsをサポートしています。上記で述べたように、重要な部分はプラットフォーム固有のものから抽象化することです。

現代のゲームエンジンはマルチプラットフォームを処理し、多くはプラットフォームに応じてOpenGLとDirectXを切り替えることができます。

Blizzardは、ほとんどのプロの大規模開発者と同様、C ++の家です。ただし、S.gfxで述べたように、簡単なソリューションを探している場合は、jMonkeyEngineやLWJGLなど、C ++以外のソリューションがたくさんあります。

C ++側からは、GlutとGluを使用して、OpenGLを使用しながら異なるオペレーティングシステムを簡単に処理したり、特定のOS呼び出し用に独自の抽象化を記述したりできます。

箇条書きにもっと具体的に答えるには:

ゲームエンジンに使用しているテクノロジーは何ですか? ブリザードはおそらく言うだろう。ただし、エンジンがC ++で記述されており、OpenGLまたはOpenGLとDirectXを使用していることを確認できます。OpenGLはWindows上で実行されることを忘れないでください。

彼らは両方のゲーム(スタークラフト2とディアブロ3)に1つのエンジンを使用していますか?または、各ゲームのカスタムを開発しますか? Blizzardは複数のエンジンを維持することが知られています。Diablo 3は、最初からWoWのコードの分岐点だったと思います。しかし、プロジェクトが終了すると、WoWのようなものではないことを確信できます。Blizzardは、プロジェクトごとに大量のコードを書くことを恐れている会社ではありません。

Mac OSサポートの時間とお金の面で彼らは何を払っていますか? 正しく行われていれば、Mac OSのサポートが「あまりにも」大きなコストになってはいけません。誰でも推測できます。ブリザードは、私が言ったように、カスタムシェーダーを作成する傾向があるため、すべてが「適切」に見えます。そのため、他の家が支払うよりも多くなる可能性があります。


ありがとう、私はあなたの答えが私が探していたものに最も近いと思います。私は一般的なマルチプラットフォーム開発にかなり精通していますが、Blizzardがそれをどのように行うかについての情報が欲しいだけです。開発プロセスに関する追加情報へのリンクを投稿していただければ幸いです。
11

9

DirectXとOpenGLの上に抽象レイヤーを提供するグラフィックエンジンがあります(例としてOgre3Dを使用してください)。そのため、開発者はフレームワークを使用するだけで、基盤となるGPU-APIを気にする必要はありません。シェーダーなどの特別なものはHLSL および GLSLで記述する必要がありますが、両方のAPIを実行/コンパイルできる高レベルのシェーダー言語もあります。

私の想定では、Blizzardが使用する(独自に作成した)エンジンは、基になるグラフィックスAPIを簡単に交換できる抽象化レイヤーも提供するため、Macポート用にすべてのグラフィックスコードを書き換える必要はありません。


2

私は彼らが実際に何を使用しているのか確信が持てません(それぞれに強力な解決策があるはずです)。おそらくすでに実証済みで使用されているゲームエンジンは、そのプラットフォームでゲームを正常にリリースするか、独自のカスタムソリューションを展開しています。しかし、私にとっては、OpenGL、シェーダーなどだと思います。あなたがインディの開発者である場合、または商用ゲームを行うことを計画している場合(AAAがない場合)、jMonkeyEngine 3は非常に優れた無料のソリューションです。Javaベースであるため、OSXに含まれるJRE(非常に最新のjreを使用していない場合はおそらく機能をカットする)に信頼を展開するか、利用可能な無料または商用ソリューション。OSXや他のプラットフォームにコンパイルする他のエンジンがたくさんありますが、OSXや他のプラットフォーム向けに出力される「AAA」ではありません。C4 Engineなど。または、他のオープンソースまたは商用のマルチプラットフォームエンジンを使用している場合は、InstallBuilderなどのクロスプラットフォームインストーラーを使用する必要があります。

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.