DirectXViewerについて

このQ&Aのポイント
  • DirectXのSDKをインストールした際に付属している「DirectX-Viewer」というツールがありますが、SDKのバージョンによって開けないことがあります。
  • 具体的には、February2007版では正常に読み込みができず、Decenber2006版では例外エラーが出て起動しないことがあります。
  • この違いはなぜ起きるのか、ご存知の方がいらっしゃいましたら教えていただけるとうれしいです。
回答を見る
  • ベストアンサー

DirectXViewerについて

直接プログラムに関する質問では無いのですが、以前から気になっていた事がありまして、質問をさせて頂きます。 DirectXのSDKをインストールした際に付属している 「DirectX-Viewer」というXファイルを開くことの出来るツールなのですが、SDKのバージョンによって開けなかったりするのはどうしてなんでしょうか? 私の経験では、February2007版ではちゃんと読み込みが出来ていないのか表示されず、Decenber2006版では例外エラーが出て起動もしてくれませんでした。 このような違いはどうして起こるのでしょうか? 稚拙な質問かとは思うのですが、どなたかご存知の方がいましたら宜しくお願い致します。

質問者が選んだベストアンサー

  • ベストアンサー
  • sha-girl
  • ベストアンサー率52% (430/816)
回答No.1

「DirectX-Viewer」はソースがついていますが、見ましたか? 私の環境でもbinにはいっているもので x-fileを開こうとすると例外がおきました。 SDK April2007の「DirectX-Viewer」をコンパイルしてみました。 しかしソースをみると普通にD3D10がincludeされており d3dx10.lib等もリンクされていました。 デバッグ版で実行しようとすると案の定「d3dx10d_33.dllが見つからない」という メッセージが表示され、リリース版はアプリケーションエラーが発生しました。 詳細まで調べてはいませんが、Vistaでしかまともに動かないのかもしれませんね。 対処としてはDirectX9でも動くように自分でソースを改変するしかないと思います。 (SDK用のサンプルなので開発者もあまりテストもしていないのでしょう。 DirectXは9から10への過渡期であるのでこういう問題が起こるのだと思います。) あとご存知かもしれませんが、 名前が「DirectX 9.0c」であっても昔のものと今のものでは、違います。 SDKの更新にあわせてランタイムもバージョンアップしています。 現在最新のランタイムは「Redist April 2007」ですが、 内部名は維持され「DirectX 9.0c」なのです。 ですから「DirectX 9.0c」対応と書かれてあるゲームでも 昔の「DirectX 9.0cランタイム」では動かないものもあります。 つまりランタイムのバージョンによる動作の違いもあります。

balmy-chan
質問者

お礼

回答有難う御座います。 なるほど・・・DX10の関係だったのですね。 一応SDKはリリースごとにファイルサーバに入れて置いているので、現在は動くViewerを使用している状況です。 とても勉強になりました。本当に有難う御座いました。

