ether->sfxtype = NOSFX ether->sfx = NULL
The values assigned above are the default ether variables. To apply fog to the ether you define sfxtype as GASEOUS and sfx as a pointer to a GasSFX. The GasSFX constructor requires the type of gas and a transformation which positions the gas in the scene. As the fog gas is the same throughout space it can just be postioned at the origin.
transform gastrans; Transform::unit(gastrans);//The identity transform. Positions at origin ether->sfxtype = GASEOUS; ether->sfx = (void *) (new GasSFX(new Fog(1.0, 1.0, 1.0, 0.75), gastrans));