DirectXTexをwindows7で使いたいのですがエラーが出てしまい困っています

フォーラム(掲示板)ルール
フォーラム(掲示板)ルールはこちら  ※コードを貼り付ける場合は [code][/code] で囲って下さい。詳しくはこちら
学生S

DirectXTexをwindows7で使いたいのですがエラーが出てしまい困っています

#1

投稿記事 by 学生S » 2年前

現在DirectX11のライブラリを作成しています。
このたび、tgaファイルを読み込もうと思ったのですが、D3DX11だと対応してないのでDirectXTexを使えという情報を見つけました。
そこでDirectXTexをダウンロードし、なにもいじらずDebugとReleaseをビルドして、それぞれDirectXTex.lib以外を削除したものを
現在作成中のプロジェクトに追加し、#include <DirectXTex.h>と記述してプロジェクトをデバッグ実行すると

エラー 33 error C2065: 'DXGI_FORMAT_P8' : 定義されていない識別子です。
エラー 70 error C2065: 'DXGI_FORMAT_P8' : 定義されていない識別子です。
エラー 113 error C2065: 'DXGI_FORMAT_P8' : 定義されていない識別子です。
エラー 150 error C2065: 'DXGI_FORMAT_P8' : 定義されていない識別子です。
エラー 31 error C2065: 'DXGI_FORMAT_IA44' : 定義されていない識別子です。
エラー 68 error C2065: 'DXGI_FORMAT_IA44' : 定義されていない識別子です。
エラー 111 error C2065: 'DXGI_FORMAT_IA44' : 定義されていない識別子です。
エラー 148 error C2065: 'DXGI_FORMAT_IA44' : 定義されていない識別子です。
エラー 29 error C2065: 'DXGI_FORMAT_AI44' : 定義されていない識別子です。
エラー 66 error C2065: 'DXGI_FORMAT_AI44' : 定義されていない識別子です。
エラー 109 error C2065: 'DXGI_FORMAT_AI44' : 定義されていない識別子です。
エラー 146 error C2065: 'DXGI_FORMAT_AI44' : 定義されていない識別子です。
エラー 35 error C2065: 'DXGI_FORMAT_A8P8' : 定義されていない識別子です。
エラー 72 error C2065: 'DXGI_FORMAT_A8P8' : 定義されていない識別子です。
エラー 115 error C2065: 'DXGI_FORMAT_A8P8' : 定義されていない識別子です。
エラー 152 error C2065: 'DXGI_FORMAT_A8P8' : 定義されていない識別子です。
エラー 30 error C2051: case 式は、整数型定数でなければなりません。
エラー 32 error C2051: case 式は、整数型定数でなければなりません。
エラー 34 error C2051: case 式は、整数型定数でなければなりません。
エラー 36 error C2051: case 式は、整数型定数でなければなりません。
エラー 67 error C2051: case 式は、整数型定数でなければなりません。
エラー 69 error C2051: case 式は、整数型定数でなければなりません。
エラー 71 error C2051: case 式は、整数型定数でなければなりません。
エラー 73 error C2051: case 式は、整数型定数でなければなりません。
エラー 110 error C2051: case 式は、整数型定数でなければなりません。
エラー 112 error C2051: case 式は、整数型定数でなければなりません。
エラー 114 error C2051: case 式は、整数型定数でなければなりません。
エラー 116 error C2051: case 式は、整数型定数でなければなりません。
エラー 147 error C2051: case 式は、整数型定数でなければなりません。
エラー 149 error C2051: case 式は、整数型定数でなければなりません。
エラー 151 error C2051: case 式は、整数型定数でなければなりません。
エラー 153 error C2051: case 式は、整数型定数でなければなりません。
エラー 71 error C2051: case 式は、整数型定数でなければなりません。

というエラーが出てしまって困っています。エラーが出ている場所はすべてdirectxtex.inlです。


開発環境は、windows 7・VisualStudio2013です。

プロジェクトのプロパティは
・すべての構成
構成プロパティ→全般→プラットフォームツールセットに、VisualStudio2013(v120)を指定
構成プロパティ→VC++ディレクトリ→インクルードディレクトリに、DirectXTex.hとDirectXTex.inlを入れたIncludeフォルダを指定
構成プロパティ→リンカー→入力→追加の依存ファイルに、DirectXTex.libを追加
・Debug構成
構成プロパティ→VC++ディレクトリ→ライブラリディレクトリに、上記のDebugフォルダ(中にDirectXTex.libだけが入っている)を指定
構成プロパティ→C/C++→コード生成→ランタイムライブラリに、MDd指定
・Release構成
構成プロパティ→VC++ディレクトリ→ライブラリディレクトリに、上記のReleaseフォルダ(中にDirectXTex.libだけが入っている)を指定
構成プロパティ→C/C++→コード生成→ランタイムライブラリに、MD指定

としています。

よろしくお願いいたします。

学生S

Re: DirectXTexをwindows7で使いたいのですがエラーが出てしまい困っています

#2

投稿記事 by 学生S » 2年前

追記:すべての構成で、構成プロパティ→C/C++→プリプロセッサ→プリプロセッサの定義に、_WIN32_WINNT=0x0601を記述してみましたが同じエラーが出てしまい、変化ありませんでした。

アバター
へにっくす
記事: 628
登録日時: 7年前
住所: 東京都

Re: DirectXTexをwindows7で使いたいのですがエラーが出てしまい困っています

#3

投稿記事 by へにっくす » 2年前

環境はWindows 7、VS2013ですよね。

下記を見る限り、
> Direct3D 11.1: This value is not supported until Windows 8.
(この値はWindows 8までサポートされていません)
とあるので対応していないのでは?。

DXGI_FORMAT
https://msdn.microsoft.com/en-us/librar ... s.85).aspx
written by へにっくす

学生S

Re: DirectXTexをwindows7で使いたいのですがエラーが出てしまい困っています

#4

投稿記事 by 学生S » 2年前

リンク先に飛べなかったので調べてみましたが、どうやらDirect3D11.1はWin7に一部の機能しか対応してないみたいですね。

DirectX SDK June2010を使って組んでいたのですが、もしやと思いD3DXをDirectXMathとDirectXTexに置き換え、Windows SDK 8.1で実行してみましたがやはりダメでした。
手元にWin7のPCしかなく、原因がOSなのか、こちら側のプログラムないしソリューション構成が悪いのか判別できない状況なので、明日学校でWin8のOSが入ったPCを借りて試してみます。

アバター
へにっくす
記事: 628
登録日時: 7年前
住所: 東京都

Re: DirectXTexをwindows7で使いたいのですがエラーが出てしまい困っています

#5

投稿記事 by へにっくす » 2年前

学生S さんが書きました:リンク先に飛べなかった
これです。
DXGI_FORMAT enumeration
SDK 8.1でかつ_WIN32_WINNT=0x0603を指定したらどうなりますか?
Modifying WINVER and _WIN32_WINNT

※ビルドはできても、Win7上で動くかは不明です(たぶん動かない)。
written by へにっくす

学生S

Re: DirectXTexをwindows7で使いたいのですがエラーが出てしまい困っています

#6

投稿記事 by 学生S » 2年前

_WIN32_WINNT = 0x0603を指定してもダメでした。
またWin8の環境で実行してみても同じエラーが出てしまいました。とりあえずテクスチャ読み込みはD3DX9を使って対処しようと思います。
ありがとうございました。

閉鎖

“C言語何でも質問掲示板” へ戻る