MCPcopy Create free account
hub / github.com/DentonW/DevIL / RestoreDeviceObjects

Method RestoreDeviceObjects

DevIL/examples/direct3d_example/d3dtest.cpp:241–277  ·  view source on GitHub ↗

----------------------------------------------------------------------------- Name: RestoreDeviceObjects() Desc: Initialize scene objects. -----------------------------------------------------------------------------

Source from the content-addressed store, hash-verified

239// Desc: Initialize scene objects.
240//-----------------------------------------------------------------------------
241HRESULT CMyD3DApplication::RestoreDeviceObjects()
242{
243 m_pFont->RestoreDeviceObjects();
244
245 // Set the matrices
246 D3DXVECTOR3 vEye( 0.0f, 0.0f,-3.0f );
247 D3DXVECTOR3 vAt( 0.0f, 0.0f, 0.0f );
248 D3DXVECTOR3 vUp( 0.0f, 1.0f, 0.0f );
249 D3DXMATRIX matWorld, matView, matProj;
250 D3DXMatrixIdentity( &matWorld );
251 D3DXMatrixLookAtLH( &matView, &vEye,&vAt, &vUp );
252 FLOAT fAspect = m_d3dsdBackBuffer.Width / (FLOAT)m_d3dsdBackBuffer.Height;
253 D3DXMatrixPerspectiveFovLH( &matProj, D3DX_PI/4, fAspect, 1.0f, 100.0f );
254 m_pd3dDevice->SetTransform( D3DTS_WORLD, &matWorld );
255 m_pd3dDevice->SetTransform( D3DTS_VIEW, &matView );
256 m_pd3dDevice->SetTransform( D3DTS_PROJECTION, &matProj );
257
258 // Set state
259 m_pd3dDevice->SetRenderState( D3DRS_DITHERENABLE, FALSE );
260 m_pd3dDevice->SetRenderState( D3DRS_CLIPPING, FALSE );
261 m_pd3dDevice->SetRenderState( D3DRS_CULLMODE, D3DCULL_NONE );
262 m_pd3dDevice->SetRenderState( D3DRS_CLIPPING, FALSE );
263 m_pd3dDevice->SetRenderState( D3DRS_LIGHTING, FALSE );
264 m_pd3dDevice->SetRenderState( D3DRS_ZENABLE, FALSE );
265 m_pd3dDevice->SetRenderState( D3DRS_ZWRITEENABLE, FALSE );
266
267 m_pd3dDevice->SetTextureStageState( 0, D3DTSS_COLOROP, D3DTOP_SELECTARG1 );
268 m_pd3dDevice->SetTextureStageState( 0, D3DTSS_COLORARG1, D3DTA_TEXTURE );
269 m_pd3dDevice->SetTextureStageState( 0, D3DTSS_COLORARG2, D3DTA_DIFFUSE );
270 m_pd3dDevice->SetTextureStageState( 0, D3DTSS_ALPHAOP, D3DTOP_SELECTARG1 );
271 m_pd3dDevice->SetTextureStageState( 0, D3DTSS_ALPHAARG1, D3DTA_TEXTURE );
272 m_pd3dDevice->SetTextureStageState( 0, D3DTSS_ALPHAARG2, D3DTA_DIFFUSE );
273 m_pd3dDevice->SetTextureStageState( 0, D3DTSS_MINFILTER, D3DTEXF_LINEAR );
274 m_pd3dDevice->SetTextureStageState( 0, D3DTSS_MAGFILTER, D3DTEXF_LINEAR );
275
276 return S_OK;
277}
278
279
280

Callers

nothing calls this directly

Calls

no outgoing calls

Tested by

no test coverage detected