新しいグラフィック プロジェクトの開始を考えていて、Java を使用したいと考えています。Java には、関連するすべての GL 機能のラッパーがありますが、まともな GL ドライバーを実際にインストールしている人は、カジュアル ユーザーを含めてどれだけいるのでしょうか。まともとは、ある程度安定しており、かなり新しいことを意味します (2.0 に付属する GLSL サポートは素晴らしいですが、GL 1.5 サポートはおそらくそうでしょう)。Java でも DirectX を使用できましたが、私はそれが大嫌いで、このプロジェクトは「楽しい」はずです。また、少なくとも GL のほぼクロスプラットフォーム性が気に入っています。では、GL アプリを実行するためのドライバーを持っている Windows ユーザーの割合に関する非架空の統計を知っている人はいますか?
6 に答える
Steam ハードウェア調査は、ゲーマーが何を持っているかについての情報を提供する最良かつ最も詳細な情報源です。一般人口の正確な統計を入手するのは難しくなります。代わりに、グラフィックス ハードウェアがどれだけ新しいものであるかという観点からこれを確認する必要があります。たとえば、R300 シリーズ (Radeon 9550+) 以降の ATI チップは OpenGL 2.0 をサポートしています。NVidia 側では、GeForce 6000+ シリーズのチップはすべて OpenGL 2.0 をサポートし、その前身である FX シリーズは OpenGL 2.0 をほぼサポートしていました。R300 シリーズと FX シリーズはどちらも 2002 年に導入されたので、ターゲット市場のどの部分が 2003 年以降の PC を使用しているかがわかれば、OpenGL 2.0 のサポートが PC を使用しているユーザーの間でどの程度普及しているかがよくわかります。ディスクリートグラフィック。
統合グラフィックス (市場の最大のセグメントですが、あらゆる種類のグラフィックスに真剣に取り組んでいる人には特に一般的ではありません) をサポートしたい場合、ユーザーは OpenGL 2.0 機能のハードウェア アクセラレーションのために少なくとも GMA X3000 を必要とします。つまり、システムは 2006 年以降のものである必要があります。
他のオペレーティング システムでのサポートに関心がある場合、Intel Mac は、ソフトウェア フォールバックとハードウェア アクセラレーションを備えた OpenGL 2.0 をサポートします。Linux では、Mesa 7 以降 (2007 年 6 月以降) を搭載したシステムは、OpenGL 2.0 ソフトウェア レンダリングをサポートします。ハードウェア アクセラレーションの信頼性は低くなりますが、R300 以降の ATI チップ用のまともなオープン ソース ドライバーがあります。
最近のすべてのビデオ カードは OpenGL をサポートしています...Java ランタイムを備えた Windows ボックスがいくつあるのか疑問に思わないでしょうか。
思い出すと、Windows XP は最初から 1.1 をサポートしています。Vista はこれを 1.5 にアップグレードします。したがって、少なくともそれらを絶対的な最小値として数えることができます.
それとは別に、ほぼすべてのベンダーの GPU ドライバーは、少なくとも2.0 をサポートしています。
しかし、もし私があなたなら、DirectX を再考します。何が嫌いなのかわかりませんが、いくつかの利点があります。ツールのサポートは非常に優れており (つまり、利用可能なツールがあります。PIX は驚くべきものにほかなりません)、API は最新であり、よく設計されています。とにかくこれは Windows に限定されており、クロスプラットフォームはあまり重要ではありません。(一方、もちろん、クロスプラットフォーム機能が必要な場合は、DirectX が他に何を提供できるかは問題ではなく、その 1 つのキラー機能を提供することはありません)
Windows XP には OpenGL 1.1 が付属しています (かなり遅いですが)。Windows Vista には OpenGL 1.1 も付属しています (ただし、一部の特殊なアプリケーションでは、D3D の上に OpenGL 1.4 エミュレーターがあります)。
Windows にグラフィックス ドライバーをインストールすると、より多くの OpenGL バージョンがインストールされます。OpenGL 1.5 は、おおよそ「DX9 シェーダー モデル 2.0」対応のハードウェアです。そのようなハードウェアを搭載したマシンの数は、ターゲット市場によって異なります。トラディショナル/ハードコア ゲーム スペースでは、ほぼすべてのゲームがそうなります ( Steam ハードウェア調査を参照)。
よりカジュアル/小規模なゲーム スペースでは、非常に多くのマシンがはるかに古いハードウェアを使用しています ( Unity Hardware Statsを参照してください- 2009 年第 1 四半期のほぼ 30% が「DX9 シェーダー モデル 2.0」より古い)。また、その領域の多くのマシンにはカスタム ドライバーがありません。Windows に同梱されているディスプレイ ドライバを使用します (GL 1.1 以外は提供しません)。繰り返しになりますが、 Unity Hardware Statsを参照してください。最も一般的なドライバー バージョンは、Windows に付属するものです。
安定性に関しては、OpenGL の代わりに Windows で D3D9 を使用することを強くお勧めします。ドライバーの品質は、D3D9 の方がはるかに優れています (ドライバー内でのクラッシュの減少、不適切なレンダリングの減少、パフォーマンスの向上など)。
ほぼすべての人が何らかの形で OpenGL をサポートしています。経験上、ATI や特に Intel ハードウェアを扱う場合、関連する実際のドライバーは非常に貧弱である可能性があることが示されていますが、前述のバグにもかかわらず、少なくとも動作します。Windows は、組み込みの 1.1 (XP 以前) または 1.4 (Vista 以降) の実装にフォールバックできます。うまくいきませんが、うまくいきます。
すべての Windows ユーザーがOpenGLをある程度サポートしていると言えます。最新バージョンは通常、Vista ユーザー、ゲーマー、および開発者向けに予約されています。