TSE Was not checked in properly?
by Alex A. Petroukine · in Torque Game Engine Advanced · 02/23/2005 (6:11 am) · 20 replies
Hello guyz!
Just got the latest version of TSE via cvs today (23 feb 2005)
I downloaded everything into the new empty folder called TSE_23_FEB.
Have 2 problems with it:
1) The linker cries with an error for 3dmax exporters and map2diff projects:
error LNK2001: unresolved external symbol "public: static int DDSFile::smExtantCopies" (?smExtantCopies@DDSFile@@2HA)
The TSE_DEBUG.EXE produces okay.
2) But when i ran TSE_DEBUG.EXE it surely cannot load up some textures.
Only some GUI textures are 'missing' on the screen. 3d world seems to be okay.
When i placed backed up TSE_DEBUG.EXE to the TSE_23_FEB folder one runs
perfectly with the same scripts and data content!
Please investigate.
kind regards alex // cyberware
Just got the latest version of TSE via cvs today (23 feb 2005)
I downloaded everything into the new empty folder called TSE_23_FEB.
Have 2 problems with it:
1) The linker cries with an error for 3dmax exporters and map2diff projects:
error LNK2001: unresolved external symbol "public: static int DDSFile::smExtantCopies" (?smExtantCopies@DDSFile@@2HA)
The TSE_DEBUG.EXE produces okay.
2) But when i ran TSE_DEBUG.EXE it surely cannot load up some textures.
Only some GUI textures are 'missing' on the screen. 3d world seems to be okay.
When i placed backed up TSE_DEBUG.EXE to the TSE_23_FEB folder one runs
perfectly with the same scripts and data content!
Please investigate.
kind regards alex // cyberware
#2
the TSE engine compiles normally. However it does not work properly.
Here's the screenshot:

Note, that buttons are in place, i could press them and they work.
However, the images are not displayed.
If i run old EXE file with the same scripts and data files - everything works fine.
02/24/2005 (6:00 am)
The linker only fails to produce 3dmax and map2diff projects,the TSE engine compiles normally. However it does not work properly.
Here's the screenshot:

