Blender V5.0
gpu_shader_sequencer_infos.hh
Go to the documentation of this file.
1/* SPDX-FileCopyrightText: 2024 Blender Authors
2 *
3 * SPDX-License-Identifier: GPL-2.0-or-later */
4
8
9#ifdef GPU_SHADER
10# pragma once
11# include "gpu_shader_compat.hh"
12
13# include "GPU_shader_shared.hh"
15#endif
16
19
20GPU_SHADER_INTERFACE_INFO(gpu_seq_strip_iface)
21NO_PERSPECTIVE(float2, co_interp)
22FLAT(uint, strip_id)
24
25GPU_SHADER_CREATE_INFO(gpu_shader_sequencer_strips)
26VERTEX_OUT(gpu_seq_strip_iface)
27FRAGMENT_OUT(0, float4, fragColor)
28PUSH_CONSTANT(float4x4, ModelViewProjectionMatrix)
30UNIFORM_BUF(1, SeqContextDrawData, context_data)
31TYPEDEF_SOURCE("GPU_shader_shared.hh")
32VERTEX_SOURCE("gpu_shader_sequencer_strips_vert.glsl")
33FRAGMENT_SOURCE("gpu_shader_sequencer_strips_frag.glsl")
36
37GPU_SHADER_INTERFACE_INFO(gpu_seq_thumb_iface)
38NO_PERSPECTIVE(float2, pos_interp)
39NO_PERSPECTIVE(float2, texCoord_interp)
40FLAT(uint, thumb_id)
42
43GPU_SHADER_CREATE_INFO(gpu_shader_sequencer_thumbs)
44VERTEX_OUT(gpu_seq_thumb_iface)
45FRAGMENT_OUT(0, float4, fragColor)
46PUSH_CONSTANT(float4x4, ModelViewProjectionMatrix)
47UNIFORM_BUF(0, SeqStripThumbData, thumb_data[GPU_SEQ_STRIP_DRAW_DATA_LEN])
48UNIFORM_BUF(1, SeqContextDrawData, context_data)
49SAMPLER(0, sampler2D, image)
50TYPEDEF_SOURCE("GPU_shader_shared.hh")
51VERTEX_SOURCE("gpu_shader_sequencer_thumbs_vert.glsl")
52FRAGMENT_SOURCE("gpu_shader_sequencer_thumbs_frag.glsl")
55
56GPU_SHADER_INTERFACE_INFO(gpu_seq_scope_iface)
57SMOOTH(float4, finalColor)
58SMOOTH(float2, radii)
60
61GPU_SHADER_CREATE_INFO(gpu_shader_sequencer_scope_raster)
62LOCAL_GROUP_SIZE(16, 16)
63PUSH_CONSTANT(float4x4, ModelViewProjectionMatrix)
64PUSH_CONSTANT(float3, luma_coeffs)
65PUSH_CONSTANT(float, scope_point_size)
66PUSH_CONSTANT(bool, img_premultiplied)
69PUSH_CONSTANT(int, scope_mode)
70PUSH_CONSTANT(int, view_width)
71PUSH_CONSTANT(int, view_height)
72SAMPLER(0, sampler2D, image)
73STORAGE_BUF(0, read_write, SeqScopeRasterData, raster_buf[])
74TYPEDEF_SOURCE("GPU_shader_shared.hh")
75COMPUTE_SOURCE("gpu_shader_sequencer_scope_comp.glsl")
78
79GPU_SHADER_CREATE_INFO(gpu_shader_sequencer_scope_resolve)
80FRAGMENT_OUT(0, float4, fragColor)
81PUSH_CONSTANT(int, view_width)
82PUSH_CONSTANT(int, view_height)
83PUSH_CONSTANT(float, alpha_exponent)
84STORAGE_BUF(0, read, SeqScopeRasterData, raster_buf[])
85TYPEDEF_SOURCE("GPU_shader_shared.hh")
86FRAGMENT_SOURCE("gpu_shader_sequencer_scope_frag.glsl")
87ADDITIONAL_INFO(gpu_fullscreen)
90
91GPU_SHADER_CREATE_INFO(gpu_shader_sequencer_zebra)
93VERTEX_IN(1, float2, texCoord)
94VERTEX_OUT(smooth_tex_coord_interp_iface)
95FRAGMENT_OUT(0, float4, fragColor)
96PUSH_CONSTANT(float4x4, ModelViewProjectionMatrix)
97PUSH_CONSTANT(float, zebra_limit)
98PUSH_CONSTANT(bool, img_premultiplied)
99SAMPLER(0, sampler2D, image)
100TYPEDEF_SOURCE("GPU_shader_shared.hh")
101VERTEX_SOURCE("gpu_shader_2D_image_vert.glsl")
102FRAGMENT_SOURCE("gpu_shader_sequencer_zebra_frag.glsl")
static constexpr int image_width
static constexpr int image_height
unsigned int uint
#define GPU_SEQ_STRIP_DRAW_DATA_LEN
uint pos
#define GPU_SHADER_INTERFACE_END()
#define GPU_SHADER_INTERFACE_INFO(_interface)
#define GPU_SHADER_CREATE_INFO(_info)
#define GPU_SHADER_CREATE_END()
#define TYPEDEF_SOURCE(filename)
#define VERTEX_OUT(stage_interface)
#define SMOOTH(type, name)
#define SAMPLER(slot, type, name)
#define UNIFORM_BUF(slot, type_name, name)
#define FRAGMENT_SOURCE(filename)
#define ADDITIONAL_INFO(info_name)
#define PUSH_CONSTANT(type, name)
#define FLAT(type, name)
#define FRAGMENT_OUT(slot, type, name)
#define NO_PERSPECTIVE(type, name)
#define STORAGE_BUF(slot, qualifiers, type_name, name)
#define VERTEX_SOURCE(filename)
#define LOCAL_GROUP_SIZE(...)
#define VERTEX_IN(slot, type, name)
#define COMPUTE_SOURCE(filename)
#define DO_STATIC_COMPILATION()
MatBase< 4, 4 > float4x4
SamplerBase< float, 2 > sampler2D