Sign in to follow this  
Martaver

Geometry not rendering - Bad device init?

Recommended Posts

I'm having some serious headaches getting my application working on another platform. This is Managed DX 9b I'm using the 'D3DEnumeration' and device intialization code from 'D3DApp' - the classes the Direct3d 'wizard' and 'samples' use to intialize their app's devices, automatically choosing the 'best' settings. I'm trying to render static geometry. A single batch of triangle lists, a material, a texture, of type CustomVertex.PositionNormalTextured, unindexxed. On my dev computer it renders fine, however when I try to take the app to another, my static geometry turns invisible. Not just another color - invisible. My collision detection is still ocurring and I checked the buffers - all the data is there. It simply won't render. Meshes (from the D3DX Mesh class) still render fine, and when I attempt to render a larger set of geometry the framerate does change. My dev computer uses a Radeon 9800 pro, this computer uses a Quaddro of some sort. I know that something is wrong with the way my device is being initialized, because when I switch to the reference rasterizer my geometry shows. Same thing if I set the CreateFlags to SoftwareVertexProcessing. HardwareVertexProcessing Does anyone have ANY idea as to why using HardwareVertexProcessing is turning my geometry (but not Meshes) invisible??

Share this post


Link to post
Share on other sites
1) Are you sure you have the latest graphcscard drivers?
2) Are you sure you have the latest DirectX Run-time version installed?
3) Maybe you'll need the dotNET framework, but I suppose you already have that.

This IS a hardware problem, because the reference rasterizer does everything in software. Do other projects work? (Commercial or C++ Direct3D applications?)

Share this post


Link to post
Share on other sites
Have you gotten any debug messages? Specifically, step through:

(1) Device creation
(2) Resource creation (shaders, buffers, vertex decls, ect...)
(3) DrawIndexedPrimitive() calls

Remember to enable D3D debug output and turn it the whole way up. This should reveal if anything weird with your code is going on. If the debug code reveals nothing, it could be a driver bug.

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now

Sign in to follow this