ABOUT ME

-

Today
-
Yesterday
-
Total
-
  • DirectDraw 기본적으로 사용하기!!!!
    프로그래밍/DirectDraw 2005. 6. 24. 05:38
    * 전체적인 순서

       1 .  DirectDraw 객체 생성

       2 .  협력수준 설정 (자원을 얼마나 쓸것인지, 전체모드, 창모드....)

          2-1.  해상도 조절 ( 전체모드 일때만 )

     

      

     

     

       ex)

         dxguid.lib , ddraw.lib 추가

         Tool->Option 에서  Include 와 라이브러리에서 DX가 가장 상위에 있게한다

     

        #include <unknwn.h>
        #include <ddraw.h>

       ...

       LPDIRECTDRAW     lpDD;
       LPDIRECTDRAW7   g_lpDD;

        .....hWnd값을 얻은 후에(SetCooperativeLevel 이 부분에서 hWnd 사용하기때문에)

       SetCooperativeLevel 윗부분은 hWnd얻기 전에 해줘도 무관하다

       if(FAILED(DirectDrawCreate(NULL,&lpDD,NULL)))
       {
            OutputDebugString( " DrawCreate 에러  ");    
       }   
       if(FAILED(lpDD->QueryInterface(IID_IDirectDraw7 , (LPVOID *)&g_lpDD)))
       {
      
       }

       if(FAILED(lpDD->Release()))      // DirectDraw겍체는 사용하지 않을때 Release()해준다
       {
       }  

       if(FAILED(g_lpDD->SetCooperativeLevel(hWnd, DDSCL_FULLSCREEN |

                                                        DDSCL_EXCLUSIVE  | DDSCL_ALLOWREBOOT )))
       {    
       }

       if(FAILED(g_lpDD->SetDisplayMode( 640, 480, 32, NULL, NULL)))
       {
       }

       .....  프로그램 종료되는 시점에서

       if(FAILED(g_lpDD->Release()))    // DirectDraw겍체는 사용하지 않을때 Release()해준다
       {
       }  

     

    댓글