Blender V5.0
eevee_uniform_shared.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
8
9#pragma once
10
12#include "eevee_film_shared.hh"
18
19#ifndef GPU_SHADER
20namespace blender::eevee {
21#endif
22
23/* This should be inside "eevee_light_shared.hh" but it would pull a huge header that is not
24 * essential for most shaders. This could be moved back if including "eevee_bxdf_lib.glsl" is used
25 * only for shading shaders. */
26enum LightingType : uint32_t {
31 /* WORKAROUND: Special value used to tag translucent BSDF with thickness.
32 * Fall back to LIGHT_DIFFUSE. */
34};
35
37 /* Number of shadow rays to shoot for each light. */
39 /* Number of shadow samples to take for each shadow ray. */
41 /* Bounding radius for a film pixel at 1 unit from the camera. */
43 /* Global switch for jittered shadows. */
45};
47
48/* Light Clamping. */
60
64 /* WORKAROUND: Usually we would use imageSize to get the number of layers and get this id.
65 * However, some implementation return the number of layers from the base texture instead of the
66 * texture view (see #146132). So we always pass the correct layer index manually to avoid any
67 * platform inconsistency. */
69 float _pad2;
70};
72
73/* Combines data from several modules to avoid wasting binding slots. */
88
89
96
97#ifndef GPU_SHADER
98} // namespace blender::eevee
99#endif
#define BLI_STATIC_ASSERT_ALIGN(st, align)
Definition BLI_assert.h:86
int32_t bool32_t
VecBase< float, 4 > float4
RenderBuffersInfoData render_pass