少年修仙传客户端基础资源
leonard Wu
2018-08-09 a10eea6e4ce647061813519d5b0ea496f29495b9
Assets/Plugins/PostProcessing/Resources/Shaders/EyeAdaptation.cginc
@@ -1,22 +1,22 @@
#ifndef __EYE_ADAPTATION__
#define __EYE_ADAPTATION__
// Optimal values for PS4/GCN
// Using a group size of 32x32 seems to be a bit faster on Kepler/Maxwell
// Don't forget to update 'EyeAdaptationController.cs' if you change these values !
#define HISTOGRAM_BINS          64
#define HISTOGRAM_TEXELS        HISTOGRAM_BINS / 4
#define HISTOGRAM_THREAD_X      16
#define HISTOGRAM_THREAD_Y      16
float GetHistogramBinFromLuminance(float value, float2 scaleOffset)
{
    return saturate(log2(value) * scaleOffset.x + scaleOffset.y);
}
float GetLuminanceFromHistogramBin(float bin, float2 scaleOffset)
{
    return exp2((bin - scaleOffset.y) / scaleOffset.x);
}
#endif // __EYE_ADAPTATION__
#ifndef __EYE_ADAPTATION__
#define __EYE_ADAPTATION__
// Optimal values for PS4/GCN
// Using a group size of 32x32 seems to be a bit faster on Kepler/Maxwell
// Don't forget to update 'EyeAdaptationController.cs' if you change these values !
#define HISTOGRAM_BINS          64
#define HISTOGRAM_TEXELS        HISTOGRAM_BINS / 4
#define HISTOGRAM_THREAD_X      16
#define HISTOGRAM_THREAD_Y      16
float GetHistogramBinFromLuminance(float value, float2 scaleOffset)
{
    return saturate(log2(value) * scaleOffset.x + scaleOffset.y);
}
float GetLuminanceFromHistogramBin(float bin, float2 scaleOffset)
{
    return exp2((bin - scaleOffset.y) / scaleOffset.x);
}
#endif // __EYE_ADAPTATION__