디시인사이드 갤러리

갤러리 이슈박스, 최근방문 갤러리

갤러리 본문 영역

다이렉트x랑 api 소스 질문인데 알고있는분 있나요?

dire(116.43) 2010.01.07 16:24:06
조회 121 추천 0 댓글 12

월래 제가 directx 소스에 api 윈도우로 등록할려구 밑에 소스처럼 바꾸었어요
(바꾼 부분은 진하게 표시했음)

월래 소스대로 하면  밑에 소스에서 처럼 등록하는거에요
(밑에 원래 소스 있음)



#include <windows.h>해서 윈도우를 등록하니까
창크기조절에 갖다대면↔ 이거 표시가 실시간으로 바뀌는데
#include <d3d9.h> 이것만 쓰니까
창크기조절에 갖다대면 클라이언트 창에서 마우스 포인트가 실시간으로 바뀌지 않습니다
왜 그런건가요?

소스상으로는 특별히 다른점이 없는데.......

말로 설명하니까 힘드네요....

#include <d3d9.h>
#include <windows.h>

LPDIRECT3D9             g_pD3D       = NULL; /// D3D 디바이스를 생성할 D3D객체변수
LPDIRECT3DDEVICE9       g_pd3dDevice = NULL; /// 렌더링에 사용될 D3D디바이스

HRESULT InitD3D( HWND hWnd )
{
    /// 디바이스를 생성하기위한 D3D객체 생성
    if( NULL == ( g_pD3D = Direct3DCreate9( D3D_SDK_VERSION ) ) )
        return E_FAIL;

    D3DPRESENT_PARAMETERS d3dpp;                /// 디바이스 생성을 위한 구조체
    ZeroMemory( &d3dpp, sizeof(d3dpp) );        /// 반드시 ZeroMemory()함수로 미리 구조체를 깨끗이 지워야 한다.
    d3dpp.Windowed = TRUE;                      /// 창모드로 생성
    d3dpp.SwapEffect = D3DSWAPEFFECT_DISCARD;   /// 가장 효율적인 SWAP효과
    d3dpp.BackBufferFormat = D3DFMT_UNKNOWN;    /// 현재 바탕화면 모드에 맞춰서 후면버퍼를 생성

    /// 디바이스를 다음과 같은 설정으로 생성한다.
    /// 1. 디폴트 비디오카드를 사용(대부분은 비디오카드가 1개 이다.)
    /// 2. HAL디바이스를 생성한다.(HW가속장치를 사용하겠다는 의미)
    /// 3. 정점처리는 모든 카드에서 지원하는 SW처리로 생성한다.(HW로 생성할경우 더욱 높은 성능을 낸다.)
    if( FAILED( g_pD3D->CreateDevice( D3DADAPTER_DEFAULT, D3DDEVTYPE_HAL, hWnd,
                                      D3DCREATE_SOFTWARE_VERTEXPROCESSING,
                                      &d3dpp, &g_pd3dDevice ) ) )
    {
        return E_FAIL;
    }

    /// 디바이스 상태정보를 처리할경우 여기에서 한다.

    return S_OK;
}


VOID Cleanup()
{
    if( g_pd3dDevice != NULL)
        g_pd3dDevice->Release();

    if( g_pD3D != NULL)
        g_pD3D->Release();
}

VOID Render()
{
    if( NULL == g_pd3dDevice )
        return;

    /// 후면버퍼를 파란색(0,0,255)으로 지운다.
    g_pd3dDevice->Clear( 0, NULL, D3DCLEAR_TARGET, D3DCOLOR_XRGB(0,0,255), 1.0f, 0 );
    
    /// 렌더링 시작
    if( SUCCEEDED( g_pd3dDevice->BeginScene() ) )
    {
        /// 실제 렌더링 명령들이 나열될 곳
    
        /// 렌더링 종료
        g_pd3dDevice->EndScene();
    }

    /// 후면버퍼를 보이는 화면으로!
    g_pd3dDevice->Present( NULL, NULL, NULL, NULL );
}

LRESULT CALLBACK WndProc ( HWND, UINT, WPARAM, LPARAM );
HINSTANCE g_hlnst;
LPCTSTR IpszClass = TEXT( "First" );


