diff --git a/Engine/source/environment/scatterSky.cpp b/Engine/source/environment/scatterSky.cpp index 9869bf4a7..0d7bb727b 100644 --- a/Engine/source/environment/scatterSky.cpp +++ b/Engine/source/environment/scatterSky.cpp @@ -921,6 +921,13 @@ void ScatterSky::_initMoon() features.removeFeature(MFT_ReflectionProbes); features.addFeature(MFT_isBackground); mMoonMatInst = MATMGR->createMatInstance(mMoonMatAsset->getMaterialDefinitionName(), features, getGFXVertexFormat()); + + GFXStateBlockDesc desc; + desc.setBlend(true); + desc.setAlphaTest(true); + desc.setZReadWrite(true, false); + mMoonMatInst->addStateBlockDesc(desc); + mMoonMatInst->init(features, getGFXVertexFormat()); } } diff --git a/Engine/source/environment/sun.cpp b/Engine/source/environment/sun.cpp index c7ffefa05..615337a1f 100644 --- a/Engine/source/environment/sun.cpp +++ b/Engine/source/environment/sun.cpp @@ -41,6 +41,7 @@ #include "materials/baseMatInstance.h" #include "materials/sceneData.h" #include "math/util/matrixSet.h" +#include "materials/materialFeatureTypes.h" IMPLEMENT_CO_NETOBJECT_V1(Sun); @@ -454,7 +455,21 @@ void Sun::_initCorona() if (mCoronaMaterialAsset.notNull()) { - mCoronaMatInst = MATMGR->createMatInstance(mCoronaMaterialAsset->getMaterialDefinitionName(), MATMGR->getDefaultFeatures(), getGFXVertexFormat()); + FeatureSet features = MATMGR->getDefaultFeatures(); + features.removeFeature(MFT_RTLighting); + features.removeFeature(MFT_Visibility); + features.removeFeature(MFT_ReflectionProbes); + features.addFeature(MFT_isBackground); + features.addFeature(MFT_VertLit); + + mCoronaMatInst = MATMGR->createMatInstance(mCoronaMaterialAsset->getMaterialDefinitionName(), features, getGFXVertexFormat()); + + GFXStateBlockDesc desc; + desc.setBlend(true); + desc.setAlphaTest(true); + desc.setZReadWrite(true, false); + mCoronaMatInst->addStateBlockDesc(desc); + mCoronaMatInst->init(features, getGFXVertexFormat()); } }