Blender V4.5
eevee_motion_blur_info.hh
Go to the documentation of this file.
1/* SPDX-FileCopyrightText: 2023 Blender Authors
2 *
3 * SPDX-License-Identifier: GPL-2.0-or-later */
4
5#ifdef GPU_SHADER
6# pragma once
7# include "gpu_glsl_cpp_stubs.hh"
8
9# include "draw_view_info.hh"
10# include "eevee_common_info.hh"
11# include "eevee_velocity_info.hh"
12#endif
13
14#include "eevee_defines.hh"
16
17GPU_SHADER_CREATE_INFO(eevee_motion_blur_tiles_flatten)
19ADDITIONAL_INFO(eevee_shared)
20ADDITIONAL_INFO(draw_view)
21ADDITIONAL_INFO(eevee_velocity_camera)
22UNIFORM_BUF(6, MotionBlurData, motion_blur_buf)
23SAMPLER(0, sampler2DDepth, depth_tx)
24IMAGE(1, GPU_RGBA16F, write, image2D, out_tiles_img)
25COMPUTE_SOURCE("eevee_motion_blur_flatten_comp.glsl")
27
28GPU_SHADER_CREATE_INFO(eevee_motion_blur_tiles_flatten_rg)
30DEFINE("FLATTEN_RG")
31IMAGE(0, GPU_RG16F, read_write, image2D, velocity_img)
32ADDITIONAL_INFO(eevee_motion_blur_tiles_flatten)
34
35GPU_SHADER_CREATE_INFO(eevee_motion_blur_tiles_flatten_rgba)
37IMAGE(0, GPU_RGBA16F, read_write, image2D, velocity_img)
38ADDITIONAL_INFO(eevee_motion_blur_tiles_flatten)
40
41GPU_SHADER_CREATE_INFO(eevee_motion_blur_tiles_dilate)
44ADDITIONAL_INFO(eevee_shared)
45/* NOTE: See MotionBlurTileIndirection. */
46STORAGE_BUF(0, read_write, uint, tile_indirection_buf[])
47IMAGE(1, GPU_RGBA16F, read, image2D, in_tiles_img)
48COMPUTE_SOURCE("eevee_motion_blur_dilate_comp.glsl")
50
51GPU_SHADER_CREATE_INFO(eevee_motion_blur_gather)
54ADDITIONAL_INFO(eevee_shared)
55ADDITIONAL_INFO(draw_view)
56ADDITIONAL_INFO(eevee_sampling_data)
57UNIFORM_BUF(6, MotionBlurData, motion_blur_buf)
58SAMPLER(0, sampler2DDepth, depth_tx)
59SAMPLER(1, sampler2D, velocity_tx)
60SAMPLER(2, sampler2D, in_color_tx)
61/* NOTE: See MotionBlurTileIndirection. */
62STORAGE_BUF(0, read, uint, tile_indirection_buf[])
63IMAGE(0, GPU_RGBA16F, read, image2D, in_tiles_img)
64IMAGE(1, GPU_RGBA16F, write, image2D, out_color_img)
65COMPUTE_SOURCE("eevee_motion_blur_gather_comp.glsl")
unsigned int uint
@ GPU_RG16F
@ GPU_RGBA16F
#define MOTION_BLUR_GROUP_SIZE
ImageBase< float, 2 > image2D
SamplerBase< float, 2, false, false, false, true > sampler2DDepth
SamplerBase< float, 2 > sampler2D
#define SAMPLER(slot, type, name)
#define UNIFORM_BUF(slot, type_name, name)
#define ADDITIONAL_INFO(info_name)
#define DEFINE(name)
#define STORAGE_BUF(slot, qualifiers, type_name, name)
#define GPU_SHADER_CREATE_INFO(_info)
#define LOCAL_GROUP_SIZE(...)
#define IMAGE(slot, format, qualifiers, type, name)
#define GPU_SHADER_CREATE_END()
#define COMPUTE_SOURCE(filename)
#define DO_STATIC_COMPILATION()
read