Disable fog on meshes using additive blending.

git-svn-id: svn+ssh://src.earth.threerings.net/nenya/trunk@156 ed5b42cb-e716-0410-a449-f6a68f950b19
This commit is contained in:
Andrzej Kapolka
2007-02-17 00:10:03 +00:00
parent a0a1f88278
commit a09600c969
@@ -49,6 +49,7 @@ import com.jme.scene.batch.GeomBatch;
import com.jme.scene.batch.TriangleBatch; import com.jme.scene.batch.TriangleBatch;
import com.jme.scene.state.AlphaState; import com.jme.scene.state.AlphaState;
import com.jme.scene.state.CullState; import com.jme.scene.state.CullState;
import com.jme.scene.state.FogState;
import com.jme.scene.state.LightState; import com.jme.scene.state.LightState;
import com.jme.scene.state.RenderState; import com.jme.scene.state.RenderState;
import com.jme.scene.state.TextureState; import com.jme.scene.state.TextureState;
@@ -501,6 +502,7 @@ public class ModelMesh extends TriMesh
setRenderQueueMode(Renderer.QUEUE_TRANSPARENT); setRenderQueueMode(Renderer.QUEUE_TRANSPARENT);
setRenderState(_addAlpha); setRenderState(_addAlpha);
setRenderState(_overlayZBuffer); setRenderState(_overlayZBuffer);
setRenderState(_noFog);
} else if (_transparent) { } else if (_transparent) {
setRenderQueueMode(Renderer.QUEUE_TRANSPARENT); setRenderQueueMode(Renderer.QUEUE_TRANSPARENT);
if (_translucent) { if (_translucent) {
@@ -567,6 +569,8 @@ public class ModelMesh extends TriMesh
_overlayZBuffer.setWritable(false); _overlayZBuffer.setWritable(false);
_emissiveLight = renderer.createLightState(); _emissiveLight = renderer.createLightState();
_emissiveLight.setGlobalAmbient(ColorRGBA.white); _emissiveLight.setGlobalAmbient(ColorRGBA.white);
_noFog = renderer.createFogState();
_noFog.setEnabled(false);
} }
/** /**
@@ -817,6 +821,9 @@ public class ModelMesh extends TriMesh
/** A light state that simulates emissivity. */ /** A light state that simulates emissivity. */
protected static LightState _emissiveLight; protected static LightState _emissiveLight;
/** A fog state that disables fog. */
protected static FogState _noFog;
/** Work vector to store the camera direction. */ /** Work vector to store the camera direction. */
protected static Vector3f _cdir = new Vector3f(); protected static Vector3f _cdir = new Vector3f();