Mercurial > mm7
comparison Render.cpp @ 58:764abc86ce90
22.01.13
author | Ritor1 |
---|---|
date | Tue, 22 Jan 2013 00:59:02 +0600 |
parents | 86d05cff0a35 |
children | 285e144d0b8b |
comparison
equal
deleted
inserted
replaced
57:8af333180755 | 58:764abc86ce90 |
---|---|
7081 return; | 7081 return; |
7082 | 7082 |
7083 if (pRenderD3D) | 7083 if (pRenderD3D) |
7084 { | 7084 { |
7085 pGame->draw_debug_outlines(); | 7085 pGame->draw_debug_outlines(); |
7086 //DoRenderBillboards_D3D(); //Ritor1: it's temporarily | 7086 DoRenderBillboards_D3D(); //Ritor1: it's temporarily |
7087 pGame->pStru6Instance->RenderSpecialEffects(); | 7087 pGame->pStru6Instance->RenderSpecialEffects(); |
7088 pRenderD3D->pDevice->EndScene(); | 7088 pRenderD3D->pDevice->EndScene(); |
7089 } | 7089 } |
7090 else | 7090 else |
7091 pGame->pStru6Instance->RenderSpecialEffects(); | 7091 pGame->pStru6Instance->RenderSpecialEffects(); |
8226 auto a1 = this; | 8226 auto a1 = this; |
8227 a3 = a1; | 8227 a3 = a1; |
8228 if ( a1->uNumD3DSceneBegins ) | 8228 if ( a1->uNumD3DSceneBegins ) |
8229 { | 8229 { |
8230 v5 = a2; | 8230 v5 = a2; |
8231 v6 = (double)HIWORD(a2->sZValue); | 8231 v6 = (double)a2->sZValue; //Ritor1:begin pBillboardRenderListD3D |
8232 v31 = v6; | 8232 v31 = v6; |
8233 v7 = v6; | 8233 v7 = v6; |
8234 v8 = Billboard_ProbablyAddToListAndSortByZOrder(LODWORD(v7)); | 8234 v8 = Billboard_ProbablyAddToListAndSortByZOrder(v7); |
8235 if ( BYTE3(v5->uTintColor) ) | 8235 if ( v5->uTintColor ) |
8236 pBillboardRenderListD3D[v8].uOpacity = RenderBillboardD3D::Opaque_3; | 8236 pBillboardRenderListD3D[v8].uOpacity = RenderBillboardD3D::Opaque_3; |
8237 else | 8237 else |
8238 pBillboardRenderListD3D[v8].uOpacity = RenderBillboardD3D::Transparent; | 8238 pBillboardRenderListD3D[v8].uOpacity = RenderBillboardD3D::Transparent; |
8239 v9 = pSprite; | 8239 v9 = pSprite; |
8240 pBillboardRenderListD3D[v8].field_90 = v5->field_44; | 8240 pBillboardRenderListD3D[v8].field_90 = v5->field_44; |
8265 pBillboardRenderListD3D[v8].pQuards[0].pos.x = pBillboarda - pSpritea * v30; | 8265 pBillboardRenderListD3D[v8].pQuards[0].pos.x = pBillboarda - pSpritea * v30; |
8266 a1b = (double)v23; | 8266 a1b = (double)v23; |
8267 pBillboardRenderListD3D[v8].pQuards[0].pos.y = a1b - v26 * v29; | 8267 pBillboardRenderListD3D[v8].pQuards[0].pos.y = a1b - v26 * v29; |
8268 v27 = v31 * 1000.0; | 8268 v27 = v31 * 1000.0; |
8269 v13 = 1.0; | 8269 v13 = 1.0; |
8270 pBillboardRenderListD3D[v8].pQuards[0].pos.z = 1.0 | 8270 pBillboardRenderListD3D[v8].pQuards[0].pos.z = 1.0 - 1.0 / (v27 / (double)pOutdoorCamera->shading_dist_mist); |
8271 - 1.0 / (v27 / (double)pOutdoorCamera->shading_dist_mist); | |
8272 v25 = 1.0 / v31; | 8271 v25 = 1.0 / v31; |
8273 pBillboardRenderListD3D[v8].pQuards[0].rhw = v25; | 8272 pBillboardRenderListD3D[v8].pQuards[0].rhw = v25; |
8274 if ( a3->bUsingSpecular ) | 8273 if ( a3->bUsingSpecular ) |
8275 { | 8274 { |
8276 v12 = sub_47C3D7_get_fog_related_stuff(0, 0, v31); | 8275 v12 = sub_47C3D7_get_fog_related_stuff(0, 0, v31); |
11082 | 11081 |
11083 | 11082 |
11084 //----- (004A1C1E) -------------------------------------------------------- | 11083 //----- (004A1C1E) -------------------------------------------------------- |
11085 void DoRenderBillboards_D3D() | 11084 void DoRenderBillboards_D3D() |
11086 { | 11085 { |
11087 ErrD3D(pRenderer->pRenderD3D->pDevice->SetTextureStageState(0, D3DTSS_ADDRESS, 3u)); | 11086 ErrD3D(pRenderer->pRenderD3D->pDevice->SetTextureStageState(0, D3DTSS_ADDRESS, 3)); |
11088 ErrD3D(pRenderer->pRenderD3D->pDevice->SetRenderState(D3DRENDERSTATE_ALPHABLENDENABLE, 1u)); | 11087 ErrD3D(pRenderer->pRenderD3D->pDevice->SetRenderState(D3DRENDERSTATE_ALPHABLENDENABLE, 1)); |
11089 ErrD3D(pRenderer->pRenderD3D->pDevice->SetRenderState(D3DRENDERSTATE_ZWRITEENABLE, 0)); | 11088 ErrD3D(pRenderer->pRenderD3D->pDevice->SetRenderState(D3DRENDERSTATE_ZWRITEENABLE, 0)); |
11090 ErrD3D(pRenderer->pRenderD3D->pDevice->SetRenderState(D3DRENDERSTATE_CULLMODE, 1u)); | 11089 ErrD3D(pRenderer->pRenderD3D->pDevice->SetRenderState(D3DRENDERSTATE_CULLMODE, 1)); |
11091 | 11090 |
11092 for (uint i = pRenderer->uNumBillboardsToDraw - 1; i != (uint)-1; --i) | 11091 for (uint i = pRenderer->uNumBillboardsToDraw - 1; i != (uint)-1; --i) |
11093 { | 11092 { |
11094 auto p = pRenderer->pBillboardRenderListD3D + i; | 11093 auto p = pRenderer->pBillboardRenderListD3D + i; |
11095 | 11094 |