Game Development Community

One error with a vanila install of TSE + VC2008

by The Fallen · in Torque Game Engine Advanced · 07/22/2008 (8:09 am) · 4 replies

Hi guys :)

I tried to install the TSE using VC++ Express 2008 and following the basic instructions from the help file but....

I get one error...

Error 3 error C2065: 'D3DXSHADER_OPTIMIZATION_LEVEL3' : undeclared identifier c:\Torque\TGEA_1_7_1\engine\source\gfx\D3D9\gfxD3D9Effect.cpp 69


#ifdef TORQUE_DEBUG
   U32 flags = D3DXSHADER_DEBUG;
#else
   U32 flags = D3DXSHADER_OPTIMIZATION_LEVEL3;
#endif

Any one had the same problem? I'm atm searching for a solution a trying to understand, but if any one knows just give me a hand ;)

Thanks in advance,


EDIT: I forgot to mention that it runs well, but never the less, I'm still trying to understand the problem...

#1
07/22/2008 (11:57 am)
Is your dx sdk up to date?
#2
07/22/2008 (1:05 pm)
Don't blame the SDK... blame me :)

Delete the entire #else part. D3DXSHADER_OPTIMIZATION_LEVEL3 is a DX10 flag--it's not supported on DX9.

Kick my butt for not testing the non-debug path and kick my butt again for not reading the docs thoroughly enough.
#3
07/22/2008 (1:42 pm)
Note to self: do proper research before publicly blaming myself.

The non-debug path was tested. And I read the docs properly. DX9 is using the DX10 compiler and the flag is available.

@The Fallen
I suspect you are using an older DirectX SDK, quite like Dan suggested. Must be using the DX9 compiler still and thus not have the flag.
#4
07/22/2008 (2:36 pm)
Yes it was that. In my laptop I have the last DX SDK but in my PC I still had one from 2006...

Only good now :) Many many thanks for the quick and good replys :)