게시판 즐겨찾기
편집
드래그 앤 드롭으로
즐겨찾기 아이콘 위치 수정이 가능합니다.
다렉x CreateDevice 함수에서 에러가 리턴되네요
게시물ID : programmer_18243짧은주소 복사하기
작성자 : 강을오른연어
추천 : 0
조회수 : 295회
댓글수 : 1개
등록시간 : 2016/08/23 20:51:22
옵션
  • 창작글
  • 본인삭제금지
if (FAILED(g_pD3D->CreateDevice(D3DADAPTER_DEFAULT, D3DDEVTYPE_HAL, hWnd, D3DCREATE_HARDWARE_VERTEXPROCESSING, &d3dpp, &g_pd3dDevice)))

여기서 FAILED로...

전체 소스를 클래스로 나누고 있는데

windowclassex 초기화 한 이후에 

if (SUCCEEDED(InitD3D()))
{
ShowWindow(hWnd, SW_SHOWDEFAULT);
UpdateWindow(hWnd);
}

로 initd3d 함수 호출을 합니다...

initd3d 함수에서

if (NULL == (g_pD3D = Direct3DCreate9(D3D_SDK_VERSION)))
{
return E_FAIL;
} //요긴 에러가 없고

ZeroMemory(&d3dpp, sizeof(D3DPRESENT_PARAMETERS)); // d3dpp를 클래스 내부에 private 에  D3DPRESENT_PARAMETERS d3dpp; 로 선언했습니다
d3dpp.Windowed = TRUE;
d3dpp.SwapEffect = D3DSWAPEFFECT_DISCARD;
d3dpp.BackBufferFormat = D3DFMT_UNKNOWN;
d3dpp.EnableAutoDepthStencil = TRUE;
d3dpp.AutoDepthStencilFormat = D3DFMT_D16;

if (FAILED(g_pD3D->CreateDevice(D3DADAPTER_DEFAULT, D3DDEVTYPE_HAL, hWnd, D3DCREATE_HARDWARE_VERTEXPROCESSING, &d3dpp, &g_pd3dDevice)))
{
MessageBox(0, "CreateDevice E_FAIL", 0, 0);
return E_FAIL;
}

g_pd3dDevice->SetRenderState(D3DRS_CULLMODE, D3DCULL_NONE);

g_pd3dDevice->SetRenderState(D3DRS_ZENABLE, TRUE);

뭐가 문젤까요.....

g_pD3D랑 g_pd3dDevice 도 클래스 내부에  private로 

LPDIRECT3D9 g_pD3D;
LPDIRECT3DDEVICE9 g_pd3dDevice;

선언을 마치고 생성자에서 NULL로 초기화 했습니다..

왜 안될까요....
전체 추천리스트 보기
새로운 댓글이 없습니다.
새로운 댓글 확인하기
글쓰기
◀뒤로가기
PC버전
맨위로▲
공지 운영 자료창고 청소년보호