float Start = 0.5f, // Linear fog distances End = 1000; // Enable fog blending. g_pd3dDevice->SetRenderState(D3DRS_FOGENABLE, TRUE); // Set the fog color. g_pd3dDevice->SetRenderState(D3DRS_FOGCOLOR, 0x00ffffff); // Set fog parameters. g_pd3dDevice->SetRenderState(D3DRS_FOGVERTEXMODE, D3DFOG_EXP); g_pd3dDevice->SetRenderState(D3DRS_FOGSTART, *(DWORD *)(&Start)); g_pd3dDevice->SetRenderState(D3DRS_FOGEND, *(DWORD *)(&End));but i see only a white screen, without any objects...where is wrong here?
Problem with fod
#1 Members - Reputation: 109
Posted 03 April 2012 - 01:21 PM
#3 Members - Reputation: 951
Posted 04 April 2012 - 08:39 AM
if(D3DFOG_LINEAR == Mode)
{
// This is what you copied, notice the condition above
g_pDevice->SetRenderState(D3DRS_FOGVERTEXMODE, Mode);
g_pDevice->SetRenderState(D3DRS_FOGSTART, *(DWORD *)(&Start));
g_pDevice->SetRenderState(D3DRS_FOGEND, *(DWORD *)(&End));
}
else
{
// This is what you want to be using, i.e. D3DFOG_LINEAR is *not* your fog mode
g_pDevice->SetRenderState(D3DRS_FOGVERTEXMODE, Mode);
g_pDevice->SetRenderState(D3DRS_FOGDENSITY, *(DWORD *)(&Density));
}
#4 Members - Reputation: 109
Posted 04 April 2012 - 11:12 AM
g_pd3dDevice->SetRenderState(D3DRS_FOGENABLE, TRUE); // Set the fog color. g_pd3dDevice->SetRenderState(D3DRS_FOGCOLOR, 0x00ffffff); // Set fog parameters. g_pd3dDevice->SetRenderState(D3DRS_FOGVERTEXMODE, D3DFOG_EXP2); g_pd3dDevice->SetRenderState(D3DRS_FOGDENSITY, 100);in this variant - i have white screen too
#5 Members - Reputation: 951
Posted 04 April 2012 - 03:55 PM
#6 Members - Reputation: 4032
Posted 04 April 2012 - 04:46 PM
It appears that the gentleman thought C++ was extremely difficult and he was overjoyed that the machine was absorbing it; he understood that good C++ is difficult but the best C++ is well-nigh unintelligible.
#8 Members - Reputation: 274
Posted 05 April 2012 - 07:19 AM
float fogStart = 0.1f;
float fogEnd = 1000.0f;
device->SetRenderState(D3DRS_FOGENABLE, TRUE);
device->SetRenderState(D3DRS_FOGSTART, *(DWORD *)&fogStart);
device->SetRenderState(D3DRS_FOGEND, *(DWORD *)&fogEnd);
device->SetRenderState(D3DRS_FOGTABLEMODE, D3DFOG_LINEAR);
#9 Members - Reputation: 4032
Posted 05 April 2012 - 07:41 AM
float Density = 0.001f; g_pd3dDevice->SetRenderState(D3DRS_FOGDENSITY, *(DWORD *)(&Density));
It appears that the gentleman thought C++ was extremely difficult and he was overjoyed that the machine was absorbing it; he understood that good C++ is difficult but the best C++ is well-nigh unintelligible.






