Josh or Melv: DirectX Problems
by Gabor Borbely · in Torque Game Builder · 04/21/2005 (10:51 am) · 24 replies
The new 1.0.2 Windows version of T2D opengl functionality works fine. I was just wondering if there is currently a way to tweak or fix the D3D settings to allow both T2D and the included demos of this version to work properly . Currently, in D3D mode, I, as well as a few other people here, are experiencing severe tearing and jumping, not just with the demos, but also while running the particle editor. Sometimes, a good half of the images on-screen actually go missing. Probably requires just a little tweaking.
#2
04/21/2005 (11:22 am)
There are publishers who will only publish games that run on DX. That's a pretty good reason for wanting it.
#3
04/21/2005 (11:48 am)
Oh yeah, that's right. I remember reading about that in another thread.
#4
04/21/2005 (12:08 pm)
Anytime you can give users more options, it's a Good Thing. It means you have more chances to run on a wider range of configurations, regardless of how many good games run on OpenGL only. When in Rome, do as the Romans do.
#5
Thought this might also be useful:
Here are the main details(while running T2D 1.0.2 as well as the included demos), Windows XP SP2, Pentium lll, 750 MHz, 256 MB SDRAM, Geforce4 MX 4000 GPU; 16 bit color mode, vertical sync is on, Image performance set to High, all other GPU settings set to defaults or simply application controlled; 1024 X 780 screen resolution:
OpenGL runs fairly good(better in full-screen mode) - just some consistent watery-wavy activity overall - including sprites and background-likely due to the only available but buggy openGL drivers(for a Geforce4 MX 4000 GPU). Much slower performance than D3D mode.
D3D - in full-screen mode-top half of viewable screen is truncated and torn for the most part(only the scrolling background, or layer 0, is somewhat visible). Lower half runs surprisingly very visibly, smoothly and very quickly-much more so than in OpenGL. The top half of the screen reappears totally when I leave the Options dialog open and the prformance improves. Once closed, however, the strange activity resumes.
In D3D windowed-mode(in all available resolutions) is a completely different story. None of the tearing is visible at any time, but everything on screen speeds up radically and then slows down suddenly, repeating this cycle in consistently timed sequences.
In all cases above, OpenAL was disabled.
I hope this was useful; any suggestions would be greatly appreciated!:)
04/21/2005 (2:42 pm)
@Josh or Melv :Thought this might also be useful:
Here are the main details(while running T2D 1.0.2 as well as the included demos), Windows XP SP2, Pentium lll, 750 MHz, 256 MB SDRAM, Geforce4 MX 4000 GPU; 16 bit color mode, vertical sync is on, Image performance set to High, all other GPU settings set to defaults or simply application controlled; 1024 X 780 screen resolution:
OpenGL runs fairly good(better in full-screen mode) - just some consistent watery-wavy activity overall - including sprites and background-likely due to the only available but buggy openGL drivers(for a Geforce4 MX 4000 GPU). Much slower performance than D3D mode.
D3D - in full-screen mode-top half of viewable screen is truncated and torn for the most part(only the scrolling background, or layer 0, is somewhat visible). Lower half runs surprisingly very visibly, smoothly and very quickly-much more so than in OpenGL. The top half of the screen reappears totally when I leave the Options dialog open and the prformance improves. Once closed, however, the strange activity resumes.
In D3D windowed-mode(in all available resolutions) is a completely different story. None of the tearing is visible at any time, but everything on screen speeds up radically and then slows down suddenly, repeating this cycle in consistently timed sequences.
In all cases above, OpenAL was disabled.
I hope this was useful; any suggestions would be greatly appreciated!:)
#6
04/21/2005 (4:15 pm)
The first thing to try is upgrading to the latest drivers from NVIDIA. Don't get them from the manufacturer of the card, go to nvidia.com (this is assuming it's a desktop computer).
#7
Let us know re:the drivers too, I'm assuming you're all up to date.
04/21/2005 (5:47 pm)
So this is something new between 1.0.0 and 1.0.2? I'll check it out man, thanks for the report. Let us know re:the drivers too, I'm assuming you're all up to date.
#8
I have just downloaded/installed the latest, appropriate drivers today from NVidia; there are no noticeable improvements over the previous install(using the exact same settings as before and after uninstalling the old drivers before installing the new) .
Sorry Josh, please don't work too hard!:)
Gabor
04/21/2005 (7:23 pm)
@Josh:Hi!:) In answer to your question, yes this is something new to version 1.0.2. D3D ran much better in version 1.0.0; at least as far as I'm concerned. Other people may have had different experiences, however.I have just downloaded/installed the latest, appropriate drivers today from NVidia; there are no noticeable improvements over the previous install(using the exact same settings as before and after uninstalling the old drivers before installing the new) .
Sorry Josh, please don't work too hard!:)
Gabor
#9
04/21/2005 (10:04 pm)
Performance is pretty horrible on a GeForce FX 5200. When I move the mouse it takes 2-3 seconds before I see the cursor move. Running under DX was a bit pokey before, but nothing like this. I'd dig a bit more, but I've got to crash.
#10
This is really screwy! The only conceivable thing is the build of the D3D dll.
I wish I could suggest something more to help you guys. I will talk to Josh about this though.
- Melv.
04/22/2005 (12:50 am)
Nothing has changed in D3D. If it works in OpenGL and not in D3D, it's nothing to do with the T2D layer, it's the TGE core, which hasn't changed one bit. I don't understand then how you can get a difference as you're seeing; weird.This is really screwy! The only conceivable thing is the build of the D3D dll.
I wish I could suggest something more to help you guys. I will talk to Josh about this though.
- Melv.
#11
04/22/2005 (1:21 am)
Perhapse grab the wrapper DLL's from one of the older demo's?
#12
04/22/2005 (9:14 am)
I copied the older glu2d3d.dll and opengl2d3d.dll to the new examples folder, but it didn't eliminate the flickering in fullscreen or the lag in widowed mode. Fullscreen does get rid of the lag, though. I never had this issue with 1.0.0.
#13
As we know the D3D stuff is just a translation from OGL. Perhaps there were OGL changes made that aren't translating well.
04/22/2005 (9:19 am)
@MelvAs we know the D3D stuff is just a translation from OGL. Perhaps there were OGL changes made that aren't translating well.
#14
04/22/2005 (9:40 am)
I could be wrong, but I think John could be onto something here; also if some changes were made to the T2D core in order to address some previously detected issues and bugs, then perhaps those fixes somehow exposed other hidden issues as well or just simply did't translate so well to D3D. It will be interesting to see how this actually turns out!:)
#15
04/22/2005 (10:18 am)
I have a lot of tearing as well only in fullscreen with D3D. However, whenever I goto the options and the "window" appears, it stops. I just tried it on T2D 1.0.0 and there is no tearing in fullscreen.
#16
Is the tearing on all layers e.g. does it only affect certain objects or the whole scene? Try it with vsync on.
If you're getting juddering, could you send a snapshot with the debug-banner on (BIT#0)?
We haven't changed any TGE core though. Perhaps we did change something that exposed something but that would've shown-up in TGE at some point. T2D just acts like a GUI control so nothing new there.
If anyone can get a screenshot then that might help. The debug-banner would be extremely helpful.
Really sorry for the problems everyone, we didn't see this in testing.
- Melv.
04/22/2005 (10:29 am)
Tearing? You guys have got VSYNC off then? Is it something that's being rendered or is it just rasterisation tearing?Is the tearing on all layers e.g. does it only affect certain objects or the whole scene? Try it with vsync on.
If you're getting juddering, could you send a snapshot with the debug-banner on (BIT#0)?
We haven't changed any TGE core though. Perhaps we did change something that exposed something but that would've shown-up in TGE at some point. T2D just acts like a GUI control so nothing new there.
If anyone can get a screenshot then that might help. The debug-banner would be extremely helpful.
Really sorry for the problems everyone, we didn't see this in testing.
- Melv.
#17
I wanted to try a few different drivers last night but didn't have time. I'll see if I can tonight.
04/22/2005 (12:56 pm)
One other possibility is that it's the NVIDIA driver. Newer drivers sometimes are a bad thing and I *think* I updated my drivers since the original demo.I wanted to try a few different drivers last night but didn't have time. I'll see if I can tonight.
#18
04/22/2005 (1:27 pm)
I'm currently having trouble taking and saving screenshots in full-screen mode. Maybe get something working later, but I was thinking that maybe D3D is trying to update portions of the screen too quickly. Could explain why leaving the Options dialog box open stops the tearing and flickering, since it may be slowing the updating somewhat. Could that be a reasonable possibility Melv? I'll keep trying to get you those requesteed screenshots in the meantime!:)
#19
I have full SDKs 1.0.0 and 1.0.2 in different directories because I have different games based on the different versions. So I can confirm that there's definitely something odd with 1.0.2 and it's not a driver issue as far as I can tell.
Edit: Also, I copied the 1.0.0 dlls over to the 1.0.2 SDK and the lag and flicker was still there, so I don't think it's the dlls, either.
04/22/2005 (4:14 pm)
I didn't update my drivers or anything like that. I can run the 1.0.0 demo and none of these issues happen.I have full SDKs 1.0.0 and 1.0.2 in different directories because I have different games based on the different versions. So I can confirm that there's definitely something odd with 1.0.2 and it's not a driver issue as far as I can tell.
Edit: Also, I copied the 1.0.0 dlls over to the 1.0.2 SDK and the lag and flicker was still there, so I don't think it's the dlls, either.
#20
04/22/2005 (5:49 pm)
New version works fine with my games set to DirectX. Getting 90+ FPS in 1280-1024 32 depth.
Torque Owner Hans Sjunnesson
There are plenty of good games that use an OpenGL-only architecture.