Blender V4.3
eevee_defines.hh File Reference

Go to the source code of this file.

Macros

#define SQUARE(x)   ((x) * (x))
 
#define LUT_WORKGROUP_SIZE   16
 
#define HIZ_MIP_COUNT   7
 
#define HIZ_GROUP_SIZE   32
 
#define LIGHT_CHUNK   256
 
#define CULLING_SELECT_GROUP_SIZE   256
 
#define CULLING_SORT_GROUP_SIZE   256
 
#define CULLING_ZBIN_GROUP_SIZE   1024
 
#define CULLING_TILE_GROUP_SIZE   256
 
#define SPHERE_PROBE_REMAP_GROUP_SIZE   32
 
#define SPHERE_PROBE_GROUP_SIZE   16
 
#define SPHERE_PROBE_SELECT_GROUP_SIZE   64
 
#define SPHERE_PROBE_MIPMAP_LEVELS   5
 
#define SPHERE_PROBE_SH_GROUP_SIZE   256
 
#define SPHERE_PROBE_SH_SAMPLES_PER_GROUP   64
 
#define SPHERE_PROBE_ATLAS_MAX_SUBDIV   12
 
#define SPHERE_PROBE_ATLAS_RES   (1 << SPHERE_PROBE_ATLAS_MAX_SUBDIV)
 
#define SPHERE_PROBE_MAX_HARMONIC   SQUARE(SPHERE_PROBE_ATLAS_RES / SPHERE_PROBE_REMAP_GROUP_SIZE)
 
#define SPHERE_PROBE_MIX_START_ROUGHNESS   0.7
 
#define SPHERE_PROBE_MIX_END_ROUGHNESS   0.9
 
#define SPHERE_PROBE_MIP_MAX_ROUGHNESS   0.7
 
#define SPHERE_PROBE_MAX   128
 
#define VOLUME_PROBE_FORMAT   GPU_RGBA16F
 
#define PLANAR_PROBE_MAX   16
 
#define SHADOW_TILEMAP_RES   32
 
#define SHADOW_TILEMAP_LOD   5 /* LOG2(SHADOW_TILEMAP_RES) */
 
#define SHADOW_TILEMAP_LOD0_LEN   ((SHADOW_TILEMAP_RES / 1) * (SHADOW_TILEMAP_RES / 1))
 
#define SHADOW_TILEMAP_LOD1_LEN   ((SHADOW_TILEMAP_RES / 2) * (SHADOW_TILEMAP_RES / 2))
 
#define SHADOW_TILEMAP_LOD2_LEN   ((SHADOW_TILEMAP_RES / 4) * (SHADOW_TILEMAP_RES / 4))
 
#define SHADOW_TILEMAP_LOD3_LEN   ((SHADOW_TILEMAP_RES / 8) * (SHADOW_TILEMAP_RES / 8))
 
#define SHADOW_TILEMAP_LOD4_LEN   ((SHADOW_TILEMAP_RES / 16) * (SHADOW_TILEMAP_RES / 16))
 
#define SHADOW_TILEMAP_LOD5_LEN   ((SHADOW_TILEMAP_RES / 32) * (SHADOW_TILEMAP_RES / 32))
 
#define SHADOW_TILEMAP_PER_ROW   64
 
#define SHADOW_TILEDATA_PER_TILEMAP
 
#define SHADOW_TILEMAP_MAX_CLIPMAP_LOD   8
 
#define SHADOW_PAGE_CLEAR_GROUP_SIZE   32
 
#define SHADOW_PAGE_RES   256
 
#define SHADOW_PAGE_LOD   8 /* LOG2(SHADOW_PAGE_RES) */
 
#define SHADOW_MAP_MAX_RES   (SHADOW_PAGE_RES * SHADOW_TILEMAP_RES)
 
#define SHADOW_DEPTH_SCAN_GROUP_SIZE   8
 
#define SHADOW_AABB_TAG_GROUP_SIZE   64
 
#define SHADOW_MAX_TILEMAP   4096
 
#define SHADOW_MAX_TILE   (SHADOW_MAX_TILEMAP * SHADOW_TILEDATA_PER_TILEMAP)
 
#define SHADOW_MAX_PAGE   4096
 
#define SHADOW_BOUNDS_GROUP_SIZE   64
 
#define SHADOW_CLIPMAP_GROUP_SIZE   64
 
#define SHADOW_VIEW_MAX   64 /* Must match DRW_VIEW_MAX. */
 
#define SHADOW_RENDER_MAP_SIZE   (SHADOW_VIEW_MAX * SHADOW_TILEMAP_LOD0_LEN)
 
#define SHADOW_ATOMIC   1
 
#define SHADOW_PAGE_PER_ROW   4
 
#define SHADOW_PAGE_PER_COL   4
 
#define SHADOW_PAGE_PER_LAYER   (SHADOW_PAGE_PER_ROW * SHADOW_PAGE_PER_COL)
 
#define SHADOW_MAX_STEP   16
 
#define SHADOW_MAX_RAY   4
 
#define SHADOW_ROG_ID   0
 
#define DEFERRED_RADIANCE_FORMAT   GPU_R32UI
 
