diff --git a/src/DtsObject.hx b/src/DtsObject.hx index 9b72fd6a..ea716a8b 100644 --- a/src/DtsObject.hx +++ b/src/DtsObject.hx @@ -419,6 +419,7 @@ class DtsObject extends GameObject { material.blendMode = BlendMode.Alpha; material.mainPass.culling = h3d.mat.Data.Face.None; material.receiveShadows = false; + material.mainPass.depthWrite = false; } // // TODO TRANSPARENCY SHIT if (flags & 8 > 0) { diff --git a/src/InstanceManager.hx b/src/InstanceManager.hx index 2798af07..c8c15934 100644 --- a/src/InstanceManager.hx +++ b/src/InstanceManager.hx @@ -128,7 +128,8 @@ class InstanceManager { if (dtsshader != null) { minfo.meshbatch.material.mainPass.removeShader(minfo.meshbatch.material.textureShader); minfo.meshbatch.material.mainPass.addShader(dtsshader); - // minfo.meshbatch.material.mainPass.culling = mat.mainPass.culling; + minfo.meshbatch.material.mainPass.culling = mat.mainPass.culling; + minfo.meshbatch.material.mainPass.depthWrite = mat.mainPass.depthWrite; } minfo.transparencymeshbatch = new MeshBatch(cast(cast(obj, Mesh).primitive), cast(cast(obj, Mesh)).material.clone(), scene); minfo.transparencymeshbatch.material.mainPass.removeShader(minfo.meshbatch.material.textureShader); diff --git a/src/shapes/Tornado.hx b/src/shapes/Tornado.hx index 0f0cf22d..2cdf3034 100644 --- a/src/shapes/Tornado.hx +++ b/src/shapes/Tornado.hx @@ -52,7 +52,8 @@ class Tornado extends ForceObject { new Vector(1e8, 1e8, 1e8), true); for (material in this.materials) { material.blendMode = Alpha; - // material.mainPass.culling = h3d.mat.Data.Face.None; + material.mainPass.culling = h3d.mat.Data.Face.None; + material.mainPass.depthWrite = false; } onFinish(); });