76 gpu::TextureFormat::SFLOAT_16_16_16_16, is_dummy ?
int2(1) : extent, usage_rw))
131 for (
int i = 0;
i < 3;
i++) {
163 int3 tile_classify_dispatch_size_ =
int3(1);
165 int3 tile_compact_dispatch_size_ =
int3(1);
166 int3 horizon_schedule_dispatch_size_ =
int3(1);
168 int3 tracing_dispatch_size_ =
int3(1);
169 int3 horizon_tracing_dispatch_size_ =
int3(1);
172 Texture tile_raytrace_denoise_tx_ = {
"tile_raytrace_denoise_tx_"};
173 Texture tile_raytrace_tracing_tx_ = {
"tile_raytrace_tracing_tx_"};
174 Texture tile_horizon_denoise_tx_ = {
"tile_horizon_denoise_tx_"};
175 Texture tile_horizon_tracing_tx_ = {
"tile_horizon_tracing_tx_"};
187 RayTraceTileBuf raytrace_tracing_tiles_buf_ = {
"raytrace_tracing_tiles_buf_"};
188 RayTraceTileBuf raytrace_denoise_tiles_buf_ = {
"raytrace_denoise_tiles_buf_"};
189 RayTraceTileBuf horizon_tracing_tiles_buf_ = {
"horizon_tracing_tiles_buf_"};
190 RayTraceTileBuf horizon_denoise_tiles_buf_ = {
"horizon_denoise_tiles_buf_"};
199 TextureFromPool horizon_radiance_denoised_tx_[4] = {{
"horizon_radiance_denoised_tx_"}};
201 TextureFromPool downsampled_in_radiance_tx_ = {
"downsampled_in_radiance_tx_"};
203 TextureFromPool downsampled_in_normal_tx_ = {
"downsampled_in_normal_tx_"};
222 Texture radiance_dummy_black_tx_ = {
"radiance_dummy_black_tx"};
230 int fast_gi_ray_count_ = 0;
231 int fast_gi_step_count_ = 0;
232 bool fast_gi_ao_only_ =
false;
234 bool use_raytracing_ =
false;
285 return use_raytracing_;
290 return use_raytracing() && ray_tracing_options_.trace_max_roughness < 1.0f;
@ RAYTRACE_EEVEE_METHOD_PROBE
@ GPU_TEXTURE_USAGE_SHADER_READ
@ GPU_TEXTURE_USAGE_SHADER_WRITE
BMesh const char void * data
static void swap(TextureFromPool &a, Texture &b)
A running instance of the engine.
bool use_raytracing() const
RayTraceResult alloc_only(RayTraceBuffer &rt_buffer)
void debug_draw(View &view, gpu::FrameBuffer *view_fb)
RayTraceModule(Instance &inst, RayTraceData &data)
RayTraceResult alloc_dummy(RayTraceBuffer &rt_buffer)
gpu::Texture ** operator&()
RayTraceResultTexture()=default
RayTraceResultTexture(TextureFromPool &result)
RayTraceResultTexture(TextureFromPool &result, Texture &history)
CCL_NAMESPACE_BEGIN struct Options options
detail::Pass< command::DrawCommandBuf > PassSimple
draw::StorageBuffer< DispatchCommand > DispatchIndirectBuf
draw::StorageArrayBuffer< uint, 1024, true > RayTraceTileBuf
MatBase< float, 4, 4 > float4x4
VecBase< float, 4 > float4
VecBase< int32_t, 2 > int2
VecBase< int32_t, 3 > int3
TextureFromPool denoised_temporal_tx
TextureFromPool denoised_bilateral_tx
Texture tilemask_history_tx
Texture variance_history_tx
Texture radiance_history_tx
TextureFromPool denoised_spatial_tx
gpu::Texture * feedback_ensure(bool is_dummy, int2 extent)
DenoiseBuffer closures[3]
Texture radiance_feedback_tx
RayTraceResultTexture closures[3]