Archived

This topic is now archived and is closed to further replies.

Mafian

DX8 Modes

Recommended Posts

Mafian    128
Ok, I am using the nifty D3DXSprite object for displaying 2D graphics (with alpha blending, rotations, and such). This works great on my computer, but I have a sophisticated graphics card. Friends of mine have brand new computers with factory accellerators, but they can''t run my software! Running games like half-life work on their comps, so I don''t understand what is so complicated with 2d graphics. I was wondering if there is a seperate mode to launch D3D8 so that it can use emulation to make up for low end cards. I would like most people with a half decent card to run my games, not just the top notch gamers! Here is the startup code I use currently:
if(FAILED(lpD3D = Direct3DCreate8(D3D_SDK_VERSION)))
	return 0;

D3DPRESENT_PARAMETERS d3dpp;
memset(&d3dpp, 0, sizeof(d3dpp));
d3dpp.SwapEffect = D3DSWAPEFFECT_DISCARD;
d3dpp.BackBufferWidth = g_ScreenX;
d3dpp.BackBufferHeight = g_ScreenY;
d3dpp.BackBufferFormat = D3DFMT_A8R8G8B8;

//init flags stores creation flags in my function

//one of these flags is for windowed mode.


//WINDOWED MODE//

if(initflags & INIT_FLG_WINDOWED)
	d3dpp.Windowed = TRUE;

if(FAILED(lpD3D->CreateDevice(D3DADAPTER_DEFAULT, D3DDEVTYPE_HAL, hwnd, D3DCREATE_HARDWARE_VERTEXPROCESSING, &d3dpp, &lpD3D_Device)))
	return 0;

if(FAILED(D3DXCreateSprite(lpD3D_Device, &lpD3D_XSprite)))
	return 0;
Like I said, the code is perfectly valid, it just doesnt work for low end cards. If anyone knows how to set up D3D with less hardware capabilities, I would sure like to know...

Share this post


Link to post
Share on other sites