OpenGLはDirectXより表示精度が高いのでCG,CAD等で使われる?

最終更新日 2019年10月11日

DirectX はリアルタイム性重視、OpenGL は正確な表示重視なのか

新連載-語りたい3D系ユーザーのためのOpenGL考察1 には、以下のとおり書かれています。(この記事は1999年秋号の記事)
しかし,見慣れてくればわかると思いますが,OpenGLに比べDirect3Dのほうが作り込みにもよりますが大雑把な表示であることに気が付くと思います.Direct3Dは基本的にゲーム用ですから厳密な表示精度は必要なく,それよりも,リアルタイム性に重きが置かれています.
 ですから,残念ながら,きわどい位置でポリゴンが交差した場合など,処理が正確でない場合があります.けれども,1秒間に30コマ近くもゲーム用の画像が生成されれば,それをマジマジと確認できる人はよほど動体視力の優れた人といえるでしょう.
 もう一方のOpenGLはこれに比べてリアルタイム性は低いものの,処理をはしょることなく正確に表示してくれます.

(略)

 もともとGLはUNIXワークステーションに搭載されていたため,CGはもちろんのこと,CAD(*1)やCAM,CAEといった高精度エンジニアリングアプリケーション向けに設計されています.ですから,その表示は常に正確さを要求されていたのです.たとえば,高精度エンジニアリングアプリケーションですから建設設計の現場などで利用されたりするわけです.100階建のビル設計用の表示が,ゲーム画面のようにラフだったら恐いと思いませんか?
Direct3D は、DirectX に含まれています。

GL(Graphic Library)とは、Silicon Graphics 社(記事公開時点では SGI 社)のワークステーションに搭載されていた C 言語 API 群です。

GL から SGI ワークステーションの機種依存部分を取り除いたバージョンが OpenGL です。

OpenGL は DirectX より表示精度が高く、CG や CAD 等では表示精度の高さが求められますので、CG や CAD 等のアプリケーションでは OpenGL が使われているようです。

DirectX は画面表示速度重視、OpenGL は表示精度重視なのか

鉄道模型シミュレーター - TOP には、以下のとおり書かれています。(この記事には「現時点(2002年7月)では、〜」と書かれている部分がある)
DirectXは、高速な画面表示、強力なサウンド、ネットワーク機能などを実現するシステムで、DirectXを土台にしてゲームが作成されます。

(略)

OpenGLは、3Dビジュアライゼーション向けのシステムで「精度」を優先して設計されています。
DirectX は画面表示速度が重視されており、OpenGL は表示精度が重視されているようです。

OpenGL と DirectX の表示精度の差異はほとんどなくなったのか

OpenGL - Wikipedia には、以下のとおり書かれています。
仕様が公開されてから暫くの間は、DirectXと比較した場合に、ポリゴン数を稼いで高精度なモデル描画を行うことは得意だが、ゲーム用のエフェクト処理が貧弱であった。そのため、利用者からはCADや3次元可視化等の業務用に強いという見方がなされていた[要出典]。しかし、OpenGL 4.0のリリース以降はGPUの進化に合わせたOpenGL APIの対応が進み、主要な機能に関しては、OpenGL 4.3以降とDirectX 11 (Direct3D 11) 以降との差異はほとんど無くなっている。
OpenGL 4.3 がリリースされたのは2012年、DirectX 11 がリリースされたのは2009年です。昔は OpenGL と DirectX の表示精度等に差異がありましたが、その差異はほとんどなくなったようです。

DirectX の表示精度が、OpenGL に追いついてきたと考えられます。

CG,CAD 等で OpenGL だけではなく DirectX も使われるようになったのか

Microsoft DirectX - Wikipedia には、以下のとおり書かれています。(記事引用部分がいつ頃から当てはまるのかは不明)
DirectXはその出自から、主にWindows用ゲームの分野で使用されてきたが、Direct3Dに関しては同環境における標準的な3DグラフィックAPIとしても用いられるようになり、ゲームに限らない一般的な3DアプリケーションやOSのグラフィカルシェル環境にまで用いられるようになった[78]。

(略)

一方のOpenGLは、歴史的および機能的な理由から、3DCGの製作工程やCAD、データ可視化などの用途に、グラフィックワークステーションやEWS等のプロフェッショナルな分野で使用されてきた。またパーソナルユーザー向けの3Dデスクトップ環境において標準的な描画APIとしても用いられており、これらの環境では3DビデオゲームのグラフィックAPIとしても標準的な立場にある。このように、両者をその用途によって明確に区別することは困難となりつつある。
CG,CAD 等のアプリケーションでは OpenGL から DirectX へ移行が進んだ様子が見られ、例えば CG,CAD 等のアプリケーションの動作環境を見ると OpenGL の記述がなくなり DirectX のみ記述されるようになったことがあります。

Inventor 2013にQuadroは必要? - CAD・DTP 解決済み| 【OKWAVE】 には、以下のとおり書かれています。(このコメントの投稿年月日は2013年1月23日)
そもそもDirectX自体は当初、OpenGLほどの精度を保てなかったためにCADへの採用が少なかっただけで、現在のDirectXは決して精度で劣るものではありません。OpenGLは昔から使われ、CAD系でもノウハウがありますから良く使われますが、現在、DirectXとOpenGL両方採用しているソフトも多いです。
DirectX の表示精度が OpenGL に追いつき、CAD のアプリケーションでは DirectX の利用が増えたようです。CG のアプリケーションでも、同様の理由で DirectX の利用が増えたと考えられます。


キャンペーン情報
マウスコンピューター
冬のボーナスセール icon
期間限定で大幅値引き!最大60,000円OFF!!(一部モデルのみ)
(11月20日迄)
DELL
・PRE-BLACK FRIDAYセール
Office付き秋の感謝モデルほか、デスクトップ製品がクーポンで最大18%Off
(キャンペーン実施中)
ドスパラ
・最大20%還元 冬のボーナスセール
特価パソコンをはじめ、お買得なパソコンパーツ、周辺機器を多数ご用意
(11月28日迄)
パソコン工房
・Windows 10乗り換え応援セール×総額3億円分早い者勝ち!
BTOパソコンやPCパーツ・周辺機器などがお得な価格
(11月26日迄)