int APIENTRY WinMain ( HINSTANCE hlnstance, HINSTANCE hPrevlnstance , LPSTR IpszCmdParam, int nCmdShow)
{
    /// 윈도우 클래스 등록
        HWND            hWnd;
        WNDCLASS        WndClass;
    g_hlnst        =    hlnstance;
        MSG                Message;

        WndClass.cbClsExtra                        = 0;
    WndClass.cbWndExtra                    = 0;
    WndClass.hbrBackground                = ( HBRUSH ) GetStockObject ( WHITE_BRUSH );
    WndClass.hCursor                            = LoadCursor ( NULL, IDC_ARROW );
    WndClass.hIcon                            = LoadIcon (NULL, IDI_APPLICATION );
    WndClass.hInstance                        = hlnstance;
    WndClass.lpfnWndProc                    = WndProc;
    WndClass.lpszClassName                = IpszClass;
    WndClass.lpszMenuName                = NULL;
    WndClass.style                                = CS_HREDRAW | CS_VREDRAW;
    RegisterClass ( &WndClass );
 
    /// 윈도우 생성
 hWnd = CreateWindow ( IpszClass, IpszClass, WS_OVERLAPPEDWINDOW, CW_USEDEFAULT, CW_USEDEFAULT, CW_USEDEFAULT,
                                        CW_USEDEFAULT, NULL, (HMENU)NULL, hlnstance, NULL );

    /// Direct3D 초기화
    if( SUCCEEDED( InitD3D( hWnd ) ) )
    {
        /// 윈도우 출력
        ShowWindow( hWnd, SW_SHOWDEFAULT );
        UpdateWindow( hWnd );

      
    }
    while ( GetMessage ( &Message, NULL, 0, 0 ))
    {
        TranslateMessage ( &Message );
        DispatchMessage ( &Message);
    }
     
    return (int)Message.wParam;
}
LRESULT CALLBACK WndProc ( HWND hWnd, UINT iMessage, WPARAM wParam, LPARAM lParam)
{
    switch ( iMessage )
    {
         case WM_DESTROY:
            Cleanup();
            PostQuitMessage( 0 );
            return 0;

        case WM_PAINT:
            Render();
         //   ValidateRect( hWnd, NULL );
            return 0;
    }
    return ( DefWindowProc ( hWnd, iMessage, wParam, lParam ));
}

==============================================================================================================
월래소스
===========================================================================================
LRESULT WINAPI MsgProc( HWND hWnd, UINT msg, WPARAM wParam, LPARAM lParam )
{
    switch( msg )
    {
        case WM_DESTROY:
            Cleanup();
            PostQuitMessage( 0 );
            return 0;

        case WM_PAINT:
            Render();
            //ValidateRect( hWnd, NULL );
            return 0;
    }

    return DefWindowProc( hWnd, msg, wParam, lParam );
}

INT WINAPI WinMain( HINSTANCE hInst, HINSTANCE, LPSTR, INT )
{
    /// 윈도우 클래스 등록
    WNDCLASSEX wc = { sizeof(WNDCLASSEX), CS_CLASSDC, MsgProc, 0L, 0L,
                      GetModuleHandle(NULL), NULL, NULL, NULL, NULL,
                      "D3D Tutorial", NULL };
    RegisterClassEx( &wc );

    /// 윈도우 생성
    HWND hWnd = CreateWindow( "D3D Tutorial", "D3D Tutorial 01: CreateDevice",
                              WS_OVERLAPPEDWINDOW, 100, 100, 300, 300,
                              GetDesktopWindow(), NULL, wc.hInstance, NULL );

    /// Direct3D 초기화
    if( SUCCEEDED( InitD3D( hWnd ) ) )
    {
        /// 윈도우 출력
        ShowWindow( hWnd, SW_SHOWDEFAULT );
        UpdateWindow( hWnd );

        /// 메시지 루프
        MSG msg;
        while( GetMessage( &msg, NULL, 0, 0 ) )
        {
            TranslateMessage( &msg );
            DispatchMessage( &msg );
        }
    }
    /// 등록된 클래스 소거
    UnregisterClass( "D3D Tutorial", wc.hInstance );
    return 0;
}






추천 비추천

0

고정닉 0

0

댓글 영역

전체 댓글 0
등록순정렬 기준선택
본문 보기

하단 갤러리 리스트 영역

왼쪽 컨텐츠 영역

갤러리 리스트 영역

