From fa1380acc5ee53dfd692010471ab932ca593446c Mon Sep 17 00:00:00 2001 From: AzaezelX Date: Thu, 23 Jan 2025 11:18:52 -0600 Subject: [PATCH 1/4] add missing shaderData defines. don't ask if something exists before creating it --- .../rendering/scripts/gfxData/shaders.tscript | 64 +++++++++++++++++-- .../rendering/scripts/renderManager.tscript | 13 ++-- 2 files changed, 64 insertions(+), 13 deletions(-) diff --git a/Templates/BaseGame/game/core/rendering/scripts/gfxData/shaders.tscript b/Templates/BaseGame/game/core/rendering/scripts/gfxData/shaders.tscript index 239c76a80..699ad9ed0 100644 --- a/Templates/BaseGame/game/core/rendering/scripts/gfxData/shaders.tscript +++ b/Templates/BaseGame/game/core/rendering/scripts/gfxData/shaders.tscript @@ -140,11 +140,11 @@ singleton ShaderData( VolumetricFogReflectionShader ) }; singleton ShaderData( CubemapSaveShader ) { - DXVertexShaderFile = "shaders/common/cubemapSaveV.hlsl"; - DXPixelShaderFile = "shaders/common/cubemapSaveP.hlsl"; + DXVertexShaderFile = $Core::CommonShaderPath @ "/common/cubemapSaveV.hlsl"; + DXPixelShaderFile = $Core::CommonShaderPath @ "/common/cubemapSaveP.hlsl"; - OGLVertexShaderFile = "shaders/common/gl/cubemapSaveV.glsl"; - OGLPixelShaderFile = "shaders/common/gl/cubemapSaveP.glsl"; + OGLVertexShaderFile = $Core::CommonShaderPath @ "/common/gl/cubemapSaveV.glsl"; + OGLPixelShaderFile = $Core::CommonShaderPath @ "/common/gl/cubemapSaveP.glsl"; samplerNames[0] = "$cubemapTex"; @@ -187,4 +187,58 @@ singleton ShaderData( ThickLineGUI ) OGLPixelShaderFile = $Core::CommonShaderPath @ "/fixedFunction/gl/thickLineP.glsl"; pixVersion = 3.0; -}; \ No newline at end of file +}; + + +//~~~~~~~~~~~~~~~~~~~~//~~~~~~~~~~~~~~~~~~~~//~~~~~~~~~~~~~~~~~~~~//~~~~~~~~~~~~~~~~~~~~~// +// Arcane-FX - Shared AFX Shaders +// +// All of the non-zodiac shaders support alpha-fading. +// +// Copyright (C) Faust Logic, Inc. +//~~~~~~~~~~~~~~~~~~~~//~~~~~~~~~~~~~~~~~~~~//~~~~~~~~~~~~~~~~~~~~//~~~~~~~~~~~~~~~~~~~~~// + + +//~~~~~~~~~~~~~~~~~~~~//~~~~~~~~~~~~~~~~~~~~//~~~~~~~~~~~~~~~~~~~~//~~~~~~~~~~~~~~~~~~~~~// +// Zodiac Shaders + +new ShaderData(afxZodiacTerrainShader) +{ + DXVertexShaderFile = $Core::CommonShaderPath @ "/AFX/afxZodiac_Terrain_V.hlsl"; + DXPixelShaderFile = $Core::CommonShaderPath @ "/AFX/afxZodiac_Terrain_P.hlsl"; + + OGLVertexShaderFile = $Core::CommonShaderPath @ "/AFX/gl/afxZodiac_Terrain_V.glsl"; + OGLPixelShaderFile = $Core::CommonShaderPath @ "/AFX/gl/afxZodiac_Terrain_P.glsl"; + + samplerNames[0] = "$zodiacMap"; + + pixVersion = 1.1; +}; + +new ShaderData(afxZodiacInteriorShader) +{ + DXVertexShaderFile = $Core::CommonShaderPath @ "/AFX/afxZodiac_Interior_V.hlsl"; + DXPixelShaderFile = $Core::CommonShaderPath @ "/AFX/afxZodiac_Interior_P.hlsl"; + + OGLVertexShaderFile = $Core::CommonShaderPath @ "/AFX/gl/afxZodiac_Interior_V.glsl"; + OGLPixelShaderFile = $Core::CommonShaderPath @ "/AFX/gl/afxZodiac_Interior_P.glsl"; + + samplerNames[0] = "$zodiacMap"; + + pixVersion = 1.1; +}; + +new ShaderData(afxZodiacPolysoupShader) +{ + DXVertexShaderFile = $Core::CommonShaderPath @ "/AFX/afxZodiac_Polysoup_V.hlsl"; + DXPixelShaderFile = $Core::CommonShaderPath @ "/AFX/afxZodiac_Polysoup_P.hlsl"; + + OGLVertexShaderFile = $Core::CommonShaderPath @ "/AFX/gl/afxZodiac_Polysoup_V.glsl"; + OGLPixelShaderFile = $Core::CommonShaderPath @ "/AFX/gl/afxZodiac_Polysoup_P.glsl"; + + samplerNames[0] = "$zodiacMap"; + + pixVersion = 1.1; +}; + +//~~~~~~~~~~~~~~~~~~~~//~~~~~~~~~~~~~~~~~~~~//~~~~~~~~~~~~~~~~~~~~//~~~~~~~~~~~~~~~~~~~~~// diff --git a/Templates/BaseGame/game/core/rendering/scripts/renderManager.tscript b/Templates/BaseGame/game/core/rendering/scripts/renderManager.tscript index e3461b199..a7ca0855f 100644 --- a/Templates/BaseGame/game/core/rendering/scripts/renderManager.tscript +++ b/Templates/BaseGame/game/core/rendering/scripts/renderManager.tscript @@ -87,14 +87,11 @@ function initRenderManager() // Resolve format change token last. DiffuseRenderPassManager.addManager( new RenderPassStateBin(FinalBin) { renderOrder = 1.7; stateToken = AL_FormatToken; } ); - if(isObject(afxZodiacTerrainRenderer)) - { - DiffuseRenderPassManager.addManager( new afxZodiacTerrainRenderer() { bintype = "TerrainZodiac"; renderOrder = 1.41; processAddOrder = 1.41; } ); - DiffuseRenderPassManager.addManager( new afxZodiacPolysoupRenderer() { bintype = "PolysoupZodiac"; renderOrder = 1.42; processAddOrder = 1.42; } ); - DiffuseRenderPassManager.addManager( new afxZodiacGroundPlaneRenderer() { bintype = "GroundPlaneZodiac"; renderOrder = 1.43; processAddOrder = 1.43; } ); - DiffuseRenderPassManager.addManager( new afxZodiacMeshRoadRenderer() { bintype = "MeshRoadZodiac"; renderOrder = 1.44; processAddOrder = 1.44; } ); - DiffuseRenderPassManager.addManager( new afxRenderHighlightMgr() { renderOrder = 1.55; processAddOrder = 1.55; } ); // for selection-highlighting - } + DiffuseRenderPassManager.addManager( new afxZodiacTerrainRenderer() { bintype = "TerrainZodiac"; renderOrder = 1.41; processAddOrder = 1.41; } ); + DiffuseRenderPassManager.addManager( new afxZodiacPolysoupRenderer() { bintype = "PolysoupZodiac"; renderOrder = 1.42; processAddOrder = 1.42; } ); + DiffuseRenderPassManager.addManager( new afxZodiacGroundPlaneRenderer() { bintype = "GroundPlaneZodiac"; renderOrder = 1.43; processAddOrder = 1.43; } ); + DiffuseRenderPassManager.addManager( new afxZodiacMeshRoadRenderer() { bintype = "MeshRoadZodiac"; renderOrder = 1.44; processAddOrder = 1.44;} ); + DiffuseRenderPassManager.addManager( new afxRenderHighlightMgr() { renderOrder = 1.55; processAddOrder = 1.55;} ); // for selection-highlighting } /// This is the Default PostFX state block. Put here to prevent any missing object From 967fa62ddd809f7cc2e14badef742fee2e3c6ad7 Mon Sep 17 00:00:00 2001 From: AzaezelX Date: Thu, 23 Jan 2025 11:19:27 -0600 Subject: [PATCH 2/4] shaders/common/ no longer exists --- .../rendering/shaders/AFX/afxPostFX_Highlight_ALT_P.hlsl | 6 +++--- .../core/rendering/shaders/AFX/afxPostFX_Highlight_P.hlsl | 6 +++--- .../core/rendering/shaders/AFX/afxZodiac_Interior_P.hlsl | 2 +- .../core/rendering/shaders/AFX/afxZodiac_Interior_V.hlsl | 2 +- .../core/rendering/shaders/AFX/afxZodiac_Polysoup_P.hlsl | 2 +- .../core/rendering/shaders/AFX/afxZodiac_Polysoup_V.hlsl | 2 +- .../core/rendering/shaders/AFX/afxZodiac_Terrain_P.hlsl | 2 +- .../core/rendering/shaders/AFX/afxZodiac_Terrain_V.hlsl | 2 +- .../core/rendering/shaders/AFX/gl/afxZodiac_Polysoup_V.glsl | 2 +- .../core/rendering/shaders/AFX/gl/afxZodiac_Terrain_V.glsl | 2 +- 10 files changed, 14 insertions(+), 14 deletions(-) diff --git a/Templates/BaseGame/game/core/rendering/shaders/AFX/afxPostFX_Highlight_ALT_P.hlsl b/Templates/BaseGame/game/core/rendering/shaders/AFX/afxPostFX_Highlight_ALT_P.hlsl index 563942d8e..dbe59db3a 100644 --- a/Templates/BaseGame/game/core/rendering/shaders/AFX/afxPostFX_Highlight_ALT_P.hlsl +++ b/Templates/BaseGame/game/core/rendering/shaders/AFX/afxPostFX_Highlight_ALT_P.hlsl @@ -5,9 +5,9 @@ // (currently not used for default AFX selection-highlighting) //~~~~~~~~~~~~~~~~~~~~//~~~~~~~~~~~~~~~~~~~~//~~~~~~~~~~~~~~~~~~~~//~~~~~~~~~~~~~~~~~~~~~// -#include "../common/shaderModel.hlsl" -#include "../common/shaderModelAutoGen.hlsl" -#include "shaders/common/postFX/postFx.hlsl" +#include "../shaderModel.hlsl" +#include "../shaderModelAutoGen.hlsl" +#include "../postFX/postFx.hlsl" TORQUE_UNIFORM_SAMPLER2D(highlightBuffer,0); TORQUE_UNIFORM_SAMPLER2D(backBuffer,1); diff --git a/Templates/BaseGame/game/core/rendering/shaders/AFX/afxPostFX_Highlight_P.hlsl b/Templates/BaseGame/game/core/rendering/shaders/AFX/afxPostFX_Highlight_P.hlsl index 91a14e834..8f85b3779 100644 --- a/Templates/BaseGame/game/core/rendering/shaders/AFX/afxPostFX_Highlight_P.hlsl +++ b/Templates/BaseGame/game/core/rendering/shaders/AFX/afxPostFX_Highlight_P.hlsl @@ -4,9 +4,9 @@ // http://www.garagegames.com/community/resources/view/17821 //~~~~~~~~~~~~~~~~~~~~//~~~~~~~~~~~~~~~~~~~~//~~~~~~~~~~~~~~~~~~~~//~~~~~~~~~~~~~~~~~~~~~// -#include "../common/shaderModel.hlsl" -#include "../common/shaderModelAutoGen.hlsl" -#include "shaders/common/postFX/postFx.hlsl" +#include "../shaderModel.hlsl" +#include "../shaderModelAutoGen.hlsl" +#include "../postFX/postFx.hlsl" TORQUE_UNIFORM_SAMPLER2D(highlightBuffer,0); TORQUE_UNIFORM_SAMPLER2D(backBuffer,1); diff --git a/Templates/BaseGame/game/core/rendering/shaders/AFX/afxZodiac_Interior_P.hlsl b/Templates/BaseGame/game/core/rendering/shaders/AFX/afxZodiac_Interior_P.hlsl index ddf031a0e..b1a80548e 100644 --- a/Templates/BaseGame/game/core/rendering/shaders/AFX/afxZodiac_Interior_P.hlsl +++ b/Templates/BaseGame/game/core/rendering/shaders/AFX/afxZodiac_Interior_P.hlsl @@ -8,7 +8,7 @@ // Copyright (C) Faust Logic, Inc. //~~~~~~~~~~~~~~~~~~~~//~~~~~~~~~~~~~~~~~~~~//~~~~~~~~~~~~~~~~~~~~//~~~~~~~~~~~~~~~~~~~~~// -#include "../common/shaderModel.hlsl" +#include "../shaderModel.hlsl" struct ConnectData { diff --git a/Templates/BaseGame/game/core/rendering/shaders/AFX/afxZodiac_Interior_V.hlsl b/Templates/BaseGame/game/core/rendering/shaders/AFX/afxZodiac_Interior_V.hlsl index ceffc05e7..088bbb844 100644 --- a/Templates/BaseGame/game/core/rendering/shaders/AFX/afxZodiac_Interior_V.hlsl +++ b/Templates/BaseGame/game/core/rendering/shaders/AFX/afxZodiac_Interior_V.hlsl @@ -8,7 +8,7 @@ // Copyright (C) Faust Logic, Inc. //~~~~~~~~~~~~~~~~~~~~//~~~~~~~~~~~~~~~~~~~~//~~~~~~~~~~~~~~~~~~~~//~~~~~~~~~~~~~~~~~~~~~// -#include "../common/shaderModel.hlsl" +#include "../shaderModel.hlsl" struct VertData { float3 position : POSITION; diff --git a/Templates/BaseGame/game/core/rendering/shaders/AFX/afxZodiac_Polysoup_P.hlsl b/Templates/BaseGame/game/core/rendering/shaders/AFX/afxZodiac_Polysoup_P.hlsl index 3aff7f5c3..17b73fcc8 100644 --- a/Templates/BaseGame/game/core/rendering/shaders/AFX/afxZodiac_Polysoup_P.hlsl +++ b/Templates/BaseGame/game/core/rendering/shaders/AFX/afxZodiac_Polysoup_P.hlsl @@ -8,7 +8,7 @@ // Copyright (C) Faust Logic, Inc. //~~~~~~~~~~~~~~~~~~~~//~~~~~~~~~~~~~~~~~~~~//~~~~~~~~~~~~~~~~~~~~//~~~~~~~~~~~~~~~~~~~~~// -#include "../common/shaderModel.hlsl" +#include "../shaderModel.hlsl" struct ConnectData { diff --git a/Templates/BaseGame/game/core/rendering/shaders/AFX/afxZodiac_Polysoup_V.hlsl b/Templates/BaseGame/game/core/rendering/shaders/AFX/afxZodiac_Polysoup_V.hlsl index a1c125da1..fb8c8487c 100644 --- a/Templates/BaseGame/game/core/rendering/shaders/AFX/afxZodiac_Polysoup_V.hlsl +++ b/Templates/BaseGame/game/core/rendering/shaders/AFX/afxZodiac_Polysoup_V.hlsl @@ -8,7 +8,7 @@ // Copyright (C) Faust Logic, Inc. //~~~~~~~~~~~~~~~~~~~~//~~~~~~~~~~~~~~~~~~~~//~~~~~~~~~~~~~~~~~~~~//~~~~~~~~~~~~~~~~~~~~~// -#include "../common/shaderModel.hlsl" +#include "../shaderModel.hlsl" struct VertData { float3 position : POSITION; diff --git a/Templates/BaseGame/game/core/rendering/shaders/AFX/afxZodiac_Terrain_P.hlsl b/Templates/BaseGame/game/core/rendering/shaders/AFX/afxZodiac_Terrain_P.hlsl index 7bc1dc6e9..2381641b4 100644 --- a/Templates/BaseGame/game/core/rendering/shaders/AFX/afxZodiac_Terrain_P.hlsl +++ b/Templates/BaseGame/game/core/rendering/shaders/AFX/afxZodiac_Terrain_P.hlsl @@ -8,7 +8,7 @@ // Copyright (C) Faust Logic, Inc. //~~~~~~~~~~~~~~~~~~~~//~~~~~~~~~~~~~~~~~~~~//~~~~~~~~~~~~~~~~~~~~//~~~~~~~~~~~~~~~~~~~~~// -#include "../common/shaderModel.hlsl" +#include "../shaderModel.hlsl" struct ConnectData { diff --git a/Templates/BaseGame/game/core/rendering/shaders/AFX/afxZodiac_Terrain_V.hlsl b/Templates/BaseGame/game/core/rendering/shaders/AFX/afxZodiac_Terrain_V.hlsl index 446d9e63f..7c6794d82 100644 --- a/Templates/BaseGame/game/core/rendering/shaders/AFX/afxZodiac_Terrain_V.hlsl +++ b/Templates/BaseGame/game/core/rendering/shaders/AFX/afxZodiac_Terrain_V.hlsl @@ -8,7 +8,7 @@ // Copyright (C) Faust Logic, Inc. //~~~~~~~~~~~~~~~~~~~~//~~~~~~~~~~~~~~~~~~~~//~~~~~~~~~~~~~~~~~~~~//~~~~~~~~~~~~~~~~~~~~~// -#include "../common/shaderModel.hlsl" +#include "../shaderModel.hlsl" struct VertData { float3 position : POSITION; diff --git a/Templates/BaseGame/game/core/rendering/shaders/AFX/gl/afxZodiac_Polysoup_V.glsl b/Templates/BaseGame/game/core/rendering/shaders/AFX/gl/afxZodiac_Polysoup_V.glsl index ad3503db3..7e55dd452 100644 --- a/Templates/BaseGame/game/core/rendering/shaders/AFX/gl/afxZodiac_Polysoup_V.glsl +++ b/Templates/BaseGame/game/core/rendering/shaders/AFX/gl/afxZodiac_Polysoup_V.glsl @@ -8,7 +8,7 @@ // Copyright (C) Faust Logic, Inc. //~~~~~~~~~~~~~~~~~~~~//~~~~~~~~~~~~~~~~~~~~//~~~~~~~~~~~~~~~~~~~~//~~~~~~~~~~~~~~~~~~~~~// -#include "../../common/gl/hlslCompat.glsl" +#include "../../gl/hlslCompat.glsl" uniform mat4 modelview; diff --git a/Templates/BaseGame/game/core/rendering/shaders/AFX/gl/afxZodiac_Terrain_V.glsl b/Templates/BaseGame/game/core/rendering/shaders/AFX/gl/afxZodiac_Terrain_V.glsl index 73547b958..e42f61e9b 100644 --- a/Templates/BaseGame/game/core/rendering/shaders/AFX/gl/afxZodiac_Terrain_V.glsl +++ b/Templates/BaseGame/game/core/rendering/shaders/AFX/gl/afxZodiac_Terrain_V.glsl @@ -8,7 +8,7 @@ // Copyright (C) Faust Logic, Inc. //~~~~~~~~~~~~~~~~~~~~//~~~~~~~~~~~~~~~~~~~~//~~~~~~~~~~~~~~~~~~~~//~~~~~~~~~~~~~~~~~~~~~// -#include "../../common/gl/hlslCompat.glsl" +#include "../../gl/hlslCompat.glsl" uniform mat4 modelview; From 209abf3aa4d2ef8fa88ca64e286593b61c546367 Mon Sep 17 00:00:00 2001 From: AzaezelX Date: Thu, 23 Jan 2025 11:21:07 -0600 Subject: [PATCH 3/4] ensure zodiac texture is preloaded --- Engine/source/afx/ce/afxZodiac.cpp | 16 ++++++++++++++++ 1 file changed, 16 insertions(+) diff --git a/Engine/source/afx/ce/afxZodiac.cpp b/Engine/source/afx/ce/afxZodiac.cpp index 5d9f310ef..43717ba04 100644 --- a/Engine/source/afx/ce/afxZodiac.cpp +++ b/Engine/source/afx/ce/afxZodiac.cpp @@ -326,6 +326,22 @@ bool afxZodiacData::preload(bool server, String &errorStr) if (vert_range.x == 0.0f && vert_range.y == 0.0f) vert_range.x = vert_range.y = radius_xy; + if (mTextureAssetId != StringTable->EmptyString()) + { + mTextureAsset = mTextureAssetId; + if (mTextureAsset.notNull()) + { + if (getTexture() != StringTable->EmptyString() && mTextureName != StringTable->insert("texhandle")) + { + if (mTextureAsset.notNull()) + { + mTextureAsset->getChangedSignal().notify(this, &afxZodiacData::onImageChanged); + } + + mTexture.set(getTexture(), mTextureProfile, avar("%s() - mTextureObject (line %d)", __FUNCTION__, __LINE__)); + } + } + } return true; } From d2a1153a49594ff56f3ef6c64f8b923c92ec0a6f Mon Sep 17 00:00:00 2001 From: AzaezelX Date: Mon, 27 Jan 2025 16:29:07 -0600 Subject: [PATCH 4/4] turn zbuffer checks on, account for reverse depth changes --- Engine/source/afx/afxZodiacGroundPlaneRenderer_T3D.cpp | 2 +- Engine/source/afx/afxZodiacMeshRoadRenderer_T3D.cpp | 6 ++---- Engine/source/afx/afxZodiacPolysoupRenderer_T3D.cpp | 6 ++---- Engine/source/afx/afxZodiacTerrainRenderer_T3D.cpp | 6 ++---- Engine/source/afx/arcaneFX.cpp | 6 +++--- Engine/source/afx/ce/afxBillboard_T3D.cpp | 5 ++--- Engine/source/afx/ce/afxZodiacPlane_T3D.cpp | 2 +- 7 files changed, 13 insertions(+), 20 deletions(-) diff --git a/Engine/source/afx/afxZodiacGroundPlaneRenderer_T3D.cpp b/Engine/source/afx/afxZodiacGroundPlaneRenderer_T3D.cpp index 9dd7d018d..0aff99e6c 100644 --- a/Engine/source/afx/afxZodiacGroundPlaneRenderer_T3D.cpp +++ b/Engine/source/afx/afxZodiacGroundPlaneRenderer_T3D.cpp @@ -108,7 +108,7 @@ void afxZodiacGroundPlaneRenderer::initShader() d.zDefined = false; d.zEnable = true; d.zWriteEnable = false; - d.zFunc = GFXCmpLessEqual; + d.zFunc = GFXCmpGreaterEqual; d.zSlopeBias = 0; d.alphaDefined = true; d.alphaTestEnable = true; diff --git a/Engine/source/afx/afxZodiacMeshRoadRenderer_T3D.cpp b/Engine/source/afx/afxZodiacMeshRoadRenderer_T3D.cpp index 5d754084b..cb8fabfc5 100644 --- a/Engine/source/afx/afxZodiacMeshRoadRenderer_T3D.cpp +++ b/Engine/source/afx/afxZodiacMeshRoadRenderer_T3D.cpp @@ -105,10 +105,8 @@ void afxZodiacMeshRoadRenderer::initShader() d.cullDefined = true; d.blendDefined = true; d.blendEnable = true; - d.zDefined = false; - d.zEnable = true; - d.zWriteEnable = false; - d.zFunc = GFXCmpLessEqual; + d.setZReadWrite(true, false); + d.zFunc = GFXCmpGreaterEqual; d.zSlopeBias = 0; d.alphaDefined = true; d.alphaTestEnable = true; diff --git a/Engine/source/afx/afxZodiacPolysoupRenderer_T3D.cpp b/Engine/source/afx/afxZodiacPolysoupRenderer_T3D.cpp index d34da0f03..2e100332a 100644 --- a/Engine/source/afx/afxZodiacPolysoupRenderer_T3D.cpp +++ b/Engine/source/afx/afxZodiacPolysoupRenderer_T3D.cpp @@ -105,10 +105,8 @@ void afxZodiacPolysoupRenderer::initShader() d.cullDefined = true; d.blendDefined = true; d.blendEnable = true; - d.zDefined = false; - d.zEnable = true; - d.zWriteEnable = false; - d.zFunc = GFXCmpLessEqual; + d.setZReadWrite(true, false); + d.zFunc = GFXCmpGreaterEqual; d.zSlopeBias = 0; d.alphaDefined = true; d.alphaTestEnable = true; diff --git a/Engine/source/afx/afxZodiacTerrainRenderer_T3D.cpp b/Engine/source/afx/afxZodiacTerrainRenderer_T3D.cpp index 6e82b97a3..04c54f667 100644 --- a/Engine/source/afx/afxZodiacTerrainRenderer_T3D.cpp +++ b/Engine/source/afx/afxZodiacTerrainRenderer_T3D.cpp @@ -115,10 +115,8 @@ void afxZodiacTerrainRenderer::initShader() d.cullDefined = true; d.blendDefined = true; d.blendEnable = true; - d.zDefined = false; - d.zEnable = true; - d.zWriteEnable = false; - d.zFunc = GFXCmpLessEqual; + d.setZReadWrite(true, false); + d.zFunc = GFXCmpGreaterEqual; d.zSlopeBias = 0; d.alphaDefined = true; d.alphaTestEnable = true; diff --git a/Engine/source/afx/arcaneFX.cpp b/Engine/source/afx/arcaneFX.cpp index db3dd43a7..9b3f28eba 100644 --- a/Engine/source/afx/arcaneFX.cpp +++ b/Engine/source/afx/arcaneFX.cpp @@ -108,9 +108,9 @@ U32 arcaneFX::sTargetSelectionTimeoutMS = 500; bool arcaneFX::sClickToTargetSelf = false; U32 arcaneFX::sMissileCollisionMask = 0; StringTableEntry arcaneFX::sParameterFieldPrefix = 0; -F32 arcaneFX::sTerrainZodiacZBias = -0.00025f; -F32 arcaneFX::sInteriorZodiacZBias = -0.0001f; -F32 arcaneFX::sPolysoupZodiacZBias = -0.0001f; +F32 arcaneFX::sTerrainZodiacZBias = 0.00025f; +F32 arcaneFX::sInteriorZodiacZBias = 0.0001f; +F32 arcaneFX::sPolysoupZodiacZBias = 0.0001f; U32 arcaneFX::master_choreographer_id = 1; U16 arcaneFX::master_scope_id = 1; bool arcaneFX::is_shutdown = true; diff --git a/Engine/source/afx/ce/afxBillboard_T3D.cpp b/Engine/source/afx/ce/afxBillboard_T3D.cpp index 81d84ebc4..366a867aa 100644 --- a/Engine/source/afx/ce/afxBillboard_T3D.cpp +++ b/Engine/source/afx/ce/afxBillboard_T3D.cpp @@ -67,9 +67,8 @@ void afxBillboard::_renderBillboard(ObjectRenderInst *ri, SceneRenderState* stat desc.alphaTestRef = 1; desc.alphaTestFunc = GFXCmpGreaterEqual; - desc.setZReadWrite(true); - desc.zFunc = GFXCmpLessEqual; - desc.zWriteEnable = false; + desc.setZReadWrite(true, false); + desc.zFunc = GFXCmpGreaterEqual; desc.samplersDefined = true; diff --git a/Engine/source/afx/ce/afxZodiacPlane_T3D.cpp b/Engine/source/afx/ce/afxZodiacPlane_T3D.cpp index 59ea81763..22cb949b3 100644 --- a/Engine/source/afx/ce/afxZodiacPlane_T3D.cpp +++ b/Engine/source/afx/ce/afxZodiacPlane_T3D.cpp @@ -125,7 +125,7 @@ void afxZodiacPlane::_renderZodiacPlane(ObjectRenderInst *ri, SceneRenderState* desc.setAlphaTest(true, GFXCmpGreater, 0); desc.setZReadWrite(true); - desc.zFunc = GFXCmpLessEqual; + desc.zFunc = GFXCmpGreaterEqual; desc.zWriteEnable = false; desc.samplersDefined = true;