1 // ----------------------------------------------------------------------------
2 //
3 //        DXライブラリ コンパイルコンフィグヘッダファイル
4 //
5 //                Ver 3.22c
6 //
7 // ----------------------------------------------------------------------------
8 
9 /*
10 <<注意>>
11   このヘッダファイルの#defineのコメントアウト状態を変更しても、
12   DXライブラリ自体の再コンパイルを行わないと効果はありません。
13 */
14 /**
15  * このモジュールは使用されません。使用されたとしても正しく動作しません。
16  */
17 module dxlib_d.DxCompileConfig;
18 
19 
20 version (none):
21 
22 version (OSX) {
23 	version = __APPLE__;
24 } else version (iOS) {
25 	version = __APPLE__;
26 } else version (TVOS) {
27 	version = __APPLE__;
28 } else version (WatchOS) {
29 	version = __APPLE__;
30 }
31 
32 version (__APPLE__) {
33 } else {
34 	version (Android) {
35 	} else {
36 		version = WINDOWS_DESKTOP_OS;
37 	}
38 }
39 
40 // 多重インクルード防止用マクロ
41 // スタティックライブラリ生成時ライブラリ機能制限用定義 -----------------------
42 
43 // namespace DxLibを使用しない場合は次のコメントを外してください
44 //version = DX_NON_NAMESPACE;
45 
46 // DxLib.hに書かれているusing namespace DxLib;を使用しない場合は次のコメントを外してください
47 //version = DX_NON_USING_NAMESPACE_DXLIB;
48 
49 // インラインアセンブラを使用しないソースコードでコンパイルする場合は以下のコメントアウトを外してください
50 //version = DX_NON_INLINE_ASM;
51 
52 // DXライブラリのプログラムから文字列を一切排除する場合はコメントを外してください(バイナリエディタで実行ファイルを開いてもDXライブラリを使用していることが分かり難くなります(よく調べれば当然分かりますが)
53 //  因みに、エラー出力が一切されなくなりますので管理人の対応時に支障をきたすかもしれません)
54 //version = DX_NON_LITERAL_STRING;
55 
56 // すべての関数をスレッドセーフにする場合はコメントを外してください
57 //version = DX_THREAD_SAFE;
58 
59 // ネットワーク関連の関数だけスレッドセーフにする場合はコメントを外して下さい
60 version = DX_THREAD_SAFE_NETWORK_ONLY;
61 
62 // DXアーカイブがいらない方は次のコメントを外してください(DXアーカイブを無効にすると、DXアーカイブを内部で使っている関係上 DX_NON_MODELとDX_NON_FILTERとDX_NON_MOVIEとDX_NON_NORMAL_DRAW_SHADER も有効になります)
63 //version = DX_NON_DXA;
64 
65 // ムービー機能がいらない方は次のコメントを外してください
66 //version = DX_NON_MOVIE;
67 
68 // TGA画像の読み込み機能がいらない方は次のコメントを外してください
69 //version = DX_NON_TGA;
70 
71 // JPEG画像の読みこみ機能がいらない方は次のコメントを外してください
72 // ※DxUseCLib.libも再コンパイルする必要があります
73 //version = DX_NON_JPEGREAD;
74 
75 // PNG画像の読みこみ機能がいらない方は次のコメントを外してください
76 // ※DxUseCLib.libも再コンパイルする必要があります
77 //version = DX_NON_PNGREAD;
78 
79 // TIFF画像の読みこみ機能がいらない方は次のコメントを外してください
80 // ※DxUseCLib.libも再コンパイルする必要があります
81 //version = DX_NON_TIFFREAD;
82 
83 // GraphFilterやGraphBlendを使用しない方は次のコメントを外して下さい
84 //version = DX_NON_FILTER;
85 
86 // 通常描画にプログラマブルシェーダーを使用しない方は次のコメントを外してください
87 //version = DX_NON_NORMAL_DRAW_SHADER;
88 
89 // グラフィックス処理がいらない方は次のコメントを外してください
90 //version = DX_NON_GRAPHICS;
91 
92 // ソフトウエア2D描画がいらない方は次のコメントを外してください
93 //version = DX_NON_2DDRAW;
94 
95 // 標準WAVEファイル以外の音声ファイルを使用しない方は次のコメントを外してください
96 //version = DX_NON_ACM;
97 
98 // DirectShowを使用したMP3ファイルのデコードを行わない場合は次のコメントをはずしてください
99 //version = DX_NON_DSHOW_MP3;
100 
101 // DirectShowを使用した動画ファイルのデコードを行わない場合は次のコメントをはずしてください
102 //version = DX_NON_DSHOW_MOVIE;
103 
104 // Media Foundationを使用した動画ファイルのデコードを行わない場合は次のコメントをはずしてください
105 //version = DX_NON_MEDIA_FOUNDATION;
106 
107 // キーボードの基本的な入力機能以外はいらない方は次のコメントを外してください
108 //version = DX_NON_KEYEX;
109 
110 // 文字列入力機能はいらない方は次のコメントを外して下さい
111 //version = DX_NON_INPUTSTRING;
112 
113 // 通信機能がいらない方は次のコメントを外してください
114 //version = DX_NON_NETWORK;
115 
116 // マスク機能がいらない方は次のコメントを外してください
117 //version = DX_NON_MASK;
118 
119 // Ogg Vorbis データを使用しない方は次のコメントをはずしてください
120 // ※DxUseCLib.libも再コンパイルする必要があります
121 //version = DX_NON_OGGVORBIS;
122 
123 // Ogg Theora データを使用しない方は次のコメントをはずしてください
124 // ※DxUseCLib.libも再コンパイルする必要があります
125 //version = DX_NON_OGGTHEORA;
126 
127 // Opus データを使用しない方は次のコメントをはずしてください
128 // ※DxUseCLib.libも再コンパイルする必要があります
129 //version = DX_NON_OPUS;
130 
131 // ASIOを使用しない方は次のコメントをはずしてください
132 //version = DX_NON_ASIO;
133 
134 // 乱数発生器にMersenne Twisterを使用しない場合は以下のコメントを外して下さい
135 // ※DxUseCLib.libも再コンパイルする必要があります
136 //version = DX_NON_MERSENNE_TWISTER;
137 
138 // DXライブラリ内の確保メモリのダンプ機能を有効にする場合は次のコメントを外してください
139 version = DX_USE_DXLIB_MEM_DUMP;
140 
141 // モデルデータを扱う機能を使用しない方は次のコメントを外してください
142 //version = DX_NON_MODEL;
143 
144 // Bullet Physicsをリンクしない場合は次のコメントを外してください
145 // ※DxUseCLib.libも再コンパイルする必要があります
146 //version = DX_NON_BULLET_PHYSICS;
147 
148 // FBXファイルを読み込む機能を使用する方は次のコメントを外してください(使用にはFBX SDKのセットアップが必要です)
149 //version = DX_LOAD_FBX_MODEL;
150 
151 // ビープ音機能がいらない方は次のコメントを外してください
152 //version = DX_NON_BEEP;
153 
154 // タスクスイッチをOFFにする機能がいらない方は次のコメントを外してください
155 // (タスクスイッチOFF機能は使用不可です)
156 //version = DX_NON_STOPTASKSWITCH;
157 
158 // ログ出力を行わない場合は次のコメントを外して下さい
159 //version = DX_NON_LOG;
160 
161 // printfDxを無効にする場合は次のコメントを外して下さい
162 //version = DX_NON_PRINTF_DX;
163 
164 // 非同期読み込みを無効にする場合は次のコメントを外して下さい
165 //version = DX_NON_ASYNCLOAD;
166 
167 // ファイル保存機能を無効にする場合は次のコメントを外して下さい
168 //version = DX_NON_SAVEFUNCTION;
169 
170 // ソフトウェアで扱うイメージを無効にする場合は次のコメントを外して下さい
171 //version = DX_NON_SOFTIMAGE;
172 
173 // フォント描画機能を無効にする場合は次のコメントを外して下さい
174 //version = DX_NON_FONT;
175 
176 // サウンド再生機能(ソフトウエアサウンド、MIDI含む)を無効にする場合は次のコメントを外して下さい
177 //version = DX_NON_SOUND;
178 
179 // 入力機能を無効にする場合は次のコメントを外して下さい
180 //version = DX_NON_INPUT;
181 
182 // マルチスレッドを使用しない場合は次のコメントを外してください
183 //version = DX_NON_MULTITHREAD;
184 
185 // 各ハンドルのエラーチェックを無効にする場合は次のコメントを外してください(若干高速化される代わりに無効なハンドルを関数に渡すと即不正なメモリアクセスエラーが発生するようになります)
186 //version = DX_NON_HANDLE_ERROR_CHECK;
187 
188 // Direct3D11を使用しない場合は以下のコメントを外してください(現在開発中なので、必ずコメントを外した状態にしてください)
189 //version = DX_NON_DIRECT3D11;
190 
191 // Direct3D9を使用しない場合は以下のコメントを外してください
192 //version = DX_NON_DIRECT3D9;
193 
194 // 軽量バージョンのDXライブラリを生成する場合は次のコメントを外してください
195 //version = DX_LIB_LITEVER;
196 
197 // コンパイル済みのシェーダーバイナリを使用せず、シェーダーコードの実行時コンパイルを利用する場合は次のコメントを外してください
198 //version = DX_NON_SHADERCODE_BINARY;
199 
200 version (Android) {
201 	version = DX_NON_LIVE2D_CUBISM4;
202 } else version (__APPLE__) {
203 	version = DX_NON_LIVE2D_CUBISM4;
204 } else {
205 	// Live2D Cubism 4 関連の機能を使用しない場合は次のコメントを外してください
206 	//version = DX_NON_LIVE2D_CUBISM4;
207 }
208 
209 version (DX_GCC_COMPILE) {
210 	version = USE_ULL;
211 } else version (Android) {
212 	version = USE_ULL;
213 } else version (__APPLE__) {
214 	version = USE_ULL;
215 } else version (BC2_COMPILER) {
216 	version = USE_ULL;
217 }
218 
219 version (WINDOWS_DESKTOP_OS) {
220 } else {
221 	version = DX_NON_BEEP;
222 	version = DX_NON_ACM;
223 	version = DX_NON_DSHOW_MP3;
224 	version = DX_NON_DSHOW_MOVIE;
225 	version = DX_NON_MEDIA_FOUNDATION;
226 }
227 
228 version (Android) {
229 	//version = DX_NON_2DDRAW;
230 	version = DX_NON_ACM;
231 	version = DX_NON_DSHOW_MP3;
232 	version = DX_NON_DSHOW_MOVIE;
233 	version = DX_NON_MEDIA_FOUNDATION;
234 	version = DX_NON_KEYEX;
235 	version = DX_NON_INPUTSTRING;
236 	version = DX_NON_NETWORK;
237 	version = DX_NON_STOPTASKSWITCH;
238 	version = DX_NON_DIRECT3D11;
239 	version = DX_NON_DIRECT3D9;
240 } else version (__APPLE__) {
241 	//version = DX_NON_2DDRAW;
242 	version = DX_NON_ACM;
243 	version = DX_NON_DSHOW_MP3;
244 	version = DX_NON_DSHOW_MOVIE;
245 	version = DX_NON_MEDIA_FOUNDATION;
246 	version = DX_NON_KEYEX;
247 	version = DX_NON_INPUTSTRING;
248 	version = DX_NON_NETWORK;
249 	version = DX_NON_STOPTASKSWITCH;
250 	version = DX_NON_DIRECT3D11;
251 	version = DX_NON_DIRECT3D9;
252 }
253 
254 version (DX_LIB_LITEVER) {
255 	version = DX_NON_ACM;
256 	version = DX_NON_2DDRAW;
257 	version = DX_NON_MOVIE;
258 	version = DX_NON_KEYEX;
259 	version = DX_NON_NETWORK;
260 	version = DX_NON_MASK;
261 	version = DX_NON_JPEGREAD;
262 	version = DX_NON_PNGREAD;
263 	version = DX_NON_TIFFREAD;
264 	version = DX_NON_BEEP;
265 	version = DX_NON_OGGVORBIS;
266 	version = DX_NON_OGGTHEORA;
267 	version = DX_NON_OPUS;
268 	version = DX_NON_MODEL;
269 	version = DX_NON_SHADERCODE_BINARY;
270 }
271 
272 version (DX_NON_GRAPHICS) {
273 	version = DX_NON_FONT;
274 	version = DX_NON_MOVIE;
275 	version = DX_NON_FILTER;
276 	version = DX_NON_2DDRAW;
277 	version = DX_NON_MASK;
278 	version = DX_NON_MODEL;
279 	version = DX_NON_BULLET_PHYSICS;
280 	version = DX_NON_PRINTF_DX;
281 	version = DX_NON_KEYEX;
282 	version = DX_NON_DIRECT3D11;
283 	version = DX_NON_DIRECT3D9;
284 	version = DX_NOTUSE_DRAWFUNCTION;
285 	version = DX_NON_LIVE2D_CUBISM4;
286 }
287 
288 version (DX_NON_SOUND) {
289 	version = DX_NON_OPUS;
290 	version = DX_NON_OGGVORBIS;
291 	version = DX_NON_OGGTHEORA;
292 	version = DX_NON_ACM;
293 	version = DX_NON_DSHOW_MP3;
294 	version = DX_NON_DSHOW_MOVIE;
295 	version = DX_NON_MEDIA_FOUNDATION;
296 	version = DX_NON_MOVIE;
297 }
298 
299 version (DX_NON_MULTITHREAD) {
300 	version = DX_NON_ASYNCLOAD;
301 
302 	version (DX_THREAD_SAFE) {
303 		static assert(false);
304 	}
305 }
306 
307 version (DX_NON_INPUTSTRING) {
308 	version = DX_NON_KEYEX;
309 }
310 
311 version (DX_NON_DXA) {
312 	version = DX_NON_NORMAL_DRAW_SHADER;
313 	version = DX_NON_MODEL;
314 	version = DX_NON_FILTER;
315 	version = DX_NON_MOVIE;
316 }
317 
318 version (DX_NON_MOVIE) {
319 	version = DX_NON_OGGTHEORA;
320 	version = DX_NON_MEDIA_FOUNDATION;
321 }
322 
323 version (DX_NON_INPUT) {
324 	version = DX_NON_KEYEX;
325 }
326 
327 version (DX_NON_FONT) {
328 	version = DX_NON_PRINTF_DX;
329 	version = DX_NON_KEYEX;
330 }
331 
332 version (DX_NON_OGGVORBIS) {
333 	version = DX_NON_OGGTHEORA;
334 	version = DX_NON_OPUS;
335 }
336 
337 version (Win64) {
338 	version = PLATFORM_64BIT;
339 } else static if (__traits(compiles, __LP64__)) {
340 	version = PLATFORM_64BIT;
341 }
342 
343 version (Win64) {
344 	version = DX_NON_INLINE_ASM;
345 } else version (Android) {
346 	version = DX_NON_INLINE_ASM;
347 } else version (__APPLE__) {
348 	version = DX_NON_INLINE_ASM;
349 }
350 
351 public import dxlib_d.DxDataType;