Browse Source

ammend caputre mask so that skylight et al gets terrain, but skips editor-only renders

AzaezelX 2 years ago
parent
commit
5f319e50ed

+ 2 - 2
Engine/source/T3D/objectTypes.h

@@ -228,8 +228,8 @@ enum SceneObjectTypeMasks : U32
    OUTDOOR_OBJECT_TYPEMASK = (   TerrainObjectType |
                                  EnvironmentObjectType ),
 
-   SKYLIGHT_CAPTURE_TYPEMASK = (EnvironmentObjectType),
-   REFLECTION_PROBE_CAPTURE_TYPEMASK = (StaticObjectType | StaticShapeObjectType | LightObjectType)
+   SKYLIGHT_CAPTURE_TYPEMASK = (OUTDOOR_OBJECT_TYPEMASK) & ~(PhysicalZoneObjectType | MarkerObjectType | TriggerObjectType),
+   REFLECTION_PROBE_CAPTURE_TYPEMASK = (SKYLIGHT_CAPTURE_TYPEMASK | StaticObjectType | StaticShapeObjectType | LightObjectType)
 };
 
 #endif

+ 2 - 2
Engine/source/renderInstance/renderProbeMgr.cpp

@@ -560,8 +560,8 @@ void RenderProbeMgr::bakeProbe(ReflectionProbe* probe)
    ReflectorDesc reflDesc;
    reflDesc.texSize = resolution;
    reflDesc.farDist = farPlane;
-   reflDesc.detailAdjust = 1;
-   reflDesc.objectTypeMask = probe->mProbeShapeType == ReflectionProbe::ProbeInfo::Skylight ? SKYLIGHT_CAPTURE_TYPEMASK : REFLECTION_PROBE_CAPTURE_TYPEMASK;
+   reflDesc.detailAdjust = (F32)resolution;
+   reflDesc.objectTypeMask = probe->mCaptureMask;
 
    CubeReflector cubeRefl;
    cubeRefl.registerReflector(probe, &reflDesc);