#define DEFERRED_GBUFFER_ROG_ID   0
 
#define RAYTRACE_GROUP_SIZE   8
 
#define RAYTRACE_RAYTIME_FORMAT   GPU_R32F
 
#define RAYTRACE_VARIANCE_FORMAT   GPU_R16F
 
#define SUBSURFACE_GROUP_SIZE   RAYTRACE_GROUP_SIZE
 
#define SUBSURFACE_RADIANCE_FORMAT   GPU_R11F_G11F_B10F
 
#define SUBSURFACE_OBJECT_ID_FORMAT   GPU_R16UI
 
#define FILM_GROUP_SIZE   16
 
#define MOTION_BLUR_GROUP_SIZE   32
 
#define MOTION_BLUR_DILATE_GROUP_SIZE   512
 
#define IRRADIANCE_GRID_MAX   64
 
#define DOF_TILES_SIZE   8
 
#define DOF_TILES_FLATTEN_GROUP_SIZE   DOF_TILES_SIZE
 
#define DOF_TILES_DILATE_GROUP_SIZE   8
 
#define DOF_BOKEH_LUT_SIZE   32
 
#define DOF_MAX_SLIGHT_FOCUS_RADIUS   5
 
#define DOF_SLIGHT_FOCUS_SAMPLE_MAX   16
 
#define DOF_MIP_COUNT   4
 
#define DOF_REDUCE_GROUP_SIZE   (1 << (DOF_MIP_COUNT - 1))
 
#define DOF_DEFAULT_GROUP_SIZE   32
 
#define DOF_STABILIZE_GROUP_SIZE   16
 
#define DOF_FILTER_GROUP_SIZE   8
 
#define DOF_GATHER_GROUP_SIZE   DOF_TILES_SIZE
 
#define DOF_RESOLVE_GROUP_SIZE   (DOF_TILES_SIZE * 2)
 
#define AMBIENT_OCCLUSION_PASS_TILE_SIZE   16
 
#define SURFEL_GROUP_SIZE   256
 
#define SURFEL_LIST_GROUP_SIZE   256
 
#define IRRADIANCE_GRID_GROUP_SIZE   4 /* In each dimension, so 4x4x4 workgroup size. */
 
#define IRRADIANCE_GRID_BRICK_SIZE   4 /* In each dimension, so 4x4x4 brick size. */
 
#define IRRADIANCE_BOUNDS_GROUP_SIZE   64
 
#define VOLUME_GROUP_SIZE   4
 
#define VOLUME_INTEGRATION_GROUP_SIZE   8
 
#define VOLUME_HIT_DEPTH_MAX   16
 
#define VERTEX_COPY_GROUP_SIZE   64
 
#define RBUFS_UTILITY_TEX_SLOT   2
 
#define HIZ_TEX_SLOT   3
 
#define SHADOW_TILEMAPS_TEX_SLOT   4
 
#define SHADOW_ATLAS_TEX_SLOT   5
 
#define VOLUME_PROBE_TEX_SLOT   6
 
#define SPHERE_PROBE_TEX_SLOT   7
 
#define VOLUME_SCATTERING_TEX_SLOT   8
 
#define VOLUME_TRANSMITTANCE_TEX_SLOT   9
 
#define PLANAR_PROBE_DEPTH_TEX_SLOT   10
 
#define PLANAR_PROBE_RADIANCE_TEX_SLOT   11
 
#define MATERIAL_TEXTURE_RESERVED_SLOT_FIRST   RBUFS_UTILITY_TEX_SLOT
 
#define MATERIAL_TEXTURE_RESERVED_SLOT_LAST_NO_EVAL   HIZ_TEX_SLOT
 
#define MATERIAL_TEXTURE_RESERVED_SLOT_LAST_HYBRID   SPHERE_PROBE_TEX_SLOT
 
#define MATERIAL_TEXTURE_RESERVED_SLOT_LAST_FORWARD   VOLUME_TRANSMITTANCE_TEX_SLOT
 
#define MATERIAL_TEXTURE_RESERVED_SLOT_LAST_WORLD   SPHERE_PROBE_TEX_SLOT
 
#define RBUFS_COLOR_SLOT   0
 
#define RBUFS_VALUE_SLOT   1
 
#define RBUFS_CRYPTOMATTE_SLOT   2
 
#define GBUF_CLOSURE_SLOT   3
 
#define GBUF_NORMAL_SLOT   4
 
#define GBUF_HEADER_SLOT   5
 
#define VOLUME_PROP_SCATTERING_IMG_SLOT   0
 
#define VOLUME_PROP_EXTINCTION_IMG_SLOT   1
 
#define VOLUME_PROP_EMISSION_IMG_SLOT   2
 
#define VOLUME_PROP_PHASE_IMG_SLOT   3
 
#define VOLUME_PROP_PHASE_WEIGHT_IMG_SLOT   4
 
#define VOLUME_OCCUPANCY_SLOT   5
 
#define VOLUME_HIT_DEPTH_SLOT   0
 
#define VOLUME_HIT_COUNT_SLOT   1
 
#define SHADOW_ATLAS_IMG_SLOT   4
 
#define UNIFORM_BUF_SLOT   1
 
#define IRRADIANCE_GRID_BUF_SLOT   2
 
#define SPHERE_PROBE_BUF_SLOT   3
 
#define PLANAR_PROBE_BUF_SLOT   4
 
#define VELOCITY_CAMERA_PREV_BUF   2
 
#define VELOCITY_CAMERA_CURR_BUF   3
 
#define VELOCITY_CAMERA_NEXT_BUF   4
 
#define CLIP_PLANE_BUF   5
 
#define LIGHT_CULL_BUF_SLOT   0
 
#define LIGHT_BUF_SLOT   1
 
#define LIGHT_ZBIN_BUF_SLOT   2
 
#define LIGHT_TILE_BUF_SLOT   3
 
#define IRRADIANCE_BRICK_BUF_SLOT   4
 
#define SAMPLING_BUF_SLOT   6
 
#define CRYPTOMATTE_BUF_SLOT   7
 
#define SURFEL_BUF_SLOT   4
 
#define CAPTURE_BUF_SLOT   5
 
#define SHADOW_RENDER_MAP_BUF_SLOT   3
 
#define SHADOW_PAGE_INFO_SLOT   4
 
#define SHADOW_RENDER_VIEW_BUF_SLOT   5
 
#define VELOCITY_OBJ_PREV_BUF_SLOT   0
 
#define VELOCITY_OBJ_NEXT_BUF_SLOT   1
 
#define VELOCITY_GEO_PREV_BUF_SLOT   2
 
#define VELOCITY_GEO_NEXT_BUF_SLOT   3
 
#define VELOCITY_INDIRECTION_BUF_SLOT   4
 
#define BSDF_ROUGHNESS_THRESHOLD   2e-2
 
Ray tracing Pipeline
#define RAYTRACE_RADIANCE_FORMAT   GPU_R11F_G11F_B10F
 
#define RAYTRACE_TILEMASK_FORMAT   GPU_R8UI
 

Detailed Description

List of defines that are shared with the GPUShaderCreateInfos. We do this to avoid dragging larger headers into the createInfo pipeline which would cause problems.

Definition in file eevee_defines.hh.

Macro Definition Documentation

◆ AMBIENT_OCCLUSION_PASS_TILE_SIZE

#define AMBIENT_OCCLUSION_PASS_TILE_SIZE   16

Definition at line 171 of file eevee_defines.hh.

Referenced by blender::eevee::AmbientOcclusion::sync().

◆ BSDF_ROUGHNESS_THRESHOLD

#define BSDF_ROUGHNESS_THRESHOLD   2e-2

Definition at line 270 of file eevee_defines.hh.

◆ CAPTURE_BUF_SLOT

#define CAPTURE_BUF_SLOT   5

◆ CLIP_PLANE_BUF

#define CLIP_PLANE_BUF   5

Definition at line 243 of file eevee_defines.hh.

Referenced by blender::eevee::PlanarProbePipeline::begin_sync().

◆ CRYPTOMATTE_BUF_SLOT

#define CRYPTOMATTE_BUF_SLOT   7

Definition at line 252 of file eevee_defines.hh.

Referenced by blender::eevee::Cryptomatte::bind_resources().

◆ CULLING_SELECT_GROUP_SIZE

#define CULLING_SELECT_GROUP_SIZE   256

Definition at line 31 of file eevee_defines.hh.

◆ CULLING_SORT_GROUP_SIZE

#define CULLING_SORT_GROUP_SIZE   256

Definition at line 32 of file eevee_defines.hh.

◆ CULLING_TILE_GROUP_SIZE

#define CULLING_TILE_GROUP_SIZE   256

Definition at line 34 of file eevee_defines.hh.

◆ CULLING_ZBIN_GROUP_SIZE

#define CULLING_ZBIN_GROUP_SIZE   1024

Definition at line 33 of file eevee_defines.hh.

◆ DEFERRED_GBUFFER_ROG_ID

#define DEFERRED_GBUFFER_ROG_ID   0

Definition at line 129 of file eevee_defines.hh.

◆ DEFERRED_RADIANCE_FORMAT

SUBSURFACE_GROUP_SIZE radiance_tx object_id_tx DEFERRED_RADIANCE_FORMAT   GPU_R32UI

Definition at line 128 of file eevee_defines.hh.

Referenced by blender::eevee::DeferredLayer::render().

◆ DOF_BOKEH_LUT_SIZE

#define DOF_BOKEH_LUT_SIZE   32

Definition at line 159 of file eevee_defines.hh.

Referenced by blender::eevee::DepthOfField::render().

◆ DOF_DEFAULT_GROUP_SIZE

#define DOF_DEFAULT_GROUP_SIZE   32

Definition at line 164 of file eevee_defines.hh.

Referenced by blender::eevee::DepthOfField::render().

◆ DOF_FILTER_GROUP_SIZE

#define DOF_FILTER_GROUP_SIZE   8

Definition at line 166 of file eevee_defines.hh.

Referenced by blender::eevee::DepthOfField::render().

◆ DOF_GATHER_GROUP_SIZE

#define DOF_GATHER_GROUP_SIZE   DOF_TILES_SIZE

Definition at line 167 of file eevee_defines.hh.

Referenced by blender::eevee::DepthOfField::render().

◆ DOF_MAX_SLIGHT_FOCUS_RADIUS

#define DOF_MAX_SLIGHT_FOCUS_RADIUS   5

Definition at line 160 of file eevee_defines.hh.

Referenced by blender::eevee::DepthOfField::render().

◆ DOF_MIP_COUNT

#define DOF_MIP_COUNT   4

Definition at line 162 of file eevee_defines.hh.

Referenced by blender::eevee::DepthOfField::sync().

◆ DOF_REDUCE_GROUP_SIZE

#define DOF_REDUCE_GROUP_SIZE   (1 << (DOF_MIP_COUNT - 1))

◆ DOF_RESOLVE_GROUP_SIZE

#define DOF_RESOLVE_GROUP_SIZE   (DOF_TILES_SIZE * 2)

Definition at line 168 of file eevee_defines.hh.

Referenced by blender::eevee::DepthOfField::render().

◆ DOF_SLIGHT_FOCUS_SAMPLE_MAX

#define DOF_SLIGHT_FOCUS_SAMPLE_MAX   16

Definition at line 161 of file eevee_defines.hh.

◆ DOF_STABILIZE_GROUP_SIZE

#define DOF_STABILIZE_GROUP_SIZE   16

Definition at line 165 of file eevee_defines.hh.

Referenced by blender::eevee::DepthOfField::render().

◆ DOF_TILES_DILATE_GROUP_SIZE

#define DOF_TILES_DILATE_GROUP_SIZE   8

Definition at line 158 of file eevee_defines.hh.

Referenced by blender::eevee::DepthOfField::render().

◆ DOF_TILES_FLATTEN_GROUP_SIZE

#define DOF_TILES_FLATTEN_GROUP_SIZE   DOF_TILES_SIZE

Definition at line 157 of file eevee_defines.hh.

◆ DOF_TILES_SIZE

#define DOF_TILES_SIZE   8

Definition at line 156 of file eevee_defines.hh.

Referenced by blender::eevee::DepthOfField::render().

◆ FILM_GROUP_SIZE

#define FILM_GROUP_SIZE   16

◆ GBUF_CLOSURE_SLOT

#define GBUF_CLOSURE_SLOT   3

◆ GBUF_HEADER_SLOT

#define GBUF_HEADER_SLOT   5

Definition at line 218 of file eevee_defines.hh.

◆ GBUF_NORMAL_SLOT

#define GBUF_NORMAL_SLOT   4

◆ HIZ_GROUP_SIZE

#define HIZ_GROUP_SIZE   32

Definition at line 26 of file eevee_defines.hh.

Referenced by blender::eevee::HiZBuffer::sync().

◆ HIZ_MIP_COUNT

#define HIZ_MIP_COUNT   7

◆ HIZ_TEX_SLOT

#define HIZ_TEX_SLOT   3

Definition at line 194 of file eevee_defines.hh.

◆ IRRADIANCE_BOUNDS_GROUP_SIZE

#define IRRADIANCE_BOUNDS_GROUP_SIZE   64

Definition at line 178 of file eevee_defines.hh.

Referenced by blender::eevee::IrradianceBake::surfels_create().

◆ IRRADIANCE_BRICK_BUF_SLOT

#define IRRADIANCE_BRICK_BUF_SLOT   4

Definition at line 250 of file eevee_defines.hh.

Referenced by blender::eevee::VolumeProbeModule::bind_resources().

◆ IRRADIANCE_GRID_BRICK_SIZE

#define IRRADIANCE_GRID_BRICK_SIZE   4 /* In each dimension, so 4x4x4 brick size. */

◆ IRRADIANCE_GRID_BUF_SLOT

#define IRRADIANCE_GRID_BUF_SLOT   2

Definition at line 236 of file eevee_defines.hh.

Referenced by blender::eevee::VolumeProbeModule::bind_resources().

◆ IRRADIANCE_GRID_GROUP_SIZE

#define IRRADIANCE_GRID_GROUP_SIZE   4 /* In each dimension, so 4x4x4 workgroup size. */

Definition at line 176 of file eevee_defines.hh.

Referenced by blender::eevee::IrradianceBake::surfels_create().

◆ IRRADIANCE_GRID_MAX

#define IRRADIANCE_GRID_MAX   64

Maximum number of entities inside the cache.

Definition at line 153 of file eevee_defines.hh.

Referenced by blender::eevee::VolumeProbeModule::set_view().

◆ LIGHT_BUF_SLOT

◆ LIGHT_CHUNK

#define LIGHT_CHUNK   256

Definition at line 29 of file eevee_defines.hh.

Referenced by blender::eevee::LightModule::end_sync().

◆ LIGHT_CULL_BUF_SLOT

#define LIGHT_CULL_BUF_SLOT   0

◆ LIGHT_TILE_BUF_SLOT

#define LIGHT_TILE_BUF_SLOT   3

◆ LIGHT_ZBIN_BUF_SLOT

#define LIGHT_ZBIN_BUF_SLOT   2

◆ LUT_WORKGROUP_SIZE

#define LUT_WORKGROUP_SIZE   16

Definition at line 21 of file eevee_defines.hh.

Referenced by blender::eevee::Precompute::Precompute().

◆ MATERIAL_TEXTURE_RESERVED_SLOT_FIRST

#define MATERIAL_TEXTURE_RESERVED_SLOT_FIRST   RBUFS_UTILITY_TEX_SLOT

Definition at line 206 of file eevee_defines.hh.

Referenced by blender::eevee::SamplerSlots::SamplerSlots().

◆ MATERIAL_TEXTURE_RESERVED_SLOT_LAST_FORWARD

#define MATERIAL_TEXTURE_RESERVED_SLOT_LAST_FORWARD   VOLUME_TRANSMITTANCE_TEX_SLOT

Definition at line 209 of file eevee_defines.hh.

Referenced by blender::eevee::SamplerSlots::SamplerSlots().

◆ MATERIAL_TEXTURE_RESERVED_SLOT_LAST_HYBRID

#define MATERIAL_TEXTURE_RESERVED_SLOT_LAST_HYBRID   SPHERE_PROBE_TEX_SLOT

Definition at line 208 of file eevee_defines.hh.

Referenced by blender::eevee::SamplerSlots::SamplerSlots().

◆ MATERIAL_TEXTURE_RESERVED_SLOT_LAST_NO_EVAL

#define MATERIAL_TEXTURE_RESERVED_SLOT_LAST_NO_EVAL   HIZ_TEX_SLOT

Definition at line 207 of file eevee_defines.hh.

Referenced by blender::eevee::SamplerSlots::SamplerSlots().

◆ MATERIAL_TEXTURE_RESERVED_SLOT_LAST_WORLD

#define MATERIAL_TEXTURE_RESERVED_SLOT_LAST_WORLD   SPHERE_PROBE_TEX_SLOT

Definition at line 210 of file eevee_defines.hh.

Referenced by blender::eevee::SamplerSlots::SamplerSlots().

◆ MOTION_BLUR_DILATE_GROUP_SIZE

#define MOTION_BLUR_DILATE_GROUP_SIZE   512

Definition at line 149 of file eevee_defines.hh.

◆ MOTION_BLUR_GROUP_SIZE

#define MOTION_BLUR_GROUP_SIZE   32

Definition at line 148 of file eevee_defines.hh.

Referenced by blender::eevee::MotionBlurModule::render().

◆ PLANAR_PROBE_BUF_SLOT

#define PLANAR_PROBE_BUF_SLOT   4

Definition at line 238 of file eevee_defines.hh.

Referenced by blender::eevee::PlanarProbeModule::bind_resources().

◆ PLANAR_PROBE_DEPTH_TEX_SLOT

#define PLANAR_PROBE_DEPTH_TEX_SLOT   10

Definition at line 203 of file eevee_defines.hh.

Referenced by blender::eevee::PlanarProbeModule::bind_resources().

◆ PLANAR_PROBE_MAX

#define PLANAR_PROBE_MAX   16

Limited by the performance impact it can cause. Limited by the max layer count supported by a hardware (256). Limited by the UBO size limit (16384 bytes / sizeof(PlanarProbeData)).

Definition at line 67 of file eevee_defines.hh.

Referenced by blender::eevee::PlanarProbeModule::set_view().

◆ PLANAR_PROBE_RADIANCE_TEX_SLOT

#define PLANAR_PROBE_RADIANCE_TEX_SLOT   11

Definition at line 204 of file eevee_defines.hh.

Referenced by blender::eevee::PlanarProbeModule::bind_resources().

◆ RAYTRACE_GROUP_SIZE

#define RAYTRACE_GROUP_SIZE   8

Definition at line 132 of file eevee_defines.hh.

Referenced by blender::eevee::RayTraceModule::render().

◆ RAYTRACE_RADIANCE_FORMAT

◆ RAYTRACE_RAYTIME_FORMAT

#define RAYTRACE_RAYTIME_FORMAT   GPU_R32F

Definition at line 135 of file eevee_defines.hh.

◆ RAYTRACE_TILEMASK_FORMAT

RAYTRACE_GROUP_SIZE RAYTRACE_TILEMASK_FORMAT   GPU_R8UI

Definition at line 137 of file eevee_defines.hh.

Referenced by blender::eevee::RayTraceModule::render().

◆ RAYTRACE_VARIANCE_FORMAT

#define RAYTRACE_VARIANCE_FORMAT   GPU_R16F

Definition at line 136 of file eevee_defines.hh.

◆ RBUFS_COLOR_SLOT

◆ RBUFS_CRYPTOMATTE_SLOT

#define RBUFS_CRYPTOMATTE_SLOT   2

◆ RBUFS_UTILITY_TEX_SLOT

◆ RBUFS_VALUE_SLOT

◆ SAMPLING_BUF_SLOT

#define SAMPLING_BUF_SLOT   6

Definition at line 251 of file eevee_defines.hh.

Referenced by blender::eevee::Sampling::bind_resources().

◆ SHADOW_AABB_TAG_GROUP_SIZE

#define SHADOW_AABB_TAG_GROUP_SIZE   64

Definition at line 111 of file eevee_defines.hh.

◆ SHADOW_ATLAS_IMG_SLOT

#define SHADOW_ATLAS_IMG_SLOT   4

Definition at line 230 of file eevee_defines.hh.

Referenced by blender::eevee::ShadowPipeline::sync().

◆ SHADOW_ATLAS_TEX_SLOT

#define SHADOW_ATLAS_TEX_SLOT   5

Definition at line 197 of file eevee_defines.hh.

Referenced by blender::eevee::ShadowModule::bind_resources().

◆ SHADOW_ATOMIC

#define SHADOW_ATOMIC   1

Definition at line 119 of file eevee_defines.hh.

◆ SHADOW_BOUNDS_GROUP_SIZE

#define SHADOW_BOUNDS_GROUP_SIZE   64

Definition at line 115 of file eevee_defines.hh.

Referenced by blender::eevee::ShadowModule::end_sync().

◆ SHADOW_CLIPMAP_GROUP_SIZE

#define SHADOW_CLIPMAP_GROUP_SIZE   64

Definition at line 116 of file eevee_defines.hh.

Referenced by blender::eevee::ShadowModule::end_sync().

◆ SHADOW_DEPTH_SCAN_GROUP_SIZE

#define SHADOW_DEPTH_SCAN_GROUP_SIZE   8

Definition at line 110 of file eevee_defines.hh.

Referenced by blender::eevee::ShadowModule::set_view().

◆ SHADOW_MAP_MAX_RES

#define SHADOW_MAP_MAX_RES   (SHADOW_PAGE_RES * SHADOW_TILEMAP_RES)

Definition at line 109 of file eevee_defines.hh.

◆ SHADOW_MAX_PAGE

◆ SHADOW_MAX_RAY

#define SHADOW_MAX_RAY   4

Definition at line 124 of file eevee_defines.hh.

Referenced by blender::eevee::ShadowModule::init().

◆ SHADOW_MAX_STEP

#define SHADOW_MAX_STEP   16

Definition at line 123 of file eevee_defines.hh.

Referenced by blender::eevee::ShadowModule::init().

◆ SHADOW_MAX_TILE

Definition at line 113 of file eevee_defines.hh.

Referenced by blender::draw::TestAlloc::TestAlloc().

◆ SHADOW_MAX_TILEMAP

◆ SHADOW_PAGE_CLEAR_GROUP_SIZE

#define SHADOW_PAGE_CLEAR_GROUP_SIZE   32

Definition at line 103 of file eevee_defines.hh.

◆ SHADOW_PAGE_INFO_SLOT

#define SHADOW_PAGE_INFO_SLOT   4

Definition at line 259 of file eevee_defines.hh.

Referenced by blender::eevee::ShadowPipeline::sync().

◆ SHADOW_PAGE_LOD

#define SHADOW_PAGE_LOD   8 /* LOG2(SHADOW_PAGE_RES) */

Definition at line 105 of file eevee_defines.hh.

◆ SHADOW_PAGE_PER_COL

◆ SHADOW_PAGE_PER_LAYER

◆ SHADOW_PAGE_PER_ROW

◆ SHADOW_PAGE_RES

#define SHADOW_PAGE_RES   256

Definition at line 104 of file eevee_defines.hh.

Referenced by blender::eevee::ShadowModule::begin_sync().

◆ SHADOW_RENDER_MAP_BUF_SLOT

#define SHADOW_RENDER_MAP_BUF_SLOT   3

Definition at line 258 of file eevee_defines.hh.

Referenced by blender::eevee::ShadowPipeline::sync().

◆ SHADOW_RENDER_MAP_SIZE

#define SHADOW_RENDER_MAP_SIZE   (SHADOW_VIEW_MAX * SHADOW_TILEMAP_LOD0_LEN)

Definition at line 118 of file eevee_defines.hh.

◆ SHADOW_RENDER_VIEW_BUF_SLOT

#define SHADOW_RENDER_VIEW_BUF_SLOT   5

Definition at line 260 of file eevee_defines.hh.

Referenced by blender::eevee::ShadowPipeline::sync().

◆ SHADOW_ROG_ID

#define SHADOW_ROG_ID   0

Definition at line 125 of file eevee_defines.hh.

◆ SHADOW_TILEDATA_PER_TILEMAP

◆ SHADOW_TILEMAP_LOD

#define SHADOW_TILEMAP_LOD   5 /* LOG2(SHADOW_TILEMAP_RES) */

Definition at line 82 of file eevee_defines.hh.

Referenced by blender::eevee::ShadowModule::init().

◆ SHADOW_TILEMAP_LOD0_LEN

◆ SHADOW_TILEMAP_LOD1_LEN

◆ SHADOW_TILEMAP_LOD2_LEN

◆ SHADOW_TILEMAP_LOD3_LEN

◆ SHADOW_TILEMAP_LOD4_LEN

◆ SHADOW_TILEMAP_LOD5_LEN

#define SHADOW_TILEMAP_LOD5_LEN   ((SHADOW_TILEMAP_RES / 32) * (SHADOW_TILEMAP_RES / 32))

◆ SHADOW_TILEMAP_MAX_CLIPMAP_LOD

#define SHADOW_TILEMAP_MAX_CLIPMAP_LOD   8

◆ SHADOW_TILEMAP_PER_ROW

#define SHADOW_TILEMAP_PER_ROW   64

Definition at line 90 of file eevee_defines.hh.

Referenced by blender::draw::test_eevee_shadow_tilemap_amend().

◆ SHADOW_TILEMAP_RES

#define SHADOW_TILEMAP_RES   32

◆ SHADOW_TILEMAPS_TEX_SLOT

#define SHADOW_TILEMAPS_TEX_SLOT   4

Definition at line 196 of file eevee_defines.hh.

Referenced by blender::eevee::ShadowModule::bind_resources().

◆ SHADOW_VIEW_MAX

◆ SPHERE_PROBE_ATLAS_MAX_SUBDIV

#define SPHERE_PROBE_ATLAS_MAX_SUBDIV   12

Definition at line 45 of file eevee_defines.hh.

◆ SPHERE_PROBE_ATLAS_RES

◆ SPHERE_PROBE_BUF_SLOT

#define SPHERE_PROBE_BUF_SLOT   3

Definition at line 237 of file eevee_defines.hh.

Referenced by blender::eevee::SphereProbeModule::bind_resources().

◆ SPHERE_PROBE_GROUP_SIZE

#define SPHERE_PROBE_GROUP_SIZE   16

Definition at line 39 of file eevee_defines.hh.

◆ SPHERE_PROBE_MAX

#define SPHERE_PROBE_MAX   128

Limited by the UBO size limit (16384 bytes / sizeof(SphereProbeData)).

Definition at line 57 of file eevee_defines.hh.

Referenced by blender::eevee::SphereProbeModule::set_view().

◆ SPHERE_PROBE_MAX_HARMONIC

Definition at line 48 of file eevee_defines.hh.

◆ SPHERE_PROBE_MIP_MAX_ROUGHNESS

#define SPHERE_PROBE_MIP_MAX_ROUGHNESS   0.7

Definition at line 53 of file eevee_defines.hh.

◆ SPHERE_PROBE_MIPMAP_LEVELS

#define SPHERE_PROBE_MIPMAP_LEVELS   5

Definition at line 41 of file eevee_defines.hh.

◆ SPHERE_PROBE_MIX_END_ROUGHNESS

#define SPHERE_PROBE_MIX_END_ROUGHNESS   0.9

Definition at line 51 of file eevee_defines.hh.

◆ SPHERE_PROBE_MIX_START_ROUGHNESS

#define SPHERE_PROBE_MIX_START_ROUGHNESS   0.7

Definition at line 50 of file eevee_defines.hh.

◆ SPHERE_PROBE_REMAP_GROUP_SIZE

#define SPHERE_PROBE_REMAP_GROUP_SIZE   32

Definition at line 38 of file eevee_defines.hh.

◆ SPHERE_PROBE_SELECT_GROUP_SIZE

#define SPHERE_PROBE_SELECT_GROUP_SIZE   64

Definition at line 40 of file eevee_defines.hh.

◆ SPHERE_PROBE_SH_GROUP_SIZE

#define SPHERE_PROBE_SH_GROUP_SIZE   256

Definition at line 42 of file eevee_defines.hh.

◆ SPHERE_PROBE_SH_SAMPLES_PER_GROUP

#define SPHERE_PROBE_SH_SAMPLES_PER_GROUP   64

Definition at line 43 of file eevee_defines.hh.

◆ SPHERE_PROBE_TEX_SLOT

#define SPHERE_PROBE_TEX_SLOT   7

Definition at line 199 of file eevee_defines.hh.

Referenced by blender::eevee::SphereProbeModule::bind_resources().

◆ SQUARE

#define SQUARE ( x)    ((x) * (x))

Definition at line 17 of file eevee_defines.hh.

◆ SUBSURFACE_GROUP_SIZE

#define SUBSURFACE_GROUP_SIZE   RAYTRACE_GROUP_SIZE

Definition at line 140 of file eevee_defines.hh.

Referenced by blender::eevee::SubsurfaceModule::render().

◆ SUBSURFACE_OBJECT_ID_FORMAT

#define SUBSURFACE_OBJECT_ID_FORMAT   GPU_R16UI

Definition at line 142 of file eevee_defines.hh.

Referenced by blender::eevee::SubsurfaceModule::render().

◆ SUBSURFACE_RADIANCE_FORMAT

#define SUBSURFACE_RADIANCE_FORMAT   GPU_R11F_G11F_B10F

Definition at line 141 of file eevee_defines.hh.

Referenced by blender::eevee::SubsurfaceModule::render().

◆ SURFEL_BUF_SLOT

#define SURFEL_BUF_SLOT   4

◆ SURFEL_GROUP_SIZE

#define SURFEL_GROUP_SIZE   256

Definition at line 174 of file eevee_defines.hh.

Referenced by blender::eevee::IrradianceBake::surfels_create().

◆ SURFEL_LIST_GROUP_SIZE

#define SURFEL_LIST_GROUP_SIZE   256

Definition at line 175 of file eevee_defines.hh.

Referenced by blender::eevee::IrradianceBake::raylists_build().

◆ UNIFORM_BUF_SLOT

#define UNIFORM_BUF_SLOT   1

Definition at line 234 of file eevee_defines.hh.

