Game Development Community

Errors.. errors and more...

by arteria3d · in Torque Game Engine Advanced · 12/26/2004 (4:15 pm) · 24 replies

Hi,

I have just got the latest CVS of tse - and have attempted to fresh install it - and get 58 errors!!!. I have never had errors before compiling TSE - some of them are as follows:

c:\tse\engine\platformwin32\windinputdevice.h(27) : error C2146: syntax error : missing ';' before identifier 'smDInputInterface'
c:\tse\engine\platformwin32\windinputdevice.h(27) : error C2501: 'smDInputInterface' : missing storage-class or type specifiers
c:\tse\engine\platformwin32\windinputdevice.h(50) : error C2146: syntax error : missing ';' before identifier 'mDevice'
c:\tse\engine\platformwin32\windinputdevice.h(50) : error C2501: 'LPDIRECTINPUTDEVICE8' : missing storage-class or type specifiers
c:\tse\engine\platformwin32\windinputdevice.h(50) : error C2501: 'mDevice' : missing storage-class or type specifiers
c:\tse\engine\platformwin32\windinputdevice.cpp(16) : error C2039: 'smDInputInterface' : is not a member of 'DInputDevice'
c:\tse\engine\platformwin32\windinputdevice.h(24) : see declaration of 'DInputDevice'
c:\tse\engine\platformwin32\windinputdevice.cpp(16) : error C2146: syntax error : missing ';' before identifier 'smDInputInterface'
c:\tse\engine\platformwin32\windinputdevice.cpp(16) : error C2501: 'LPDIRECTINPUT8' : missing storage-class or type specifiers
c:\tse\engine\platformwin32\windinputdevice.cpp(16) : fatal error C1004: unexpected end of file found
winDirectInput.cpp
c:\tse\engine\platformwin32\windinputdevice.h(27) : error C2146: syntax error : missing ';' before identifier 'smDInputInterface'
c:\tse\engine\platformwin32\windinputdevice.h(27) : error C2501: 'smDInputInterface' : missing storage-class or type specifiers
c:\tse\engine\platformwin32\windinputdevice.h(50) : error C2146: syntax error : missing ';' before identifier 'mDevice'
c:\tse\engine\platformwin32\windinputdevice.h(50) : error C2501: 'LPDIRECTINPUTDEVICE8' : missing storage-class or type specifiers
c:\tse\engine\platformwin32\windinputdevice.h(50) : error C2501: 'mDevice' : missing storage-class or type specifiers
c:\tse\engine\platformwin32\windirectinput.h(31) : error C2146: syntax error : missing ';' before identifier 'mDInputInterface'
c:\tse\engine\platformwin32\windirectinput.h(31) : error C2501: 'LPDIRECTINPUT8' : missing storage-class or type specifiers
c:\tse\engine\platformwin32\windirectinput.h(31) : error C2501: 'mDInputInterface' : missing storage-class or type specifiers
c:\tse\engine\platformwin32\windirectinput.cpp(28) : error C2065: 'mDInputInterface' : undeclared identifier
c:\tse\engine\platformwin32\windirectinput.cpp(56) : error C2065: 'IID_IDirectInput8' : undeclared identifier
c:\tse\engine\platformwin32\windirectinput.cpp(106) : error C2227: left of '->Release' must point to class/struct/union
c:\tse\engine\platformwin32\windirectinput.cpp(198) : error C2039: 'smDInputInterface' : is not a member of 'DInputDevice'
c:\tse\engine\platformwin32\windinputdevice.h(24) : see declaration of 'DInputDevice'
c:\tse\engine\platformwin32\windirectinput.cpp(198) : error C2065: 'smDInputInterface' : undeclared identifier
c:\tse\engine\platformwin32\windirectinput.cpp(199) : error C2227: left of '->EnumDevices' must point to class/struct/union
c:\tse\engine\platformwin32\windirectinput.cpp(199) : error C2065: 'DI8DEVTYPE_KEYBOARD' : undeclared identifier
c:\tse\engine\platformwin32\windirectinput.cpp(200) : error C2227: left of '->EnumDevices' must point to class/struct/union
c:\tse\engine\platformwin32\windirectinput.cpp(200) : error C2065: 'DI8DEVTYPE_MOUSE' : undeclared identifier
c:\tse\engine\platformwin32\windirectinput.cpp(201) : error C2227: left of '->EnumDevices' must point to class/struct/union
c:\tse\engine\platformwin32\windirectinput.cpp(201) : error C2065: 'DI8DEVTYPE_JOYSTICK' : undeclared identifier
winFileio.cpp


Anyone know why?

About the author

Owner of uk based Ltd company ArteriaMediaLtd. with a trading name of Arteria3d Website;arteria3d.com

