Jump to content
  • Advertisement
Sign in to follow this  
The Pentium Guy

Hardware Vertex Processing - Does my computer support it?

This topic is 4838 days old which is more than the 365 day threshold we allow for new replies. Please post a new topic.

If you intended to correct an error in the post then please contact us.

Recommended Posts

I have a computer with a 9800Pro, which is great and supports hardware vertex processing. But then again, I'm doign some "beta" testing and came to the conclusion that this HP doesn't support hardware vertex processing.... Half the things that I do require hardware vertex processing, and this computer makes me use software veretx processing, dropping my frames per second from 500 to 6 (this is rendering an animated mesh, heightmap and skybox). Is this a common problem? Computers with integrated graphics require software vertex processing? See the reason I'm asking is, I went to dxdiag -> Display -> Test Direct3D and it said it supported "Direct3D 9 Hardware Accellerated Devices." But how come my application doesn't work with Hardware? This computer's only a year old. The computer next to me (another HP) is about 2 months old, has integrated graphics, and STILL doesn't work with hardware. Just that one change from Hardware to Software makes it work. Can anyone explain if I'm doing something wrong? dxDiag indicates that Hardware works, but my applicaiton won't work with Hardware, I have to use Software vertex processing. Thanks, -The Pentium Guy

Share this post


Link to post
Share on other sites
Advertisement
I guess it really depends on your program. To my understanding (which could be incorrect) Hardware Vertex Processing basically means that the video card can do TnL in hardware. It doesn't necessarily mean that it can do any sort of pixel/vertex shaders in hardware.

Integrated graphics generally take the load that would have gone to the video card and dump it onto the CPU. This means it is slow.

Share this post


Link to post
Share on other sites
Well for some reason my mesh animation doesn't work with software vertex processing. If I choose not to render the mesh it works fine.

I just did a test with DevCaps and apparently my device doesn't support HardwareTransformAndLight and PureDevice.

Share this post


Link to post
Share on other sites
You must be having some driver issues. Your 9800 Pro should definitely support D3DDEVCAPS_HWTRANSFORMANDLIGHT and D3DDEVCAPS_PUREDEVICE. My 9800 Pro does.

Share this post


Link to post
Share on other sites
Quote:
Original post by KrazeIke
Oh, sorry. It's perfectly normal for an integrated graphics solution not to support that.


Oh. That's the answer I was looking for.

Then I guess it's time to horribly optimize this game. 6 fps is always a bad thing. (but then again this is a Celeron 1.2 ghz). I get around 36 on the other Celeron 2.6 ghz..... and again this is just a heightmap and animated mesh (which doesn't even work on software).

Share this post


Link to post
Share on other sites
Just make sure the game isn't dropping to the REF device, as that's a very slow, developer only, debugging tool. Any person just running DirectX, not the SDK, won't have the REF device. A HAL device with software vertex processing shouldn't cause too much of a slow-down. Check the control panel to see if you're running DirectX in retail or debug mode. Debug mode does lots of checking, especially in software processing, which can bring your game to a crawl. It's great for tracking down bugs, getting warnings, etc, but it can take a game from playable speed to slideshow.

Share this post


Link to post
Share on other sites
It's not REF because it works on this (integrated graphics without SDK) computer.

*Sighs* - If only software vertex processing didn't cause that annoying bug with mesh animation, I really wouldn't care :). Took me forever to do mesh animation but once I get it working I realize it doesn't work with Software Vertex Processing. Great :). The pains of being a developer.

Share this post


Link to post
Share on other sites
Actually, I figured it out.

On SoftwareVertexProcessing, right after you render your animated mesh you have to set the dxDevice.RenderState.VertexBlend back to 0. On HardwareVertexProcessing it really doens't matter, but I think it's better practice to reset it back to 0.

Hopes that helps people,
-The Pentium GUy

Share this post


Link to post
Share on other sites
Sign in to follow this  

  • Advertisement
×

Important Information

By using GameDev.net, you agree to our community Guidelines, Terms of Use, and Privacy Policy.

We are the game development community.

Whether you are an indie, hobbyist, AAA developer, or just trying to learn, GameDev.net is the place for you to learn, share, and connect with the games industry. Learn more About Us or sign up!

Sign me up!