갤러리 리스트
번호 제목 글쓴이 작성일 조회 추천
설문 외모와 달리 술 일절 못 마셔 가장 의외인 스타는? 운영자 24/07/01 - -
166509 그로밋님을위한 디아블로배경음악 [1] Stalingrad갤로그로 이동합니다. 10.01.15 84 0
166508 전 요즘도 디아블로하는데~ Stalingrad갤로그로 이동합니다. 10.01.15 71 0
166506 형들 xp뭐사용함? [1] arx갤로그로 이동합니다. 10.01.15 80 0
166504 자바 서브 이미지 추출 ( 다각형 ) [1] zin692갤로그로 이동합니다. 10.01.15 100 0
166503 여친님하께 이거 사주면 좋아할까? [3] 빕뱟뱟갤로그로 이동합니다. 10.01.15 185 0
166502 여자 신입 개발자 들어온다고 이력서 봤는데 대박 이뻐. [4] 물속의다이아갤로그로 이동합니다. 10.01.15 427 0
166501 아 속이 허하다. yundream(211.189) 10.01.15 98 0
166500 2주째 쉬는 중인데... [3] 잉여대장갤로그로 이동합니다. 10.01.15 118 0
166499 형들좀도와줘 ㅠㅠ [2] 늅이플머(58.145) 10.01.15 73 0
166497 난 대체로 인생이 잘 풀리는 것 같다. [6] yundream(211.189) 10.01.15 239 0
166495 내 인생이 이렇게 꼬이는 이유 [4] Gromit갤로그로 이동합니다. 10.01.15 211 0
166493 C# Ctrl + 마우스 휠 이벤트 쓰는 방법 아는횽.. [1] c샵질(118.39) 10.01.15 723 0
166492 이거 입고 외국나갈 사람 [8] 수학인(115.21) 10.01.15 310 0
166491 windows 구조와원리 이거말이야 [5] 옹이양갤로그로 이동합니다. 10.01.15 208 0
166490 시청자 입장에서는 누가 나쁜놈이냐? [5] 유리한갤로그로 이동합니다. 10.01.15 619 0
166489 지금 윤쥬림 횽아가 접속중이군요! [1] 고추장불고기갤로그로 이동합니다. 10.01.15 101 0
166487 게임 개발자/기획자 하는일이 크게틀리나요? [6] Stalingrad갤로그로 이동합니다. 10.01.15 188 0
166486 지금 2PM겔에서 신상털다가 출석요구당했네... [7] 물속의다이아갤로그로 이동합니다. 10.01.15 297 0
166485 자바랑 웹프로그래밍 [1] (122.46) 10.01.15 127 0
166484 공비님을 소환합니다. [3] 소머리국밥갤로그로 이동합니다. 10.01.15 89 0
166483 윤꿈님을 소환합니다. [2] 소머리국밥갤로그로 이동합니다. 10.01.15 101 0
166482 미라지 사용중이신 분들 게신가요 [3] Stalingrad갤로그로 이동합니다. 10.01.15 91 0
166481 C언어에 대해서 대충 알게 되었는데 다음에 뭐해야하나용? [12] 소머리국밥갤로그로 이동합니다. 10.01.15 240 0
166480 C언어를 처음 시작하는 늅을 위한 캠퍼스 C 강좌 [2] 물속의다이아갤로그로 이동합니다. 10.01.15 203 0
166479 열혈강의c 보고도 c이해를못하게된다면 [9] Stalingrad갤로그로 이동합니다. 10.01.15 221 0
166477 님들 지금 연말정산은 하고 나서 갤질 하나연? [4] 중달(121.166) 10.01.15 155 0
166476 쏠림현상 [12] yundream(211.189) 10.01.15 220 0
166473 아이피가지고 디도스공격이 가능하냐? [4] 팀포갤로그로 이동합니다. 10.01.15 195 0
166470 가난한 플머를 위한 디자인 패턴 문서 [1] 물속의다이아갤로그로 이동합니다. 10.01.15 140 0
166469 만약 삼성같은 회사가 아이폰처럼 스마트폰정책을 펼치면 말이지 [6] ㅠㅠ(118.131) 10.01.15 145 0
166467 국내 폰 제조업체들은.. [4] yundream(211.189) 10.01.15 147 0
166466 여친님께 이런거 사주면 좋아할까? [3] rntjr갤로그로 이동합니다. 10.01.15 143 0
166465 여기 알고리즘 전공하신분 많나요?? [2] R.P.M갤로그로 이동합니다. 10.01.15 128 0
166464 내 생각에 대새는 안드로이드 일듯. [25] yundream(211.189) 10.01.15 371 0
166463 ***** [3] 가난한플머(61.77) 10.01.15 131 0
166462 우와 획기적이다 [5] ㅎ3(112.222) 10.01.15 161 0
166460 c 초반부터 이해를 못하는건 내머리탓인가? [11] 융이시대♥갤로그로 이동합니다. 10.01.15 231 0
166459 정통부 없앤다고 지랄할때 말이지... [4] 물속의다이아갤로그로 이동합니다. 10.01.15 152 0
166458 나 지금 몹시 화가 나 있어 [2] ㅇㅇㅃ갤로그로 이동합니다. 10.01.15 131 0
166457 마력의 이미지 [2] 초밥술사갤로그로 이동합니다. 10.01.15 158 0
166456 학교들어가기전에, 열혈강의C를 다 따고가면 [5] Stalingrad갤로그로 이동합니다. 10.01.15 172 0
166455 배운것을 써먹을수 있는 학생이 얼마나 있을까? [2] 양희철갤로그로 이동합니다. 10.01.15 113 0
166452 회사에 정품 많이들 있냐?? [10] 앱골(220.117) 10.01.15 233 0
166451 SKT 이 새끼들은.. [2] LightEach갤로그로 이동합니다. 10.01.15 160 0
166450 오늘 드디어 구매한 책이오는날! [3] Stalingrad갤로그로 이동합니다. 10.01.15 83 0
166449 아주 골때리는 정책.. [11] rntjr갤로그로 이동합니다. 10.01.15 254 0
166447 가출 학생 발견 제보했는데.. 마음이 무겁다 [2] 양희철갤로그로 이동합니다. 10.01.15 170 0
166446 내가 링크 하나 던진다. [2] rntjr갤로그로 이동합니다. 10.01.15 179 0
166445 작업 스트레스가 심하다.. ㅇㅇㅇ(219.251) 10.01.15 74 0
166444 여친이 메신저로 동영상을 하나 보냈는데... [7] 물속의다이아갤로그로 이동합니다. 10.01.15 217 0
갤러리 내부 검색
제목+내용게시물 정렬 옵션

오른쪽 컨텐츠 영역

실시간 베스트

1/8

뉴스

디시미디어

디시이슈

1/2