public uint endPositionSSY ; // Proxy, HiZ, Linear
public float endHitWeight ; // HiZ, Linear
// 1x32 bits (padding)
public float padding ;
// 3x32 Lighting
public Vector3 lightingSampledColor ; // All
// 2x32 bits (padding)
public Vector2 padding ;
public Vector2 loopStartPositionSS { get { return new Vector2 ( loopStartPositionSSX , loopStartPositionSSY ) ; } }
public Vector2 endPositionSS { get { return new Vector2 ( endPositionSSX , endPositionSSY ) ; } }
public float debugOverlayRatio = 0.33f ;
public FullScreenDebugMode fullScreenDebugMode = FullScreenDebugMode . None ;
public float fullscreenDebugMip = 0.0f ;
public bool showSSRayGrid = true ;
public bool showSSRayDepthPyramid = true ;
public bool showSSRayGrid = false ;
public bool showSSRayDepthPyramid = false ;
public bool showSSSampledColor = false ;
public MaterialDebugSettings materialDebugSettings = new MaterialDebugSettings ( ) ;
public LightingDebugSettings lightingDebugSettings = new LightingDebugSettings ( ) ;
new DebugUI . Value { displayName = "End Linear Depth" , getter = ( ) = > screenSpaceTracingDebugData . endLinearDepth } ,
new DebugUI . Value { displayName = "End Position" , getter = ( ) = > screenSpaceTracingDebugData . endPositionSS } ,
}
} ,
new DebugUI . Container
{
displayName = "Lighting" ,
children =
{
new DebugUI . Value { displayName = "Sampled Color" , getter = ( ) = > string . Format ( "({0:F6}, {1:F6}, {2:F6})" , screenSpaceTracingDebugData . lightingSampledColor . x , screenSpaceTracingDebugData . lightingSampledColor . y , screenSpaceTracingDebugData . lightingSampledColor . z ) } ,
}
}
) ;
break ;
debugSettingsContainer . children . Add (
new DebugUI . EnumField { displayName = "Debug Mode" , getter = GetDebugLightingSubMode , setter = SetScreenSpaceTracingDebugMode , enumNames = debugScreenSpaceTracingHiZStrings , enumValues = debugScreenSpaceTracingHiZValues , onValueChanged = RefreshScreenSpaceTracingDebug } ,
new DebugUI . BoolField { displayName = "Display Grid" , getter = ( ) = > showSSRayGrid , setter = v = > showSSRayGrid = v } ,
new DebugUI . BoolField { displayName = "Display Depth" , getter = ( ) = > showSSRayDepthPyramid , setter = v = > showSSRayDepthPyramid = v }
new DebugUI . BoolField { displayName = "Display Depth" , getter = ( ) = > showSSRayDepthPyramid , setter = v = > showSSRayDepthPyramid = v } ,
new DebugUI . BoolField { displayName = "Display Sampled Color" , getter = ( ) = > showSSSampledColor , setter = v = > showSSSampledColor = v }
) ;
settingsContainer . children . Add (
new DebugUI . Container
new DebugUI . Value { displayName = "Cell Size" , getter = ( ) = > screenSpaceTracingDebugData . iterationCellSize } ,
new DebugUI . Value { displayName = "Intersection Kind" , getter = ( ) = > k_HiZIntersectionKind [ ( int ) screenSpaceTracingDebugData . iterationIntersectionKind ] } ,
}
} ,
new DebugUI . Container
{
displayName = "Lighting" ,
children =
{
new DebugUI . Value { displayName = "Sampled Color" , getter = ( ) = > string . Format ( "({0:F6}, {1:F6}, {2:F6})" , screenSpaceTracingDebugData . lightingSampledColor . x , screenSpaceTracingDebugData . lightingSampledColor . y , screenSpaceTracingDebugData . lightingSampledColor . z ) } ,
}
}
) ;
break ;
new DebugUI . Value { displayName = "Mip Level" , getter = ( ) = > screenSpaceTracingDebugData . iterationMipLevel } ,
new DebugUI . Value { displayName = "Cell Id" , getter = ( ) = > screenSpaceTracingDebugData . iterationCellId } ,
new DebugUI . Value { displayName = "Cell Size" , getter = ( ) = > screenSpaceTracingDebugData . iterationCellSize } ,
}
} ,
new DebugUI . Container
{
displayName = "Lighting" ,
children =
{
new DebugUI . Value { displayName = "Sampled Color" , getter = ( ) = > string . Format ( "({0:F6}, {1:F6}, {2:F6})" , screenSpaceTracingDebugData . lightingSampledColor . x , screenSpaceTracingDebugData . lightingSampledColor . y , screenSpaceTracingDebugData . lightingSampledColor . z ) } ,
}
}
) ;