Note, that buttons are in place, i could press them and they work.
However, the images are not displayed.
If i run old EXE file with the same scripts and data files - everything works fine.
#3
02/24/2005 (5:59 pm)
I get the same result with latest compile I did yesterday
#4
02/24/2005 (7:43 pm)
I did a CVS update yesterday, too, but I don't get anything like that.
#5
02/25/2005 (7:13 am)
Heh, just to confuse everything more. I got a similiar result by moving a build I made on my laptop (9600 Radeon mobility) to my desktop (nvfx5200). I had assumed I just missed a file that it needed, maybe it's more?
#6
02/25/2005 (7:38 am)
I'm getting it as well. The image troubles began after the .dds additions to CVS. A few other things were added as well that day, so it's not necessarily the dds causing it. I'm using a starter.fps base, so the troubles are not in the demo load but in the playgui images. Lots of things are still iffy in TSE, so I didn't really worry about this one.
#7
Hope this will be fixed soon.
02/25/2005 (8:55 am)
As i told before, the old TSE.EXE when placed into the same folder works just fine with the same images and scripts.Hope this will be fixed soon.
#8
02/25/2005 (5:50 pm)
For those of you with problems, are you running the latest DXSDK update, or an older one? Just curious, we're not seeing it and I'm still running on the October update.
#9
Ben
02/25/2005 (6:38 pm)
LOL, good quest brian. MS just released a new version of DX just to make your life more difficult. Ben
#10
02/25/2005 (7:22 pm)
I'm using December, same as Ive been using since about December...
#11
Allrighty, i might have some free time this weekend and try to investigate the problem myself.
02/25/2005 (7:40 pm)
Well, dxsdk_oct2004.exe - obviously october release.Allrighty, i might have some free time this weekend and try to investigate the problem myself.
#12
02/25/2005 (7:59 pm)
I couldn't comple with the October DX SDK; I had to get a recent version(December 04).
#13
Using geForceFX500 with 66.93 drivers and the DX-9c SDK from December.
Looks like just graphic overlays in menus and the gui chat in the mission. 3D rendering in the mission looks ok to me.
Hope that helps Thanks.
02/26/2005 (8:36 am)
I'm getting the same results as well after recently grabbing the head off cvs. Using geForceFX500 with 66.93 drivers and the DX-9c SDK from December.
Looks like just graphic overlays in menus and the gui chat in the mission. 3D rendering in the mission looks ok to me.
Hope that helps Thanks.
#14
gfxD3DTextureManager.cpp, function GFXD3DTextureManager::innerCreateTexture()
Either if i
a) manually adjust width and height to the nearest power of two and then call to ::CreateTexture. or
b) call D3DXCreateTexture instead (in fact, it calls D3DXCheckTextureRequirements that performs all adjustments).
this solves the 'missing' images problem for me.
So, guyz, you might want to dig deeper into this.
Good luck.
02/26/2005 (11:52 am)
Okay, i tracked down the issue.gfxD3DTextureManager.cpp, function GFXD3DTextureManager::innerCreateTexture()
// don't want to bother with D3DX - slow function.
HRESULT res= mD3DDevice->CreateTexture( width, height,
mips, usage, (_D3DFORMAT)format, pool, retTex->get2DTexPtr(), NULL);
if(res != D3D_OK)
{
// Confirmed 2/8/05 that terrain doesn't trigger this fallback - BJG
D3DAssert(
D3DXCreateTexture(
mD3DDevice,
width,
height,
mips,
usage,
(_D3DFORMAT)format,
pool,
retTex->get2DTexPtr()
), "GFXD3DTextureManager::_createTexture - failed to create texture!"
);
}Either if i
a) manually adjust width and height to the nearest power of two and then call to ::CreateTexture. or
b) call D3DXCreateTexture instead (in fact, it calls D3DXCheckTextureRequirements that performs all adjustments).
this solves the 'missing' images problem for me.
So, guyz, you might want to dig deeper into this.
Good luck.
#15
Wow, I can't believe that FX cards can't allocate non power-of-2 textures though. Might be a driver problem, or we aren't clamping the GUI textures. I'll take a look at it.
Thanks for finding that one Alex, and everyone for the feedback.
02/26/2005 (6:10 pm)
Yes, we did change that code recently, so that's likely the culprit.Wow, I can't believe that FX cards can't allocate non power-of-2 textures though. Might be a driver problem, or we aren't clamping the GUI textures. I'll take a look at it.
Thanks for finding that one Alex, and everyone for the feedback.
#16
Edit
@ Brian, I think this issue is not related to recent changes in the tse code, since all the demos (from garage to dojo) running on my box had the same texture overlapping problem.
03/02/2005 (7:35 am)
Infact it was one of the many issues that I had only using a fx5600.... no problem at all using ati 9xxxxEdit
@ Brian, I think this issue is not related to recent changes in the tse code, since all the demos (from garage to dojo) running on my box had the same texture overlapping problem.
#17
03/02/2005 (12:05 pm)
OK, I've put a check in for power-of-2 textures. This should hopefully fix the problem for most of you. I've gotten hold of a FX5500 card now and I'll test on that next week to see if I can repro the issue.
#18
03/02/2005 (1:35 pm)
Fix confirmed for FX5600 ultra. Much appreciated :)
#19
03/03/2005 (3:11 am)
@ Brian, thanks for the fix, I'll update the cvs and give it a test run. I'll let you know :)
#20
Thanks!
03/05/2005 (9:11 am)
I just tested the updates, and everything seems to be working great now.Thanks!
Associate Ben Garney
I've updated the TSE Lib project to include those files.
Can you post a screenshot of the error you're experiencing? We haven't seen it testing locally.