Blender V4.3
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
13#pragma once
14
15#include "DRW_render.hh"
16
18
19namespace blender::eevee {
20
21class Instance;
22
24 public:
26
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:
46 RenderBuffers(Instance &inst, RenderBuffersInfoData &data) : data(data), inst_(inst){};
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_Z
@ EEVEE_RENDER_PASS_MIST
@ EEVEE_RENDER_PASS_SHADOW
eGPUTextureFormat
A running instance of the engine.
static ePassStorageType pass_storage_type(eViewLayerEEVEEPassType pass_type)
static constexpr eGPUTextureFormat color_format
static constexpr eGPUTextureFormat float_format
RenderBuffers(Instance &inst, RenderBuffersInfoData &data)