Перейти к содержанию

Directx9 рисует не так как я указал


Рекомендуемые сообщения

Подскажите в чем проблема? В меню все правильно отрисовывает, а в игре какие то блики делает. Код получения девайса:

Спойлер

bool GetD3D9Device(void** pTable, size_t size) {
	if (!pTable)
		return false;

	IDirect3D9* pD3D = Direct3DCreate9(D3D_SDK_VERSION);

	if (!pD3D)
		return false;

	IDirect3DDevice9* pDummyDevice = nullptr;

	D3DPRESENT_PARAMETERS d3dpp = {};
	d3dpp.Windowed = false;
	d3dpp.SwapEffect = D3DSWAPEFFECT_DISCARD;
	d3dpp.hDeviceWindow = GetProcessWindow();

	HRESULT dummyDevCreated = pD3D->CreateDevice(D3DADAPTER_DEFAULT, D3DDEVTYPE_HAL, d3dpp.hDeviceWindow, D3DCREATE_HARDWARE_VERTEXPROCESSING, &d3dpp, &pDummyDevice);

	if (dummyDevCreated != S_OK) {
		d3dpp.Windowed = !d3dpp.Windowed;
		HRESULT dummyDevCreated = pD3D->CreateDevice(D3DADAPTER_DEFAULT, D3DDEVTYPE_HAL, d3dpp.hDeviceWindow, D3DCREATE_HARDWARE_VERTEXPROCESSING, &d3dpp, &pDummyDevice);

		if (dummyDevCreated != S_OK) {
			pD3D->Release();
			return false;
		}
	}

	memcpy(pTable, *(void***)(pDummyDevice), size);
	pDummyDevice->Release();
	pD3D->Release();
	return true;
}

 

 

Ссылка на комментарий
Поделиться на другие сайты

FarCry 3 разве на 9 директе сделана? Впрочем, неважно. Возможно, движок игры созданный тобой квадратик считает чем-то, налипшим на "камеру", и обрабатывает соответствено. По твоему коду это сказать невозможно.

Ссылка на комментарий
Поделиться на другие сайты

11 часов назад, Xipho сказал:

FarCry 3 разве на 9 директе сделана?

Там Руслан 9-11 по моему. Ну задавать можно dx. Не так давно делал к ней, помню этот момент :)

Ссылка на комментарий
Поделиться на другие сайты

5 часов назад, LIRW сказал:

Там Руслан 9-11 по моему. Ну задавать можно dx. Не так давно делал к ней, помню этот момент :)

Ну так и в чем проблема у тебя была?

Ссылка на комментарий
Поделиться на другие сайты

×
×
  • Создать...

Важная информация

Находясь на нашем сайте, Вы автоматически соглашаетесь соблюдать наши Условия использования.