Files
UnleashedRecomp-hedge-dev/UnleashedRecomp/gpu/imgui/imgui_snapshot.h
Skyth (Asilkan) fd009bcada Sync render thread present with main thread. (#62)
* Experimenting with syncing the render thread.

* Separate wait functions for swap chains.

* Sync render thread present to the main thread.

* Move present to main thread and frame limit after presenting.

* g_next -> s_next

* Fix Vulkan validation errors.

* Make max frame latency configurable.

* Fix loading thread breaking waitable swap chain order.
2024-12-25 16:29:15 +03:00

32 lines
896 B
C++

#pragma once
// Undefine this to generate a font atlas file in working directory.
// You also need to do this if you are testing localization, as only
// characters in the locale get added to the atlas.
#define ENABLE_IM_FONT_ATLAS_SNAPSHOT
struct ImFontAtlasSnapshot
{
std::vector<uint8_t> data;
ankerl::unordered_dense::map<const void*, size_t> objects;
std::vector<uint32_t> offsets;
template<typename T1, typename T2>
void SnapPointer(size_t offset, const T1& value, const T2& ptr, size_t count);
template<typename T>
void Traverse(size_t offset, const T& value);
template<typename T>
size_t Snap(const T& value);
void Snap();
static ImFontAtlas* Load();
static void GenerateGlyphRanges();
// When ENABLE_IM_FONT_ATLAS_SNAPSHOT is undefined, this creates the font runtime instead.
static ImFont* GetFont(const char* name);
};