Game Development Community

NVidia GeForce4

by Joe Cocovich · in Technical Issues · 06/29/2003 (7:59 am) · 17 replies

I've got a pretty generic question so I apologize in advance for any lack of detail. I've installed Torque on a Gateway machine with an nVidia RivaTNT2 card installed and I am able to run the test application configured for either OpenGL or D3D at any resolution and bit depth. I recently installed Torque on my HP Pavilion with an nVidia GeForce4 card with 64MB. I can't seem to get the test application to display properly at any D3D settings. I can successfully run the test application at any resolution and bit depth if I select OpenGL. I've acquired the latest drivers for my card but still no luck. I also have DirectX 9 SDK installed. Is anyone aware of any problems with this card and Torque? Does it really matter if I just stick with OpenGL? Will anything that I create and distribute force the user to configure his Torque to run only with OpenGL and not be able to use D3D? I'm not quite that knowledgeable but I would suspect I should be able to continue on my development system using OpenGL. Am I limiting my capabilities or should I be just fine?

Anyone else out there running a similar setup with no problems? If so, a consultation would be greatly appreciated. Thanks for any feedback anyone might be able to provide.

Joe

About the author

Recent Threads

  • Wincvs

  • #1
    06/29/2003 (8:24 am)
    Joe, nVidia GeForce 4 cards do not support DirectX9, only DirectX 8.1. So that maybe effecting it a bit, but then again I am not totally sure. Using OpenGL to develop your game isn't really limiting your customers/users to just that rendering library since D3D might work better for most or some and the rest OpenGL.

    From nVidia's specs GeForce FX cards do support DirectX9. Also it is well known that OpenGL works much better on nVidia graphics cards and DirectX is known to work much better on ATI video cards. So depending on the brand of video card that users have it will reflect how well DirectX and OpenGL works on their systems. So simple answer is you should be fine and no need to worry about it until public beta testing when people start reporting problems with either DirectX or OpenGL then it would be time to work out those problems. OpenGL does work much better for Torque simply because the DirectX support is hacked in on top of OpenGL wrappers. So it doesn't actually support DirectX directly like it should be.


    So there you have it. :)
    #2
    06/29/2003 (9:11 am)
    Nathan,
    Thanks so much for the reply. I was not aware that the GeForce4 did not support DirectX9. All the samples I ran from the DXSDK samples directories ran just fine without any problems so I made the assumption that everything was cool. All my video games seem to run OK as well with D3D. Perhaps there is something else interfering with the proper operation with Torque.

    I think your last statement may have explained it. "OpenGL does work much better for Torque simply because the DirectX support is hacked in on top of OpenGL wrappers. So it doesn't actually support DirectX directly like it should be."

    I'll use DirectX for everything else and make sure I use only OpenGL with the Torque.

    Thanks,
    Joe
    #3
    06/29/2003 (10:06 am)
    Your welcome and no problem. :)
    #4
    06/29/2003 (11:29 am)
    Torque doesn't use DirectX 9 (just DirectX 8), so whatever you've got, it's a different problem.

    When you say 'latest driver' is that the latest from nVidia or from your board manufacturer? Whatever you tried, try the other one. :)
    #5
    06/29/2003 (11:46 am)
    The latest drivers came from the nVidia web site. I'm not sure what board is in my machine. It's an HP Pavilion and I don't open machines to look inside them. I just copied the \torque directory from my CD and followed the getting started docs to compile the SDK and run it. I'm not sure if that means I installed it correctly or if I have to do more stuff to make sure it uses DirectX 8. I also ran the supplied binary and it has the same problem.

    All my other applications and games and such don't seem to have any problems so I'm not sure where to look for "a different problem" with my setup. Anyway, since OpenGL works fine, I'll just go with that.

    Thanks,
    Joe
    #6
    06/29/2003 (1:06 pm)
    If Torquq works for you in OpenGL mode then don't use DX mode. Running in DX mode gets you NOTHING except compatibility if OpenGL doesn't work and slower framerates.

    They should really put that in huge letters someplace: TORQUE IS AN OPENGL RENDERER.
    #7
    07/02/2003 (4:58 pm)
    My laptop runs great in D3D mode (and with only 8MB of video RAM) but its pants in OpenGL, on the other hand my GeForce 4 runs at 5 frames a second in D3D, but is great in OpenGL...
    Even though Torque is an OpenGL renderer, the D3D support is useful.

    But as Mr. Stanley points out don't use the mode that doesn't work!

    simple really...
    #8
    07/02/2003 (5:16 pm)
    @Nathan Martin - I'm curious as to why you believe the GeForce4 cards do not support DirectX9? According to the nVidia website, (http://www.nvidia.com/view.asp?IO=winxp-2k_44.03)
    DX9 is fully supported. In fact, I believe the GeForce3 and 4 was the testbed for much of the DX9 development.
    #9
    07/02/2003 (7:39 pm)
    Yeah, I was curious about that also as is stated in my response to Nathan's post. Unfortunately, I can get familiar with the Torque with DirectX8 but the rest of my team is using DirectX9 and we would all like to be compatible. Maybe it's my card, maybe it's my HP Pavilion, maybe it's the phase of the moon...whatever, it just simply does not work on my system when all other compiled C++ programs that use DirectX9 do including the samples that ship with the DirectX9 SDK. Hmmmmmm....seems the only common ground here is the Torque. I have the SeriousSam Second Encounter engine source and it compiles and works just fine with DirectX9. I need to keep trying to get it to work. I just can't take Mr. Stanley's advice and merely just use what works. Somehow I need to satisfy my team and get DirectX9 to work on my system. I really appreciate everyone's input but it really is difficult solving someone else's problem when there is not one single other case that experiences the same problem. I just need to work my own way through this somehow.

    Thanks for all the inputs,
    Joe
    #10
    07/03/2003 (3:43 am)
    I guess it hasn't been widely publicized but we have been running with torque recompiled under DirectX9 (in DX8 emulation) since about three weeks after its public debut.

    It took very little work to compile with the DX9 includes. The system actually defaults to DX8 and generates warnings for the inputs, but otherwise works fine.

    Our main purpose in using DX9 as a compile platform was to make it easier to transition to full DX9 compatibility when the OpenGL and DX9 platforms get more in sync on things like shader support. For video we run almost exclusively in OpenGL.

    So you could recompile and use DX9 in your system to be in sync with your associates. Who knows? it might even remove some of your compatibility problems. (kidding.)
    #11
    07/03/2003 (6:22 am)
    Geforce 4's (any of the types) will run DX9 fine. They just don't support >all< of the features. The DX9 feature set somewhat surpasses the abilities of the GF 3/4's, but 99% of games won't be using the additional stuff for a while yet anyway.

    Having DX9 installed really shouldn't interfere with any lower versions of directX running on it (give or take the really old versions). The head versions seem to mess up the D3D support occasionally, and if you have a real old test version there were some skybox issues in D3D. But all in as everyone else says, if it works in OpenGL use OpenGL. :)
    #12
    11/08/2003 (2:14 am)
    I also have a GeForce 4 card and the Torque engine works fine with DX9 installed, so the configuration can work but really theres not enough details to really pin point what the problem could be (theres so many layers where it can go wrong, game software->drivers->OS software->hardware setup->actual hardware). Stick with OpenGL if you're happy with it ;)

    I'd also like to just echo what Gareth just said too, it seems theres some confusion over DirectX versions and what cards they support. DirectX is backwards compatible (upto a point ;)) so with each new version all the older features and interfaces are still supported - when a GFX card states it's DirectX compatible it should work with all versions of DirectX. When it says it's DirectX 9 compatible, thats not much difference really, except its just stating that it supports all the features upto and including version 9.
    #13
    11/08/2003 (7:06 am)
    We also have problem with D3D since the head(1_2_0). Tryed on 5 different config (geforce2, radeon, radeon 8500(think), radeon 9000 pro, GeforceFX 9560). It was working good on all those config before the head. And yes, all have the latest drivers from their respective manifacturers. Not that we are using D3D, but we were liking to have our game more compatible with everything like it was before the head.
    #14
    11/14/2003 (5:46 am)
    With the DX9 tests I believe they would make them to run in Software mode(not HAL), so everyone can see it.
    #15
    03/05/2004 (7:52 pm)
    @Gilles- I totally agree with you. We have had the same problem since the 1.2.0 head. My friend and I do most of our programing and testing on our lunch hour at work. And we agree that it should be able to run in D3D mode as well as OpenGL. We are using a laptop, every head before 1.2.0 ran fine on it in D3D mode.
    #16
    04/25/2004 (6:18 am)
    I use geforce4mx440 too,and when i run the demo downloaded from this site,and run in directx mode, the color was not correct,and i run the demo in opengl ,it works fine.

    i compile the sdk source code,and can not run the torquedemo
    #17
    04/25/2004 (1:52 pm)
    Check your drivers. I had a bunch of problems running the latest version of NVidia's drivers. Textures and stuff were all off. Rolling back to the 53's seemed to clear it up.

    - C