rodecomp/Source/Render/RendererBackBuffer.h
2026-10-24 00:35:19 +00:00

26 lines
691 B
C++

#ifndef RAGNAROK_SOURCE_RENDER_RENDERERBACKBUFFER_H
#define RAGNAROK_SOURCE_RENDER_RENDERERBACKBUFFER_H
#include <windows.h>
class DeviceOwnerDX9;
class DeviceOwnerDX7;
// Original renderer +0x250..+0x25B. Failed locking leaves every field intact;
// unlocking does not clear the last published pointer, pitch or bit depth.
struct RendererBackBuffer {
void* pixels;
int pitch;
int bitsPerPixel;
bool Lock(const DeviceOwnerDX9& owner);
HRESULT Unlock(const DeviceOwnerDX9& owner);
bool Lock(const DeviceOwnerDX7& owner);
HRESULT Unlock(const DeviceOwnerDX7& owner);
};
#if defined(_WIN32) && !defined(_WIN64)
static_assert(sizeof(RendererBackBuffer) == 12);
#endif
#endif