I would like the effect that nodes disappear into the fog and appear from the fog naturally. Can I do so? How likely?
1-near

2-distant

3-far more distant

Code: Select all
mesh->setMaterialFlag(EMF_FOG_ENABLE, true);
Code: Select all
ITerrainSceneNode* terrain = smgr->addTerrainSceneNode(
"terrain.bmp",
0, // parent node
-1, // node id
vector3df(-400.f, 0.f, -400.f), // position
vector3df(0.f, 0.f, 0.f), // rotation
vector3df(4.f, 0.1f, 4.f), // scale
SColor ( 255, 255, 255, 255 ), // vertexColor,
5, // maxLOD
ETPS_17, // patchSize
4 // smoothFactor
);
terrain->setMaterialTexture(0, driver->getTexture("terrain_texture.bmp"));
terrain->setMaterialType(EMT_DETAIL_MAP);
terrain->setMaterialFlag(EMF_LIGHTING, false);
Code: Select all
for (i = 0; i < node->getMaterialCount(); i++)
{
node->getMaterial(i).FogEnabled = true;
}
Ehh, what now? Of course terrain has the setMaterialFlag, because it's an ISceneNode...gogo wrote: However ITerrainSceneNode does not have "setMaterialFlag", so fog cannot be applied about terrain.Code: Select all
terrain->setMaterialFlag(EMF_LIGHTING, false);