mirror of
https://github.com/MaSzyna-EU07/maszyna.git
synced 2026-10-17 15:39:20 +02:00
Its sources reached the standard library through the project headers they included; those are imports now. 178 headers across 56 files, plus 18 C library headers elsewhere for memcpy/printf and friends. MSVC's STL does not supply these transitively the way libstdc++ does.
30 lines
922 B
C++
30 lines
922 B
C++
#pragma once
|
|
|
|
#include <nvrhi/nvrhi.h>
|
|
#include <cstdint>
|
|
#include <vector>
|
|
|
|
struct NvGbuffer {
|
|
NvGbuffer(class NvRenderer* renderer);
|
|
void Init(int width, int height, bool is_cube, bool depth_only = false, int slices = 1);
|
|
void Clear(nvrhi::ICommandList* command_list);
|
|
|
|
nvrhi::TextureHandle m_gbuffer_diffuse;
|
|
nvrhi::TextureHandle m_gbuffer_emission;
|
|
nvrhi::TextureHandle m_gbuffer_normal;
|
|
nvrhi::TextureHandle m_gbuffer_params;
|
|
nvrhi::TextureHandle m_gbuffer_motion;
|
|
nvrhi::TextureHandle m_gbuffer_depth;
|
|
|
|
nvrhi::FramebufferHandle m_framebuffer;
|
|
std::vector<nvrhi::FramebufferHandle> m_slice_framebuffers;
|
|
|
|
class NvRendererBackend* m_backend;
|
|
|
|
bool m_depth_only;
|
|
|
|
static void ClearDepthStencilAttachment(nvrhi::ICommandList* commandList,
|
|
nvrhi::IFramebuffer* framebuffer,
|
|
float depth, uint32_t stencil);
|
|
};
|