docs: add plugin setup guide

This commit is contained in:
2026-05-30 18:33:24 +12:00
parent f3db41c402
commit b61043a3fe
1776 changed files with 122386 additions and 2 deletions
@@ -0,0 +1,53 @@
#pragma once
#include "RE/B/BSFixedString.h"
#include "RE/B/BSResource_Stream.h"
#include "RE/B/BSTSmartPointer.h"
#include "RE/N/NiObject.h"
namespace RE
{
namespace BSGraphics
{
class Texture;
}
namespace BSTextureArray
{
class Texture;
}
class __declspec(novtable) NiTexture :
public NiObject // 00
{
public:
static constexpr auto RTTI{ RTTI::NiTexture };
static constexpr auto VTABLE{ VTABLE::NiTexture };
static constexpr auto Ni_RTTI{ Ni_RTTI::NiTexture };
// add
virtual BSTextureArray::Texture* IsBSTextureArray() { return nullptr; } // 28
static void SetAllowDegrade(bool a_allow)
{
using func_t = decltype(&NiTexture::SetAllowDegrade);
static REL::Relocation<func_t> func{ ID::NiTexture::SetAllowDegrade };
return func(a_allow);
}
[[nodiscard]] std::string_view GetName() const { return name; }
// members
BSFixedString name; // 10
std::uint32_t flags; // 18
NiTexture* prev; // 29
NiTexture* next; // 28
BSTSmartPointer<BSResource::Stream> stream; // 30
BSGraphics::Texture* rendererTexture; // 38
std::int8_t desiredDegradeLevel; // 40
std::int8_t savedDegradeLevel; // 41
bool isDDX: 1; // 42:0
bool isSRGB: 1; // 42:1
};
static_assert(sizeof(NiTexture) == 0x48);
}