Page «Previous 1 2
#1
12/27/2004 (11:12 am)
You don't have DirectX in your include path, or you don't have the DirectX sdk installed, perhaps?
#2
12/27/2004 (11:29 am)
I grabbed the latest head release last night and there has not been changes to the input device code. Like JMac i suspect that you've not got the DirectX SDK folder in your include path.
#3
12/28/2004 (5:30 pm)
Okay sorted all that. When i run TSE when it trys to locate the datablocks, it stops

and says 'cannot compile pixel shader at line.....'

STeve
#4
12/28/2004 (8:13 pm)
What line? What shader is it? Can your card do pixel shaders?
#5
12/29/2004 (2:30 am)
Fatal:(C:\tse\example\TSE_debug.exe

Unable to compile pixel shader
#6
12/29/2004 (2:31 am)
My card is a Radeon 9800 SE - so it can do pixel shaders
#7
12/29/2004 (9:54 am)
Do you have the 'shaders' folder in place? You should put a breakpoint in GFXD3DShader::initPixShader() to try to figure out which one is asserting.
#8
12/29/2004 (9:57 am)
Yeah i do - i have just downloaded a complete fresh copy of TSE - and compiled it and the error still comes up. Weird isnt it..
#9
12/29/2004 (10:03 am)
I have a 9800 Pro and it works fine here with my latest merge. I'd try setting the breakpoint and at least narrowing it down to which shader is failing... or worse if all shaders would fail (remove the ASSERT_ON_BAD_SHADER define at the top of gfxD3DShader.cpp).
#10
12/30/2004 (7:52 am)
Does anybody use TSE with a Radeon 9800 SE, cos fot the live of me - i cannot get it to work right with TSE.

I keep getting th error - that it cannot compile pixel shader. Now.. i know that my card can run shader 2 stuff

Steve
#11
12/30/2004 (10:23 am)
Do this to be sure... download, install, and run the TSE demo here. If the demo fails to run then we can at least know a little more confidently if it's TSE or your setup.
#12
12/30/2004 (11:00 am)
First... not sure if this discussion belongs on the 'public' TSE forums... but it's here.

@Stevie - You really should pick up a beginner guide which will give you the basics on compiling and debugging (including placing breakpoints) as they're critical to getting anything done. I'm not familiar with what's out there now myself, but I bet if you posted to one of the general forums they could give you some suggestions... they're might even be some good resources online.

Now as for your crash. Replace the AssertFatal @ line 182 in file gfxD3DShader.cpp with this:

AssertFatal( false, avar( "Unable to compile pixel shader %s for target %s", pixFile, pixTarget ) );

Recompile and execute TSE. Now when it crashes it should give you the shader and target it's using. This should help pinpoint the issue further.
#13
12/30/2004 (4:30 pm)
Thanks for that mate

The error i now get is :

Unable to compile pixel shader/planarReflectP.hlsl for target ps_1_4.

A look in the console log reveals:
error X4512: accessing texture coordinate w-component not yet implemented in ps_1_4
#14
12/30/2004 (4:34 pm)
You can open up planarReflectP.hlsl and replace the access to .w in the shader with 1... breaking it, but at least it should compile. The question now is why does this shader not compile for your 9800 but does for mine? Do you have the latest ATI drivers installed? Before you replace the driver go into the device manager and write down your current driver version... it would be nice to know what driver this breaks with.
#15
12/30/2004 (4:37 pm)
30/11/2004

Driver version: 6.14.10.6497
#16
12/30/2004 (4:47 pm)
By the way i forgot to say - i ran the TSE demo and that worked - but maybe the demo was made before the implementation of the hlsl shader in question. Tom - what version of the Dirext X SDK are u using.
#17
12/30/2004 (4:54 pm)
Funny... my driver is older than yours.

8/3/2004
6.14.0010.6467

Maybe the 9800SE is more crippled that i was aware of, but from all i read it is the same core as the 9800Pro with 4 pipes vs. 8.

Compare the shader/planarReflectP.hlsl in the demo to that in your TSE folder. I'm pretty sure that was working when they released the EA release.

I've got the DirectX 9.0 SDK (October 2004 Update) installed.
#18
12/30/2004 (4:56 pm)
Yeah it definatally is the same, except for the 4 pipelines. I believe though i can actually get a driver to totally emulate the Pro version. As for being crippled, i believe that this shader should definatally work. I am running all the latest games, with Shader 2 stuff running a treat. and as this shader is i believe Shader 1 it should work... very odd indeed
#19
12/30/2004 (4:59 pm)
The TSE demo doesnt contain that shader....
#20
12/30/2004 (5:03 pm)
I guess your best bet now is to post this bug in the TSE Bugs private forum. Just disable the error by replacing the 'texIndex.w' with 1.
Page «Previous 1 2