본문 바로가기

예전/3D

D3D11 wireframe



// 선언


ID3D11RasterizerState* WireFrame;

ID3D11RasterizerState* FillFrame;



// 초기화



D3D11_RASTERIZER_DESC wfdesc;

ZeroMemory(&wfdesc,sizeof(D3D11_RASTERIZER_DESC));


wfdesc.FillMode = D3D11_FILL_WIREFRAME;

wfdesc.CullMode = D3D11_CULL_NONE;                    // culling을 none으로 해줬다가

_pd3dDevice->CreateRasterizerState(&wfdesc,&WireFrame);

wfdesc.FillMode = D3D11_FILL_SOLID;

wfdesc.CullMode = D3D11_CULL_BACK;                    // 다시 back culling으로 바꿔줘야 한다. 

_pd3dDevice->CreateRasterizerState(&wfdesc,&FillFrame);


// 렌더


// wire frame으로 렌더

_pd3dDeviceContext->RSSetState(WireFrame);


/* 렌더할 것 렌더하기 */

// 다시 solid frame으로 바꿔줘야 다음 것에서 solid로 렌더된다.

_pd3dDeviceContext->RSSetState(FillFrame);




[참고] http://www.braynzarsoft.net/index.php?p=D3D11RS



'예전 > 3D' 카테고리의 다른 글

어파인 공간  (0) 2014.12.09
동차좌표  (0) 2014.12.05
Direct3D의 그리기 2. 정점 버퍼  (0) 2014.04.06
Direct3D의 그리기 1 정점의 입력과 배치  (0) 2014.04.01
DirectX11 초기화  (2) 2014.03.31