ようこそ ゲスト さん、新規登録(無料)して気になる疑問を解決しませんか?

質問

質問者:noname#60160 どうしてAeroの動作環境はDIRECTX9以降なの
困り度:
  • 暇なときにでも
リヌックスだともっと昔のオンボードパソコンで動きます。
DX7で動くFPSゲームでCODと言うのもありました。
AEROはFPSゲームより重いということなんですか?
MSソフトならもっと軽快に動くような仕組みを作れると思うんですが何でDX8.1以前は切られたんでしょうか?
質問投稿日時:08/05/17 11:52
質問番号:4028674
この質問に対する回答は締め切られました。
最新から表示回答順に表示良回答のみ表示

回答

良回答20pt

回答者:parts 一言で言えば、Aero Glassに必要なのは、Programmable Shader Model2,0と呼ばれる座標演算技術です。だからです。

Q/MSソフトならもっと軽快に動くような仕組みを作れると思うんですが何でDX8.1以前は切られたんでしょうか?

A/技術の開発というのは、ユーザーが必要だから作られるのではなく、作られた機能をユーザーが必要だと感じるように設計されることが前提にありますからね。そうしないと買い換え重要なないですしね。
また、ソフトウェアやハードウェアが今後どう変化するかを見れば必要性が分かるようになります。

昔DirectXが登場してから2年ほどのところでしょうか、マイクロソフトがデスクトップを3Dにする概念を研究し21世紀初頭に製品化を目指すとしていました。いわゆるDirectX7,0をベースにHardwareT&Lと呼ばれる固定シェーダーを使うことで3Dを表現するというものでしたが、最終的に中止されています。当時の最先端技術で搭載する予定でした。
WindowsXPではGDIを拡張し、デスクトップをLunaに変更しましたがそれでも3D化はしませんでした。

Vistaは、時間こそ掛かりましたが最先端に近い技術を搭載することを決めました。その理由は、Shader ModelがCPUの負荷を分散できると判断したからと、Unified-Shader(ユニファイドシェーダー/統合型陰影処理)がこれからの主流になり、Vistaの技術ベースを今後のOSの基本にしたいと考えているからでしょう。
要は、今後数世代はVistaをベースにUIのAPI処理は発展させようと考えているのです。

DirectX8世代では、ShaderModelはまだ貧弱で、VertexとPixelの2つのShader Engineが搭載されていました。また、プログラミング記述も2つのShaderに別のの記述が必要でした。さらに、DX8の主流はまだHardwareT&Lで1つの決まった光源を処理するものであり、物理演算で座標を出し光源を自由にプログラム出来るShaderは始まりの第一歩だったのです。

DX9ではHigh Level Shader Languageに対応し、この2つのエンジンでの処理を1つにまとめてプログラミング出来るようにしたのです。要はソフトウェアの開発が容易になったと言えます。基本的にはHardwareT&Lにも対応可能ですが遺産です。

その次のDX10ではShader4,0とUnified-Shaderにより、ハードウェアとしても2つに別れていたShaderを1つに統合し実質VertexShaderがPixelShaderに統合され、必要な時に一部のShaderをVertexとして動作させます。

要は、DirectX9が大きな転換点となり、プログラミングもグラフィックスハードウェアも大きく変わったのです。そして、そのタイミングで、ShaderがCPUで処理していた座標演算の多くを肩代わりするようになったのです。結果的にグラフィックスに必要な性能は高くなりましたが、性能を満たしていれば、CPUの負荷が減り性能を安定させることに繋がっています。

そして、今後はこれがあることが当たり前になります。

尚、AeroGlassがFPSより重いということかどうかは別の問題です。
DX7とDX9の技術では既にプログラミングが異なり、技術も違うので比較できる代物ではないのです。COD(CALL OF DUTYかな)が当時の最先端を使ったというならば、Aeroは2007年の登場の段階では最先端の技術ベースではないのです。(Vista登場当時の最先端はShader3,0でその数ヶ月後に4,0のDirectX10が登場しています)
種類:回答
どんな人:専門家
自信:自信あり
回答日時:08/05/17 15:46
回答番号:No.2
この回答へのお礼詳しくありがとうございます!

回答

良回答10pt

回答者:PXU10652  近年ビデオカードの性能が著しく高くなったので、描画処理はすべてビデオカードに任せ、色々な制御が出来る最新のDirectXを使用することにしたからだと思います。
 AEROは、3Dゲームより処理が重いわけではないのですが、最新のDirectXを使用することにしたので、4,5年前のPCには辛くて、最新のビデオカードが必要になっています。
 DirectXの最新は10版台で、Vistaが出たときは9版台が最新でした。
これはビデオカードを制御するための言語の一種なので、Vistaではその時点の最新を選択しただけでしょう。また、XPでもSP2以降しかサポートしていないように、MSとしてはバージョンが複数有る場合は、古いバージョンのソフトをいつまでもサポートし続けられないので、どこかで線引きをせざるを得ないのでしょう。
 Vistaはメモリも大量に必要ですので、基本的にはPCの買い替えが必要で、それまではXPで我慢というのが、一般的な判断じゃないでしょうか?
種類:回答
どんな人:専門家
自信:参考意見
回答日時:08/05/17 12:41
回答番号:No.1
この回答へのお礼ありがとうございます!
最新から表示回答順に表示良回答のみ表示