CommonLibSSE (powerof3)
Loading...
Searching...
No Matches
BSRenderManager.h
Go to the documentation of this file.
1#pragma once
2
3#include "RE/N/NiTexture.h"
4
5struct ID3D11Device;
6struct ID3D11DeviceContext;
7struct IDXGISwapChain;
8struct ID3D11RenderTargetView1;
9struct ID3D11ShaderResourceView1;
10
11namespace RE
12{
14 {
15 public:
16 [[nodiscard]] static BSRenderManager* GetSingleton() noexcept
17 {
18 REL::Relocation<BSRenderManager**> singleton{ RELOCATION_ID(524907, 411393) };
19 return *singleton;
20 }
21
22 [[nodiscard]] NiTexture::RendererData* CreateRenderTexture(std::uint32_t a_width, std::uint32_t a_height)
23 {
24 using func_t = decltype(&BSRenderManager::CreateRenderTexture);
25 REL::Relocation<func_t> func{ RELOCATION_ID(75507, 77299) };
26 return func(this, a_width, a_height);
27 }
28
29 std::uint64_t unk00[0x48 >> 3]; // 0000
30 ID3D11Device* forwarder; // 0048
31 ID3D11DeviceContext* context; // 0050
32 std::uint64_t unk58; // 0058
33 std::uint64_t unk60; // 0060
34 std::uint64_t unk68; // 0068
35 IDXGISwapChain* swapChain; // 0070
36 std::uint64_t unk78; // 0078
37 std::uint64_t unk80; // 0080
38 ID3D11RenderTargetView1* renderView; // 0088
39 ID3D11ShaderResourceView1* resourceView; // 0090
40 std::uint64_t unk98[(0x2788 - 0x90) >> 3]; // 0098
42 };
43 static_assert(sizeof(BSRenderManager) == 0x27B8);
44}
#define RELOCATION_ID(SE, AE)
Definition: PCH.h:711
Definition: BSRenderManager.h:14
static BSRenderManager * GetSingleton() noexcept
Definition: BSRenderManager.h:16
ID3D11RenderTargetView1 * renderView
Definition: BSRenderManager.h:38
std::uint64_t unk78
Definition: BSRenderManager.h:36
ID3D11DeviceContext * context
Definition: BSRenderManager.h:31
std::uint64_t unk58
Definition: BSRenderManager.h:32
IDXGISwapChain * swapChain
Definition: BSRenderManager.h:35
std::uint64_t unk80
Definition: BSRenderManager.h:37
SKSE::WinAPI::CRITICAL_SECTION lock
Definition: BSRenderManager.h:41
ID3D11ShaderResourceView1 * resourceView
Definition: BSRenderManager.h:39
std::uint64_t unk68
Definition: BSRenderManager.h:34
NiTexture::RendererData * CreateRenderTexture(std::uint32_t a_width, std::uint32_t a_height)
Definition: BSRenderManager.h:22
ID3D11Device * forwarder
Definition: BSRenderManager.h:30
std::uint64_t unk98[(0x2788 - 0x90) > > 3]
Definition: BSRenderManager.h:40
std::uint64_t unk00[0x48 > > 3]
Definition: BSRenderManager.h:29
std::uint64_t unk60
Definition: BSRenderManager.h:33
Definition: NiTexture.h:68
Definition: Relocation.h:875
Definition: AbsorbEffect.h:6
Definition: WinAPI.h:14