Blender V4.3
eevee_shadow_info.hh File Reference

Go to the source code of this file.

Shadow pipeline

#define SHADOW_TILE_DATA_PACKED   "uint"
 
#define SHADOW_PAGE_PACKED   "uint"
 
#define PAGE_Z_TYPE   Type::UINT
 
 ShadowTileMapClip
 
 LightData
 
light_buf[] uint
 
light_buf[] casters_id_buf[] ObjectBounds
 
light_buf[] casters_id_buf[] bounds_buf[] storage_buf(7, Qualifier::READ_WRITE, "ShadowTileMapClip", "tilemaps_clip_buf[]") .push_constant(Type SHADOW_TILEMAP_RES SHADOW_TILE_DATA_PACKED
 
light_buf[] casters_id_buf[] bounds_buf[] storage_buf(7, Qualifier::READ_WRITE, "ShadowTileMapClip", "tilemaps_clip_buf[]") .push_constant(Type SHADOW_TILEMAP_RES tiles_buf[] uvec2
 
SHADOW_DEPTH_SCAN_GROUP_SIZE tiles_buf[] draw_view
 
SHADOW_DEPTH_SCAN_GROUP_SIZE tiles_buf[] draw_view_culling
 
SHADOW_DEPTH_SCAN_GROUP_SIZE tiles_buf[] eevee_hiz_data
 
 ShadowTileMapData
 
tilemaps_buf[] storage_buf(7, Qualifier::READ_WRITE, SHADOW_TILE_DATA_PACKED, "tiles_buf[]") .push_constant(Type smooth(Type::VEC3, "P") .smooth(Type flat(Type::VEC3, "ls_aabb_min") .flat(Type pos tilemaps_buf[] storage_buf(6, Qualifier::READ_WRITE, SHADOW_TILE_DATA_PACKED, "tiles_buf[]") .push_constant(Type VOLUME_GROUP_SIZE
 
tilemaps_buf[] ShadowPagesInfoData
 
tiles_buf[] pages_free_buf[] DispatchCommand
 
tiles_buf[] pages_free_buf[] clear_dispatch_buf ShadowStatistics
 
SHADOW_TILEMAP_RES tiles_buf[] statistics_buf ShadowRenderView
 
SHADOW_TILEMAP_RES tiles_buf[] statistics_buf render_view_buf[SHADOW_VIEW_MAXGPU_R32UI
 
SHADOW_TILEMAP_RES render_view_buf[SHADOW_VIEW_MAX] clear_dispatch_buf SHADOW_PAGE_PACKED
 
SHADOW_TILEMAP_RES LightCullingData
 
SHADOW_PAGE_CLEAR_GROUP_SIZE dst_coord_buf[SHADOW_RENDER_MAP_SIZEshadow_atlas_img
 
 do_static_compilation (true) .local_group_size(SHADOW_CLIPMAP_GROUP_SIZE) .storage_buf(0
 
tilemaps_clip_buf[] push_constant (Type::INT, "tilemaps_clip_buf_len") .additional_info("eevee_shared") .compute_source("eevee_shadow_clipmap_clear_comp.glsl")
 
light_buf[] storage_buf (LIGHT_CULL_BUF_SLOT, Qualifier::READ, "LightCullingData", "light_cull_buf") .storage_buf(4
 
light_buf[] casters_id_buf[] storage_buf (5, Qualifier::READ_WRITE, "ShadowTileMapData", "tilemaps_buf[]") .storage_buf(6
 
light_buf[] casters_id_buf[] bounds_buf[] storage_buf(7, Qualifier::READ_WRITE, "ShadowTileMapClip", "tilemaps_clip_buf[]") .push_constant(Type SHADOW_TILEMAP_RES storage_buf (0, Qualifier::READ_WRITE, "ShadowTileMapData", "tilemaps_buf[]") .storage_buf(1
 
light_buf[] casters_id_buf[] bounds_buf[] storage_buf(7, Qualifier::READ_WRITE, "ShadowTileMapClip", "tilemaps_clip_buf[]") .push_constant(Type SHADOW_TILEMAP_RES tiles_buf[] storage_buf (2, Qualifier::READ_WRITE, "ShadowTileMapClip", "tilemaps_clip_buf[]") .storage_buf(4
 
light_buf[] casters_id_buf[] bounds_buf[] storage_buf(7, Qualifier::READ_WRITE, "ShadowTileMapClip", "tilemaps_clip_buf[]") .push_constant(Type SHADOW_TILEMAP_RES tiles_buf[] pages_cached_buf[] additional_info ("eevee_shared") .compute_source("eevee_shadow_tilemap_init_comp.glsl")
 
tiles_buf[] storage_buf (5, Qualifier::READ, "ObjectBounds", "bounds_buf[]") .storage_buf(6
 
tiles_buf[] resource_ids_buf[] additional_info ("eevee_shared", "draw_view", "draw_view_culling") .compute_source("eevee_shadow_tag_update_comp.glsl")
 
SHADOW_DEPTH_SCAN_GROUP_SIZE tiles_buf[] push_constant (Type::IVEC2, "input_depth_extent") .additional_info("eevee_shared"
 
SHADOW_DEPTH_SCAN_GROUP_SIZE tiles_buf[] eevee_light_data compute_source ("eevee_shadow_tag_usage_comp.glsl")
 
tilemaps_buf[] storage_buf(7, Qualifier::READ_WRITE, SHADOW_TILE_DATA_PACKED, "tiles_buf[]") .push_constant(Type smooth(Type::VEC3, "P") .smooth(Type flat(Type::VEC3, "ls_aabb_min") .flat(Type pos storage_buf (4, Qualifier::READ, "ObjectBounds", "bounds_buf[]") .storage_buf(5
 
tilemaps_buf[] storage_buf(7, Qualifier::READ_WRITE, SHADOW_TILE_DATA_PACKED, "tiles_buf[]") .push_constant(Type smooth(Type::VEC3, "P") .smooth(Type flat(Type::VEC3, "ls_aabb_min") .flat(Type pos tilemaps_buf[] storage_buf(6, Qualifier::READ_WRITE, SHADOW_TILE_DATA_PACKED, "tiles_buf[]") .push_constant(Type VOLUME_GROUP_SIZE storage_buf (4, Qualifier::READ_WRITE, "ShadowTileMapData", "tilemaps_buf[]") .storage_buf(5
 
tilemaps_buf[] storage_buf(7, Qualifier::READ_WRITE, SHADOW_TILE_DATA_PACKED, "tiles_buf[]") .push_constant(Type smooth(Type::VEC3, "P") .smooth(Type flat(Type::VEC3, "ls_aabb_min") .flat(Type pos tilemaps_buf[] storage_buf(6, Qualifier::READ_WRITE, SHADOW_TILE_DATA_PACKED, "tiles_buf[]") .push_constant(Type VOLUME_GROUP_SIZE tiles_buf[] additional_info ("eevee_volume_properties_data", "eevee_shared", "draw_view", "draw_view_culling", "eevee_hiz_data", "eevee_light_data", "eevee_sampling_data") .compute_source("eevee_shadow_tag_usage_volume_comp.glsl")
 
SHADOW_TILEMAP_RES push_constant (Type::INT, "max_view_per_tilemap") .storage_buf(0
 
SHADOW_TILEMAP_RES tilemaps_buf[] storage_buf (1, Qualifier::READ_WRITE, SHADOW_TILE_DATA_PACKED, "tiles_buf[]") .additional_info("eevee_shared") .compute_source("eevee_shadow_page_mask_comp.glsl")
 
tilemaps_buf[] pages_infos_buf storage_buf (3, Qualifier::READ_WRITE, "uint", "pages_free_buf[]") .storage_buf(4
 
tiles_buf[] storage_buf (2, Qualifier::READ_WRITE, "ShadowPagesInfoData", "pages_infos_buf") .storage_buf(3
 
tiles_buf[] pages_free_buf[] storage_buf (4, Qualifier::READ_WRITE, "uvec2", "pages_cached_buf[]") .storage_buf(5
 
tiles_buf[] pages_free_buf[] clear_dispatch_buf storage_buf (6, Qualifier::WRITE, "DrawCommand", "tile_draw_buf") .storage_buf(7
 
tilemaps_buf[] pages_infos_buf pages_cached_buf[] storage_buf (6, Qualifier::READ_WRITE, "ShadowStatistics", "statistics_buf") .additional_info("eevee_shared") .compute_source("eevee_shadow_page_allocate_comp.glsl")
 
SHADOW_TILEMAP_RES storage_buf (0, Qualifier::READ, "ShadowTileMapData", "tilemaps_buf[]") .storage_buf(1
 
SHADOW_TILEMAP_RES tiles_buf[] statistics_buf storage_buf (4, Qualifier::WRITE, "ViewMatrices", "view_infos_buf[SHADOW_VIEW_MAX]") .storage_buf(5
 
SHADOW_TILEMAP_RES tiles_buf[] statistics_buf render_view_buf[SHADOW_VIEW_MAXstorage_buf (6, Qualifier::READ, "ShadowTileMapClip", "tilemaps_clip_buf[]") .image(0
 
SHADOW_TILEMAP_RES storage_buf (0, Qualifier::READ_WRITE, "ShadowStatistics", "statistics_buf") .storage_buf(1
 
SHADOW_TILEMAP_RES render_view_buf[SHADOW_VIEW_MAXstorage_buf (2, Qualifier::READ_WRITE, SHADOW_TILE_DATA_PACKED, "tiles_buf[]") .storage_buf(3
 
SHADOW_TILEMAP_RES render_view_buf[SHADOW_VIEW_MAX] clear_dispatch_buf storage_buf (4, Qualifier::READ_WRITE, "DrawCommand", "tile_draw_buf") .storage_buf(5
 
SHADOW_TILEMAP_RES render_view_buf[SHADOW_VIEW_MAX] clear_dispatch_buf dst_coord_buf[SHADOW_RENDER_MAP_SIZEstorage_buf (6, Qualifier::WRITE, SHADOW_PAGE_PACKED, "src_coord_buf[SHADOW_RENDER_MAP_SIZE]") .storage_buf(7
 
SHADOW_TILEMAP_RES image (0, GPU_R32UI, Qualifier::READ_WRITE, ImageType::UINT_2D, "tilemaps_img") .storage_buf(LIGHT_CULL_BUF_SLOT
 
SHADOW_TILEMAP_RES light_cull_buf storage_buf (LIGHT_BUF_SLOT, Qualifier::READ_WRITE, "LightData", "light_buf[]") .storage_buf(4
 
SHADOW_TILEMAP_RES light_cull_buf tilemaps_buf[] additional_info ("eevee_shared", "draw_view") .compute_source("eevee_shadow_tilemap_amend_comp.glsl")
 
SHADOW_PAGE_CLEAR_GROUP_SIZE storage_buf (2, Qualifier::READ, "ShadowPagesInfoData", "pages_infos_buf") .storage_buf(6
 
 no_perspective (Type::VEC2, "out_texel_xy")
 
 flat (PAGE_Z_TYPE, "out_page_z")
 
do_static_compilation(true) .define("PASS_DEPTH_STORE") .additional_info("eevee_shared") .builtins(BuiltinBits STRINGIFY (DRW_VIEW_MAX)) .storage_buf(0
 
do_static_compilation(true) .define("PASS_DEPTH_STORE") .additional_info("eevee_shared") .builtins(BuiltinBits bounds_buf[] storage_buf (1, Qualifier::READ_WRITE, "uint", "visibility_buf[]") .storage_buf(2
 

Shadow resources

define("SHADOW_READ_ATOMIC") .builtins(BuiltinBits shadow_tilemaps_tx
 
define("SHADOW_READ_ATOMIC") .builtins(BuiltinBits sampler (SHADOW_ATLAS_TEX_SLOT, ImageType::UINT_2D_ARRAY, "shadow_atlas_tx") .sampler(SHADOW_TILEMAPS_TEX_SLOT
 

Debug

tilemaps_buf[] out_color_add
 
tilemaps_buf[] storage_buf (6, Qualifier::READ, SHADOW_TILE_DATA_PACKED, "tiles_buf[]") .fragment_out(0
 

Macro Definition Documentation

◆ PAGE_Z_TYPE

#define PAGE_Z_TYPE   Type::UINT

Definition at line 244 of file eevee_shadow_info.hh.

◆ SHADOW_PAGE_PACKED

SHADOW_PAGE_CLEAR_GROUP_SIZE SHADOW_PAGE_PACKED   "uint"

Definition at line 18 of file eevee_shadow_info.hh.

◆ SHADOW_TILE_DATA_PACKED

SHADOW_TILEMAP_RES SHADOW_TILE_DATA_PACKED   "uint"

Definition at line 17 of file eevee_shadow_info.hh.

Function Documentation

◆ additional_info() [1/4]

light_buf[] casters_id_buf[] bounds_buf[] storage_buf(7, Qualifier::READ_WRITE, "ShadowTileMapClip", "tilemaps_clip_buf[]") .push_constant(Type SHADOW_TILEMAP_RES tiles_buf[] pages_cached_buf[] additional_info ( "eevee_shared" )

◆ additional_info() [2/4]

SHADOW_TILEMAP_RES light_cull_buf tilemaps_buf[] additional_info ( "eevee_shared" ,
"draw_view"  )

◆ additional_info() [3/4]

tiles_buf[] resource_ids_buf[] additional_info ( "eevee_shared" ,
"draw_view" ,
"draw_view_culling"  )

◆ additional_info() [4/4]

tilemaps_buf[] storage_buf(7, Qualifier::READ_WRITE, SHADOW_TILE_DATA_PACKED, "tiles_buf[]") .push_constant(Type smooth(Type::VEC3, "P") .smooth(Type flat(Type::VEC3, "ls_aabb_min") .flat(Type pos tilemaps_buf[] storage_buf(6, Qualifier::READ_WRITE, SHADOW_TILE_DATA_PACKED, "tiles_buf[]") .push_constant(Type VOLUME_GROUP_SIZE tiles_buf[] additional_info ( "eevee_volume_properties_data" ,
"eevee_shared" ,
"draw_view" ,
"draw_view_culling" ,
"eevee_hiz_data" ,
"eevee_light_data" ,
"eevee_sampling_data"  )

◆ compute_source()

SHADOW_DEPTH_SCAN_GROUP_SIZE tiles_buf[] eevee_light_data compute_source ( "eevee_shadow_tag_usage_comp.glsl" )

◆ do_static_compilation()

do_static_compilation ( true )

Colors, weights, and Circle of confusion radii for the 4 pixels to scatter. Scaling factor for the bokeh distance. Sprite pixel position with origin at sprite center. In pixels.

◆ flat()

flat ( PAGE_Z_TYPE ,
"out_page_z"  )

◆ image()

SHADOW_TILEMAP_RES image ( 0 ,
GPU_R32UI ,
Qualifier::READ_WRITE ,
ImageType::UINT_2D ,
"tilemaps_img"  )

◆ no_perspective()

no_perspective ( Type::VEC2 ,
"out_texel_xy"  )

◆ push_constant() [1/3]

SHADOW_TILEMAP_RES push_constant ( Type::INT ,
"max_view_per_tilemap"  )

◆ push_constant() [2/3]

tilemaps_clip_buf[] push_constant ( Type::INT ,
"tilemaps_clip_buf_len"  )

◆ push_constant() [3/3]

SHADOW_DEPTH_SCAN_GROUP_SIZE tiles_buf[] push_constant ( Type::IVEC2 ,
"input_depth_extent"  )

◆ sampler()

define("SHADOW_READ_ATOMIC") .builtins(BuiltinBits sampler ( SHADOW_ATLAS_TEX_SLOT ,
ImageType::UINT_2D_ARRAY ,
"shadow_atlas_tx"  )

◆ storage_buf() [1/24]

SHADOW_TILEMAP_RES storage_buf ( 0 ,
Qualifier::READ ,
"ShadowTileMapData" ,
"tilemaps_buf" [] )

◆ storage_buf() [2/24]

SHADOW_TILEMAP_RES storage_buf ( 0 ,
Qualifier::READ_WRITE ,
"ShadowStatistics" ,
"statistics_buf"  )

◆ storage_buf() [3/24]

storage_buf ( 0 ,
Qualifier::READ_WRITE ,
"ShadowTileMapData" ,
"tilemaps_buf" [] )

◆ storage_buf() [4/24]

do_static_compilation(true) .define("PASS_DEPTH_STORE") .additional_info("eevee_shared") .builtins(BuiltinBits bounds_buf[] storage_buf ( 1 ,
Qualifier::READ_WRITE ,
"uint" ,
"visibility_buf" [] )

◆ storage_buf() [5/24]

SHADOW_TILEMAP_RES tilemaps_buf[] storage_buf ( 1 ,
Qualifier::READ_WRITE ,
SHADOW_TILE_DATA_PACKED ,
"tiles_buf" [] )

◆ storage_buf() [6/24]

SHADOW_PAGE_CLEAR_GROUP_SIZE storage_buf ( 2 ,
Qualifier::READ ,
"ShadowPagesInfoData" ,
"pages_infos_buf"  )

◆ storage_buf() [7/24]

tiles_buf[] storage_buf ( 2 ,
Qualifier::READ_WRITE ,
"ShadowPagesInfoData" ,
"pages_infos_buf"  )

◆ storage_buf() [8/24]

light_buf[] casters_id_buf[] bounds_buf[] storage_buf(7, Qualifier::READ_WRITE, "ShadowTileMapClip", "tilemaps_clip_buf[]") .push_constant(Type SHADOW_TILEMAP_RES tiles_buf[] storage_buf ( 2 ,
Qualifier::READ_WRITE ,
"ShadowTileMapClip" ,
"tilemaps_clip_buf" [] )

◆ storage_buf() [9/24]

SHADOW_TILEMAP_RES render_view_buf[SHADOW_VIEW_MAX] storage_buf ( 2 ,
Qualifier::READ_WRITE ,
SHADOW_TILE_DATA_PACKED ,
"tiles_buf" [] )

◆ storage_buf() [10/24]

tilemaps_buf[] pages_infos_buf storage_buf ( 3 ,
Qualifier::READ_WRITE ,
"uint" ,
"pages_free_buf" [] )

◆ storage_buf() [11/24]

tilemaps_buf[] storage_buf(7, Qualifier::READ_WRITE, SHADOW_TILE_DATA_PACKED, "tiles_buf[]") .push_constant(Type smooth(Type::VEC3, "P") .smooth(Type flat(Type::VEC3, "ls_aabb_min") .flat(Type pos storage_buf ( 4 ,
Qualifier::READ ,
"ObjectBounds" ,
"bounds_buf" [] )

◆ storage_buf() [12/24]

SHADOW_TILEMAP_RES render_view_buf[SHADOW_VIEW_MAX] clear_dispatch_buf storage_buf ( 4 ,
Qualifier::READ_WRITE ,
"DrawCommand" ,
"tile_draw_buf"  )

◆ storage_buf() [13/24]

tilemaps_buf[] storage_buf(7, Qualifier::READ_WRITE, SHADOW_TILE_DATA_PACKED, "tiles_buf[]") .push_constant(Type smooth(Type::VEC3, "P") .smooth(Type flat(Type::VEC3, "ls_aabb_min") .flat(Type pos tilemaps_buf[] storage_buf(6, Qualifier::READ_WRITE, SHADOW_TILE_DATA_PACKED, "tiles_buf[]") .push_constant(Type VOLUME_GROUP_SIZE storage_buf ( 4 ,
Qualifier::READ_WRITE ,
"ShadowTileMapData" ,
"tilemaps_buf" [] )

◆ storage_buf() [14/24]

tiles_buf[] pages_free_buf[] storage_buf ( 4 ,
Qualifier::READ_WRITE ,
"uvec2" ,
"pages_cached_buf" [] )

◆ storage_buf() [15/24]

SHADOW_TILEMAP_RES tiles_buf[] statistics_buf storage_buf ( 4 ,
Qualifier::WRITE ,
"ViewMatrices" ,
"view_infos_buf" [SHADOW_VIEW_MAX] )

◆ storage_buf() [16/24]

tiles_buf[] storage_buf ( 5 ,
Qualifier::READ ,
"ObjectBounds" ,
"bounds_buf" [] )

◆ storage_buf() [17/24]

SHADOW_DEPTH_SCAN_GROUP_SIZE storage_buf ( 5 ,
Qualifier::READ_WRITE ,
"ShadowTileMapData" ,
"tilemaps_buf" [] )

◆ storage_buf() [18/24]

SHADOW_TILEMAP_RES tiles_buf[] statistics_buf render_view_buf[SHADOW_VIEW_MAX] storage_buf ( 6 ,
Qualifier::READ ,
"ShadowTileMapClip" ,
"tilemaps_clip_buf" [] )

◆ storage_buf() [19/24]

tilemaps_buf[] storage_buf ( 6 ,
Qualifier::READ ,
SHADOW_TILE_DATA_PACKED ,
"tiles_buf" [] )

◆ storage_buf() [20/24]

tilemaps_buf[] pages_infos_buf pages_cached_buf[] storage_buf ( 6 ,
Qualifier::READ_WRITE ,
"ShadowStatistics" ,
"statistics_buf"  )

◆ storage_buf() [21/24]

tiles_buf[] pages_free_buf[] clear_dispatch_buf storage_buf ( 6 ,
Qualifier::WRITE ,
"DrawCommand" ,
"tile_draw_buf"  )

◆ storage_buf() [22/24]

SHADOW_TILEMAP_RES render_view_buf[SHADOW_VIEW_MAX] clear_dispatch_buf dst_coord_buf[SHADOW_RENDER_MAP_SIZE] storage_buf ( 6 ,
Qualifier::WRITE ,
SHADOW_PAGE_PACKED ,
"src_coord_buf" [SHADOW_RENDER_MAP_SIZE] )

◆ storage_buf() [23/24]

SHADOW_TILEMAP_RES light_cull_buf storage_buf ( LIGHT_BUF_SLOT ,
Qualifier::READ_WRITE ,
"LightData" ,
"light_buf" [] )

◆ storage_buf() [24/24]

light_buf[] storage_buf ( LIGHT_CULL_BUF_SLOT ,
Qualifier::READ ,
"LightCullingData" ,
"light_cull_buf"  )

◆ STRINGIFY()

STRINGIFY ( DRW_VIEW_MAX )

Variable Documentation

◆ DispatchCommand

SHADOW_TILEMAP_RES render_view_buf[SHADOW_VIEW_MAX] DispatchCommand

Definition at line 155 of file eevee_shadow_info.hh.

◆ draw_view

SHADOW_DEPTH_SCAN_GROUP_SIZE tiles_buf[] draw_view

Definition at line 69 of file eevee_shadow_info.hh.

◆ draw_view_culling

SHADOW_DEPTH_SCAN_GROUP_SIZE tiles_buf[] draw_view_culling

Definition at line 69 of file eevee_shadow_info.hh.

◆ eevee_hiz_data

SHADOW_DEPTH_SCAN_GROUP_SIZE tiles_buf[] eevee_hiz_data

Definition at line 69 of file eevee_shadow_info.hh.

◆ GPU_R32UI

◆ LightCullingData

SHADOW_TILEMAP_RES LightCullingData

Definition at line 208 of file eevee_shadow_info.hh.

◆ LightData

LightData

Definition at line 31 of file eevee_shadow_info.hh.

◆ ObjectBounds

do_static_compilation(true) .define("PASS_DEPTH_STORE") .additional_info("eevee_shared") .builtins(BuiltinBits ObjectBounds

Definition at line 35 of file eevee_shadow_info.hh.

◆ out_color_add

tilemaps_buf[] out_color_add

Definition at line 319 of file eevee_shadow_info.hh.

◆ shadow_atlas_img

SHADOW_PAGE_CLEAR_GROUP_SIZE dst_coord_buf[SHADOW_RENDER_MAP_SIZE] shadow_atlas_img

Definition at line 227 of file eevee_shadow_info.hh.

◆ SHADOW_PAGE_PACKED

SHADOW_PAGE_CLEAR_GROUP_SIZE SHADOW_PAGE_PACKED

Definition at line 198 of file eevee_shadow_info.hh.

◆ SHADOW_TILE_DATA_PACKED

SHADOW_TILEMAP_RES SHADOW_TILE_DATA_PACKED

Definition at line 46 of file eevee_shadow_info.hh.

◆ shadow_tilemaps_tx

define("SHADOW_READ_ATOMIC") .builtins(BuiltinBits shadow_tilemaps_tx

Definition at line 306 of file eevee_shadow_info.hh.

◆ ShadowPagesInfoData

tilemaps_buf[] ShadowPagesInfoData

Definition at line 141 of file eevee_shadow_info.hh.

◆ ShadowRenderView

SHADOW_TILEMAP_RES ShadowRenderView

Definition at line 183 of file eevee_shadow_info.hh.

◆ ShadowStatistics

SHADOW_TILEMAP_RES tiles_buf[] ShadowStatistics

Definition at line 157 of file eevee_shadow_info.hh.

◆ ShadowTileMapClip

ShadowTileMapClip

Definition at line 23 of file eevee_shadow_info.hh.

◆ ShadowTileMapData

ShadowTileMapData

Definition at line 75 of file eevee_shadow_info.hh.

◆ uint

tiles_buf[] uint

Definition at line 33 of file eevee_shadow_info.hh.

◆ uvec2

tilemaps_buf[] pages_infos_buf uvec2

Definition at line 48 of file eevee_shadow_info.hh.

◆ VOLUME_GROUP_SIZE

tilemaps_buf[] storage_buf(7, Qualifier::READ_WRITE, SHADOW_TILE_DATA_PACKED, "tiles_buf[]") .push_constant(Type smooth(Type::VEC3, "P") .smooth(Type flat(Type::VEC3, "ls_aabb_min") .flat(Type pos tilemaps_buf[] storage_buf(6, Qualifier::READ_WRITE, SHADOW_TILE_DATA_PACKED, "tiles_buf[]") .push_constant(Type VOLUME_GROUP_SIZE

Definition at line 115 of file eevee_shadow_info.hh.