您最多选择25个主题
主题必须以中文或者字母或数字开头,可以包含连字符 (-),并且长度不得超过35个字符
38 行
1.4 KiB
38 行
1.4 KiB
#ifndef UNITY_LIGHTING_INCLUDED
|
|
#define UNITY_LIGHTING_INCLUDED
|
|
|
|
#include "ShaderLibrary/CommonLighting.hlsl"
|
|
#include "ShaderLibrary/CommonShadow.hlsl"
|
|
#include "ShaderLibrary/Sampling/Sampling.hlsl"
|
|
#include "ShaderLibrary/AreaLighting.hlsl"
|
|
#include "ShaderLibrary/ImageBasedLighting.hlsl"
|
|
|
|
// The light loop (or lighting architecture) is in charge to:
|
|
// - Define light list
|
|
// - Define the light loop
|
|
// - Setup the constant/data
|
|
// - Do the reflection hierarchy
|
|
// - Provide sampling function for shadowmap, ies, cookie and reflection (depends on the specific use with the light loops like index array or atlas or single and texture format (cubemap/latlong))
|
|
|
|
#define HAS_LIGHTLOOP // Allow to not define LightLoop related function in Material.hlsl
|
|
|
|
#include "../Lighting/LightDefinition.cs.hlsl"
|
|
#include "../Lighting/LightUtilities.hlsl"
|
|
|
|
#include "LightLoop/Shadow.hlsl"
|
|
|
|
#if defined(LIGHTLOOP_SINGLE_PASS) || defined(LIGHTLOOP_TILE_PASS)
|
|
#include "../Lighting/LightLoop/LightLoopDef.hlsl"
|
|
#endif
|
|
|
|
#include "../Material/Material.hlsl" // Depends on LightLoopDef and shadows
|
|
|
|
// Volumetrics have their own light loop.
|
|
#ifndef UNITY_MATERIAL_VOLUMETRIC
|
|
// LightLoop use evaluation BSDF function for light type define in Material.hlsl
|
|
#if defined(LIGHTLOOP_SINGLE_PASS) || defined(LIGHTLOOP_TILE_PASS)
|
|
#include "../Lighting/LightLoop/LightLoop.hlsl"
|
|
#endif
|
|
#endif
|
|
|
|
#endif // UNITY_LIGHTING_INCLUDED
|