   D3D device creation fails on some cards
  I''m having trouble with a lot of onboard video cards with creating a d3d device using dx9b and c#. Here is the code.   presentParams.BackBufferCount = 1;presentParams.SwapEffect = SwapEffect.Discard;presentParams.MultiSample = MultiSampleType.None;presentParams.PresentationInterval = PresentInterval.Immediate;presentParams.BackBufferWidth = 800;presentParams.BackBufferHeight = 600;presentParams.BackBufferFormat = Format.R5G6B5;presentParams.AutoDepthStencilFormat = DepthFormat.D16Lockable;device = new Device(0, DeviceType.Hardware, target, CreateFlags.HardwareVertexProcessing, presentParams);Anything stick out as being the problem? Does directx9 just not work on a lot of cards? 
  CreateFlags.HardwareVertexProcessing means hardware T&L, geforce and above. It won''t work on older cards like rage mobility. Try SoftwareVertexProcessing first, or catch the exception from the first create and fall back to software then. Or just read the caps structure. ;  Also, try some different back buffer formats.  A8R8G8B8 is pretty popular today, but I don''t think too many ancient cards support it. ;  D16Lockable is where I''d guess the problem is.  Not all drivers/cards support lockable depth buffers.   I like pie. ;quote:Original post by Fidelio66  CreateFlags.HardwareVertexProcessing means hardware T&L, geforce and above. It won''t work on older cards like rage mobility. Try SoftwareVertexProcessing first, or catch the exception from the first create and fall back to software then. Or just read the caps structure.   This appers to have fixed the problem on at least some cards, thanks!quote:Original post by Fidelio66  D16Lockable is where I''d guess the problem is. Not all drivers/cards support lockable depth buffers. Thanks, I''ll get rid of it. I don''t need to lock it anyway. 