Blender V5.0
eevee_renderbuffers.hh
Go to the documentation of this file.
1/* SPDX-FileCopyrightText: 2022 Blender Authors
2 *
3 * SPDX-License-Identifier: GPL-2.0-or-later */
4
12
13#pragma once
14
15#include "DRW_render.hh"
16
18
19namespace blender::eevee {
20
21class Instance;
22
24 public:
26
27 static constexpr gpu::TextureFormat color_format = gpu::TextureFormat::SFLOAT_16_16_16_16;
28 static constexpr gpu::TextureFormat float_format = gpu::TextureFormat::SFLOAT_16;
29
32
33 // TextureFromPool mist_tx; /* Derived from depth_tx during accumulation. */
36 /* TODO(fclem): Use texture from pool once they support texture array. */
39
40 private:
41 Instance &inst_;
42
43 int2 extent_;
44
45 public:
47
65
66 void init();
67
68 /* Acquires (also ensures) the render buffer before rendering to them. */
69 void acquire(int2 extent);
70 void release();
71
72 /* Return the size of the allocated render buffers. Undefined if called before `acquire()`. */
74 {
75 return extent_;
76 }
77
79};
80
81} // namespace blender::eevee
eViewLayerEEVEEPassType
@ EEVEE_RENDER_PASS_CRYPTOMATTE_MATERIAL
@ EEVEE_RENDER_PASS_AO
@ EEVEE_RENDER_PASS_CRYPTOMATTE_OBJECT
@ EEVEE_RENDER_PASS_CRYPTOMATTE_ASSET
@ EEVEE_RENDER_PASS_DEPTH
@ EEVEE_RENDER_PASS_MIST
@ EEVEE_RENDER_PASS_SHADOW
A running instance of the engine.
static ePassStorageType pass_storage_type(eViewLayerEEVEEPassType pass_type)
static constexpr gpu::TextureFormat float_format
static constexpr gpu::TextureFormat color_format
RenderBuffers(Instance &inst, RenderBuffersInfoData &data)
VecBase< int32_t, 2 > int2