関連するQ&A

  • DirectXのSDKについて3つの質問

    こんにちは VisualStudio2008でDirectXをはじめようと思っている者です。 SDKをダウンロードしようと探してみたものの バージョンが頻繁に新しくなっているので、 何も考えず最新のものをダウンロードしていいのか不安です。 調べまわってもわからなかったことを3つ質問します。 質問1 最新のものはMicrosoft DirectX SDK (Nov 2007) のようですが、リソースノートを見るとVisualStudio2008へのサポートは March 2008 SDKからと書いてあります。これは3月まで待たないとVS2008ではまだDirectXは使えないということでしょうか? 質問2 古いSDKを使っている場合、新しいバージョンに変えたいときは 既存のSDKは一度完全にアンインストールしてから新しいものを入れることになるのでしょうか? はたまたアップデートができるのでしょうか 質問3 最新のSDKではDirectX10と9のどちらのアプリケーションも作れるのですか? なんだかわからないことだらけです。 あほみたいな質問かもしれませんがどうか教えてくださいませ

  • DirectXについて 「d3dx9.hファイルが見つかりません」というエラー

    今後DirectXが必要になりそうなので そちらの勉強をはじめようと思っています。 ですがそもそもDirectXというものすら何なのかわからない 状態でしたのでまずは書籍を購入し、目を通しました。 やはり文章だけでは理解が難しかったので 付属のサンプルソースをCDからコピーし実行してみたのですが、 > fatal error C1083: include ファイルを開けません。 > 'd3dx9.h': No such file or directory とエラーが表示されビルドが中断されてしまい、 実行することができないようです。 「d3dx9.h」が見つからないということはわかるのですが、 「DirectX SDK 2007February」というものをインストール しているのですが、他にもなにか必要ということなのでしょうか? また、拡張子が「.x」のファイルを実行すると Direct3D Viewerが立ち上がるのですが全て読み込みエラーで 画面には何も表示されていません。 試にメタセコイアで作ってみたものも駄目でした。 これも上記の「d3dx9.h」というものが関係していたりしますか? ちなみにDirectXで作られたゲームはプレイできます。 やはり私の環境の問題なのでしょうか・・・。 お分かりの方がいらっしゃいましたら、アドバイスを いただければ幸いです。よろしくお願い致します。

  • DirectX SDK について

    最近プログラムに興味を持ってC++を勉強し、簡単なプログラムは作れるようになったのですが、簡単なゲームを作りたい、と言う目標がありDirectXにも興味があるのでいろいろ検索して調べてみるとDirectXはDirectX SDKがないと開発できない・・・と言ったような印象を持ちます。DirectX SDKでいろいろググったり調べてはいるのですが、いまひとつこのDirectX SDKと言うのがどういうものでどういった仕組みになっているのかがわかりません。 そこで質問なのですがDirectXを使用してプログラムする場合これ(DirectX SDK)はいったいどんな理由で必要なのかを簡単に教えてもらいたいのです。お勧めの書籍、ページなどありましたら付け加えてもらえるとうれしいです。 またSDKをマイクロソフトのページからダウンロードし取り敢えずインストールしてみようかと思ったのですdxsdk_november2007.exeを実行したところ規約に同意後、extracting…と出てその後展開中のバーが4つほど進んだところで0に戻るを繰り返し、まったく展開もインストールもされないのですがどういった原因が考えられるのでしょうか。

  • DIRECTXがうまくインストールできません

    現在XPSP2でDIRECTX(9.0 SDK 2005 February)をインストールしようとしているのですが、インストール時「DirectX Runtime Setup Failed (-9)」が表示され、 一応インストールはできるのですが、Cで組んだプログラムを起動すると「d3dx9_24.dllが見つかりません」と表示され実行してくれません。 セットアップファイルはマイクロソフトのHPからダウンロードしたものを使い、Runtimeも最新のものにしています。 インストール時は前のSDKはRemoveしています。 どなたかおわかりになる方教えて下さい。

  • DirectShow

    DirectShowを使ってプログラムするためDirextX 9 SDK をインストールしたのですが、 C:\Program Files\Microsoft DirectX 9.0 SDK (October 2005)\Includeの中に dshow.hがありませんでした。Graph Editなども付属していませんでした。他にインストールしなければいけないのでしょうか? ご存知の方がいらっしゃいましたらご教授下さい。

  • DirectX SDKのダウンロード

    DirectXのSDKというものを導入すればゲームが作れると聞きました。 そこで早速マイクロソフトのサイトにおとしにいきました。 http://www.microsoft.com/japan/msdn/directx/downloads.aspx とりあえずDirectX9のSDKをおとしたいのですが どれを選べばいいのか分かりません(汗) 一番下にある以前のバージョンの DirectX SDK と日本語ドキュメント という箇所がそれらしいのですが、 適当にクリックしても英語のサイトへ行ってしまい、 とても日本語版のダウンロードの雰囲気ではありません。 とりあえずそこのoctober2004というのをおとしてみました。 500Mもある巨大なファイルなのでそうかなとも思いましたが、 他のUPDATEには170Mのものがあったりと パッチなのか、日本語版なのかも全然分からず躊躇しています。 何か間違っている気がするのですが、これでよいのでしょうか?

  • DirectXのバージョンの違い

    OSはwindows xpを使ってます。 DirectXを使おうと思いダウンロードページを見た所、「Microsoft DirectX SDK (Mar 2008) 」が最新のバージョンとの事です。 そこで、いくつか疑問点があるので質問させてもらいます。 ・最新という事は、これがDirectX10ですか? ・このSDKで作ったアプリはwindows2000で動きますか? ・日本語ヘルプが「october 2004」以降出てないようですけど、最新のバージョンに対応した日本語ヘルプはまだ出てないのでしょうか?  出てないのでしたら、「october 2004」がヘルプとして使えるバージョンはいつの物になりますか? どうかよろしくお願いします。

  • DirectX エンド ユーザー ランタイム Web インストーラについて

    現在、私のパソコンは、 Windows Vista Service Pack 2 DirectX11 なのですが、メタセコイアで使いたいプラグインを使うためには 最新のDirectXにする必要があるのです。 下記のページのエンドユーザーランタイムをインストールすると 最新の状態になりますか? ​http://www.microsoft.com/downloads/details.aspx?displaylang=ja&FamilyID=2da43d38-db71-4c1b-bc6a-9b6652cd92a3 (DirectX エンド ユーザー ランタイム Web インストーラ) バージョン : 9.28.1886 公開された日付 : 2010/02/05 このページの必要システムに、Windows Vistaとはあるものの、 Service Pack 2とは書かれていないのですがいいでしょうか? また、私のDirectXのバージョンは11なのですが、 もし、DirectXのバージョンが10や他のバージョンだったとしても、 この同じエンドユーザーランタイムをインストールしてもOKなんでしょうか? どうしてDirectXのバージョンは書いてないのかなと不思議だったのですが、ランタイムにDirectXのバージョンは関係ないのですか? もう一つ、このページの追加情報に、 「DirectX 9.0c コア ランタイムを再インストールする必要がある場合は、DirectX Redist の使用をお勧めします。」 とありますが、DirectX 9.0c コア ランタイムを再インストールするとはどういう状況なのでしょうか? DirectX Redist の方の、 DirectX End-User Runtimes (February 2010)は、 英語バージョンみたいですが、 日本語版のDirectX エンド ユーザー ランタイム Web インストーラとはなにが違うのでしょうか? よくわからないですけど、DirectX 9.0c コア ランタイムもインストールしてくれる、 DirectX End-User Runtimes (February 2010)の方がお得な感じがするのですが (といっても、DirectX 9.0c コア ランタイムの意味もわからないのですが…)どっちでもいいのでしょうか? 日本語版と英語版の違いや気をつけることなどありますか? (一度英語バージョンをインストールすると、次回からも英語バージョンしかインストールできない、など) よろしくお願いします。

  • vistaでDirectx10

    所持しているノートパソコン(DynabookのMX/25AE)のOSがWindows Vistaなのですが、DirectxX 10.0に対応しているとのことで(DirectX 診断ツールで確認)DirectX SDKのサンプルプログラムからver10.0のグラフィックサンプルを起動したのですが、とても重くて1FPSも出ませんでした。 対してver9.0のサンプルプログラムは問題のない速度で動いています。 なぜ、対応しているver 10.0がこれほどに遅くなってしまうのでしょうか?

  • DirectXの環境構築について

    directXが初心者の者です。 現在、Win8上にWindows SDK for Windows8をインストールして「DirectX 11 3Dプログラミング」の書籍付属のサンプルをコンパイルしたところ、エラーが発生して終了しました。そのため、エラーからおそらく11.1が入っているのだろうと思い、d3d11などに書き換えたのですが、やはりエラーが出て動きませんでした。その後、試しにバージョンをdxdiagで確認したところ、11になっていました。 従って、以下の質問をしたいと思います。 (1)現在のバージョンが11か、11.1のどちらになっているのか。 (2)WindowsSDK をアンインストールし、最新のdirectxを入れれば上記のサンプルが動くのか。 (3)11.1のリファレンスサイトをご存知であれば、教えて下さい。 上の本を参考に勉強できれば、11でも11.1でも構いません。 よろしくお願い致します。

専門家に質問してみよう