Fix SA transparency shit

This commit is contained in:
RandomityGuy 2021-06-07 16:56:33 +05:30
parent afa0c12084
commit 46fb24d913
3 changed files with 19 additions and 8 deletions

View file

@ -341,9 +341,20 @@ class DtsObject extends GameObject {
// } // }
// TODO TRANSLUENCY SHIT // TODO TRANSLUENCY SHIT
} }
if (material.texture == null) {
var dtsshader = new DtsTexture();
dtsshader.currentOpacity = 1;
// Make a 1x1 white texture
var bitmap = new hxd.BitmapData(1, 1);
bitmap.setPixel(0, 0, 0xFFFFFF);
var texture = new Texture(1, 1);
texture.uploadBitmap(bitmap);
dtsshader.texture = texture;
material.mainPass.addShader(dtsshader);
}
if (flags & 4 > 0) { if (flags & 4 > 0) {
material.blendMode = BlendMode.Alpha; material.blendMode = BlendMode.Alpha;
// material.mainPass.culling = h3d.mat.Data.Face.Front; material.mainPass.culling = h3d.mat.Data.Face.Front;
} }
// TODO TRANSPARENCY SHIT // TODO TRANSPARENCY SHIT
if (flags & 8 > 0) if (flags & 8 > 0)

View file

@ -95,13 +95,13 @@ class Main extends hxd.App {
// sj.x = 3; // sj.x = 3;
// world.addDtsObject(sj); // world.addDtsObject(sj);
var sb = new Helicopter(); // var sb = new SuperBounce();
sb.y = 3; // sb.y = 3;
world.addDtsObject(sb); // world.addDtsObject(sb);
// var sh = new ShockAbsorber(); var sh = new ShockAbsorber();
// sh.y = -3; sh.y = -3;
// world.addDtsObject(sh); world.addDtsObject(sh);
// var he = new Helicopter(); // var he = new Helicopter();
// world.addDtsObject(he); // world.addDtsObject(he);

View file

@ -27,7 +27,7 @@ class DtsTexture extends hxsl.Shader {
pixelColor *= c; pixelColor *= c;
if (specularAlpha) if (specularAlpha)
specColor *= c.aaa; specColor *= c.aaa;
pixelColor.a *= currentOpacity; pixelColor.a = c.a * currentOpacity;
} }
} }