Преглед изворни кода

Merge branch 'alpha40MakeMats' of https://github.com/Azaezel/Torque3D into Preview4_0

Areloch пре 5 година
родитељ
комит
2d015bc426

+ 1 - 0
Engine/source/lighting/advanced/advancedLightManager.h

@@ -71,6 +71,7 @@ public:
 
    /// Return the lightBinManager for this light manager.
    AdvancedLightBinManager* getLightBinManager() { return mLightBinManager; }
+   RenderDeferredMgr* getDeferredRenderBin() { return mDeferredRenderBin; }
 
    // LightManager
    virtual bool isCompatible() const;

+ 14 - 0
Engine/source/materials/materialList.cpp

@@ -35,6 +35,11 @@
 #include "core/volume.h"
 #include "console/simSet.h"
 
+#include "scene/reflectionManager.h"
+#include "renderInstance/renderDeferredMgr.h"
+#include "lighting/advanced/advancedLightManager.h"
+#include "lighting/advanced/advancedLightBinManager.h"
+
 
 MaterialList::MaterialList()
 {
@@ -412,6 +417,15 @@ void MaterialList::initMatInstances(   const FeatureSet &features,
          matInst->init( MATMGR->getDefaultFeatures(), vertexFormat );
          mMatInstList[ i ] = matInst;
       }
+      else
+      {
+         REFLECTMGR->getReflectionMaterial(matInst);
+
+         // Hunt for the pre-pass manager/target
+         
+         AdvancedLightManager* lightMgr = static_cast<AdvancedLightManager*>(LIGHTMGR);
+         lightMgr->getDeferredRenderBin()->getDeferredMaterial(matInst);
+      }
    }
 
 }