📄 scene.h
字号:
#ifdef CGE_HEADER_H
#ifndef CGE_SCENE_H
#define CGE_SCENE_H
namespace CGE
{
namespace SCENE
{
CGE_INLINE VOID
SetPixelFog(LPDIRECT3DDEVICE8 device,DWORD Color,DWORD Mode,FLOAT fStart,FLOAT fEnd,FLOAT fDensity)
{
CHECK_RANGE(fStart,0,fEnd);
// Enable fog blending.
device->SetRenderState(D3DRS_FOGENABLE, TRUE);
// Set the fog color.
device->SetRenderState(D3DRS_FOGCOLOR, Color);
// Set fog parameters.
if(D3DFOG_LINEAR == Mode)
{
device->SetRenderState(D3DRS_FOGTABLEMODE, Mode);
device->SetRenderState(D3DRS_FOGSTART, *(DWORD *)(&fStart));
device->SetRenderState(D3DRS_FOGEND, *(DWORD *)(&fEnd));
}
else
{
device->SetRenderState(D3DRS_FOGTABLEMODE, Mode);
device->SetRenderState(D3DRS_FOGDENSITY, *(DWORD *)(&fDensity));
}
}
CGE_INLINE VOID
SetVertexFog(LPDIRECT3DDEVICE8 device,DWORD Color,DWORD Mode,FLOAT fStart,FLOAT fEnd,BOOL bUseRange,FLOAT fDensity)
{
CHECK_RANGE(fStart,0,fEnd);
// Enable fog blending.
device->SetRenderState(D3DRS_FOGENABLE, TRUE);
// Set the fog color.
device->SetRenderState(D3DRS_FOGCOLOR, Color);
// Set fog parameters.
if(D3DFOG_LINEAR == Mode)
{
device->SetRenderState(D3DRS_FOGVERTEXMODE, Mode);
device->SetRenderState(D3DRS_FOGSTART, *(DWORD *)(&fStart));
device->SetRenderState(D3DRS_FOGEND, *(DWORD *)(&fEnd));
}
else
{
device->SetRenderState(D3DRS_FOGVERTEXMODE, Mode);
device->SetRenderState(D3DRS_FOGDENSITY, *(DWORD *)(&fDensity));
}
if(bUseRange)
device->SetRenderState(D3DRS_RANGEFOGENABLE,TRUE);
}
}
}
#endif
#endif
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -