Blender  V3.3
Macros
eevee_defines.hh File Reference

Go to the source code of this file.

Macros

#define CULLING_BATCH_SIZE   1024
 
#define SHADOW_TILEMAP_RES   16
 
#define SHADOW_TILEMAP_LOD   4 /* LOG2(SHADOW_TILEMAP_RES) */
 
#define SHADOW_TILEMAP_PER_ROW   64
 
#define SHADOW_PAGE_COPY_GROUP_SIZE   32
 
#define SHADOW_DEPTH_SCAN_GROUP_SIZE   32
 
#define SHADOW_AABB_TAG_GROUP_SIZE   64
 
#define SHADOW_MAX_TILEMAP   4096
 
#define SHADOW_MAX_PAGE   4096
 
#define SHADOW_PAGE_PER_ROW   64
 
#define HIZ_MIP_COUNT   6u
 
#define HIZ_GROUP_SIZE   1u << (HIZ_MIP_COUNT - 2u)
 
#define RAYTRACE_GROUP_SIZE   16
 
#define RAYTRACE_MAX_TILES   (16384 / RAYTRACE_GROUP_SIZE) * (16384 / RAYTRACE_GROUP_SIZE)
 
#define LIGHTPROBE_FILTER_VIS_GROUP_SIZE   16
 
#define FILM_GROUP_SIZE   16
 

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

◆ CULLING_BATCH_SIZE

#define CULLING_BATCH_SIZE   1024

Number of items in a culling batch. Needs to be Power of 2. Must be <= to 65536. Current limiting factor is the sorting phase which is single pass and only sort within a thread-group which maximum size is 1024.

Definition at line 19 of file eevee_defines.hh.

◆ FILM_GROUP_SIZE

#define FILM_GROUP_SIZE   16

Definition at line 47 of file eevee_defines.hh.

◆ HIZ_GROUP_SIZE

#define HIZ_GROUP_SIZE   1u << (HIZ_MIP_COUNT - 2u)

Definition at line 39 of file eevee_defines.hh.

◆ HIZ_MIP_COUNT

#define HIZ_MIP_COUNT   6u

Definition at line 37 of file eevee_defines.hh.

◆ LIGHTPROBE_FILTER_VIS_GROUP_SIZE

#define LIGHTPROBE_FILTER_VIS_GROUP_SIZE   16

Definition at line 45 of file eevee_defines.hh.

◆ RAYTRACE_GROUP_SIZE

#define RAYTRACE_GROUP_SIZE   16

Definition at line 41 of file eevee_defines.hh.

◆ RAYTRACE_MAX_TILES

#define RAYTRACE_MAX_TILES   (16384 / RAYTRACE_GROUP_SIZE) * (16384 / RAYTRACE_GROUP_SIZE)

Definition at line 42 of file eevee_defines.hh.

◆ SHADOW_AABB_TAG_GROUP_SIZE

#define SHADOW_AABB_TAG_GROUP_SIZE   64

Definition at line 32 of file eevee_defines.hh.

◆ SHADOW_DEPTH_SCAN_GROUP_SIZE

#define SHADOW_DEPTH_SCAN_GROUP_SIZE   32

Definition at line 31 of file eevee_defines.hh.

◆ SHADOW_MAX_PAGE

#define SHADOW_MAX_PAGE   4096

Definition at line 34 of file eevee_defines.hh.

◆ SHADOW_MAX_TILEMAP

#define SHADOW_MAX_TILEMAP   4096

Definition at line 33 of file eevee_defines.hh.

◆ SHADOW_PAGE_COPY_GROUP_SIZE

#define SHADOW_PAGE_COPY_GROUP_SIZE   32

Definition at line 30 of file eevee_defines.hh.

◆ SHADOW_PAGE_PER_ROW

#define SHADOW_PAGE_PER_ROW   64

Definition at line 35 of file eevee_defines.hh.

◆ SHADOW_TILEMAP_LOD

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

Definition at line 28 of file eevee_defines.hh.

◆ SHADOW_TILEMAP_PER_ROW

#define SHADOW_TILEMAP_PER_ROW   64

Definition at line 29 of file eevee_defines.hh.

◆ SHADOW_TILEMAP_RES

#define SHADOW_TILEMAP_RES   16

IMPORTANT: Some data packing are tweaked for these values. Be sure to update them accordingly. SHADOW_TILEMAP_RES max is 32 because of the shared bitmaps used for LOD tagging. It is also limited by the maximum thread group size (1024).

Definition at line 27 of file eevee_defines.hh.