Referenced by blender::eevee::UniformDataModule::bind_resources().

◆ VELOCITY_CAMERA_CURR_BUF

#define VELOCITY_CAMERA_CURR_BUF   3

Definition at line 241 of file eevee_defines.hh.

Referenced by blender::eevee::VelocityModule::bind_resources().

◆ VELOCITY_CAMERA_NEXT_BUF

#define VELOCITY_CAMERA_NEXT_BUF   4

Definition at line 242 of file eevee_defines.hh.

Referenced by blender::eevee::VelocityModule::bind_resources().

◆ VELOCITY_CAMERA_PREV_BUF

#define VELOCITY_CAMERA_PREV_BUF   2

Definition at line 240 of file eevee_defines.hh.

Referenced by blender::eevee::VelocityModule::bind_resources().

◆ VELOCITY_GEO_NEXT_BUF_SLOT

#define VELOCITY_GEO_NEXT_BUF_SLOT   3

Definition at line 266 of file eevee_defines.hh.

Referenced by blender::eevee::VelocityModule::bind_resources().

◆ VELOCITY_GEO_PREV_BUF_SLOT

#define VELOCITY_GEO_PREV_BUF_SLOT   2

Definition at line 265 of file eevee_defines.hh.

Referenced by blender::eevee::VelocityModule::bind_resources().

◆ VELOCITY_INDIRECTION_BUF_SLOT

#define VELOCITY_INDIRECTION_BUF_SLOT   4

Definition at line 267 of file eevee_defines.hh.

Referenced by blender::eevee::VelocityModule::bind_resources().

◆ VELOCITY_OBJ_NEXT_BUF_SLOT

#define VELOCITY_OBJ_NEXT_BUF_SLOT   1

Definition at line 264 of file eevee_defines.hh.

Referenced by blender::eevee::VelocityModule::bind_resources().

◆ VELOCITY_OBJ_PREV_BUF_SLOT

#define VELOCITY_OBJ_PREV_BUF_SLOT   0

Definition at line 263 of file eevee_defines.hh.

Referenced by blender::eevee::VelocityModule::bind_resources().

◆ VERTEX_COPY_GROUP_SIZE

#define VERTEX_COPY_GROUP_SIZE   64

◆ VOLUME_GROUP_SIZE

#define VOLUME_GROUP_SIZE   4

◆ VOLUME_HIT_COUNT_SLOT

#define VOLUME_HIT_COUNT_SLOT   1

Definition at line 228 of file eevee_defines.hh.

◆ VOLUME_HIT_DEPTH_MAX

#define VOLUME_HIT_DEPTH_MAX   16

Definition at line 183 of file eevee_defines.hh.

◆ VOLUME_HIT_DEPTH_SLOT

#define VOLUME_HIT_DEPTH_SLOT   0

Definition at line 227 of file eevee_defines.hh.

◆ VOLUME_INTEGRATION_GROUP_SIZE

#define VOLUME_INTEGRATION_GROUP_SIZE   8

Definition at line 182 of file eevee_defines.hh.

Referenced by blender::eevee::VolumeModule::end_sync().

◆ VOLUME_OCCUPANCY_SLOT

#define VOLUME_OCCUPANCY_SLOT   5

Definition at line 225 of file eevee_defines.hh.

◆ VOLUME_PROBE_FORMAT

#define VOLUME_PROBE_FORMAT   GPU_RGBA16F

NOTE: Runtime format only.

Definition at line 60 of file eevee_defines.hh.

Referenced by blender::eevee::VolumeProbeModule::init().

◆ VOLUME_PROBE_TEX_SLOT

#define VOLUME_PROBE_TEX_SLOT   6

Definition at line 198 of file eevee_defines.hh.

Referenced by blender::eevee::VolumeProbeModule::bind_resources().

◆ VOLUME_PROP_EMISSION_IMG_SLOT

#define VOLUME_PROP_EMISSION_IMG_SLOT   2

Definition at line 222 of file eevee_defines.hh.

◆ VOLUME_PROP_EXTINCTION_IMG_SLOT

#define VOLUME_PROP_EXTINCTION_IMG_SLOT   1

Definition at line 221 of file eevee_defines.hh.

◆ VOLUME_PROP_PHASE_IMG_SLOT

#define VOLUME_PROP_PHASE_IMG_SLOT   3

Definition at line 223 of file eevee_defines.hh.

◆ VOLUME_PROP_PHASE_WEIGHT_IMG_SLOT

#define VOLUME_PROP_PHASE_WEIGHT_IMG_SLOT   4

Definition at line 224 of file eevee_defines.hh.

◆ VOLUME_PROP_SCATTERING_IMG_SLOT

#define VOLUME_PROP_SCATTERING_IMG_SLOT   0

Definition at line 220 of file eevee_defines.hh.

◆ VOLUME_SCATTERING_TEX_SLOT

#define VOLUME_SCATTERING_TEX_SLOT   8

Definition at line 200 of file eevee_defines.hh.

◆ VOLUME_TRANSMITTANCE_TEX_SLOT

#define VOLUME_TRANSMITTANCE_TEX_SLOT   9

Definition at line 201 of file eevee_defines.hh.