mirror of
https://github.com/shadps4-emu/shadPS4.git
synced 2025-08-03 06:38:46 +00:00
imgui: add custom imgui config
This commit is contained in:
parent
60d8f41181
commit
752e4032c6
3 changed files with 39 additions and 1 deletions
|
@ -561,7 +561,8 @@ set(VIDEO_CORE src/video_core/amdgpu/liverpool.cpp
|
||||||
src/video_core/renderdoc.h
|
src/video_core/renderdoc.h
|
||||||
)
|
)
|
||||||
|
|
||||||
set(IMGUI src/imgui/imgui_layer.h
|
set(IMGUI src/imgui/imgui_config.h
|
||||||
|
src/imgui/imgui_layer.h
|
||||||
src/imgui/layer/video_info.cpp
|
src/imgui/layer/video_info.cpp
|
||||||
src/imgui/layer/video_info.h
|
src/imgui/layer/video_info.h
|
||||||
src/imgui/renderer/imgui_core.cpp
|
src/imgui/renderer/imgui_core.cpp
|
||||||
|
@ -661,6 +662,9 @@ create_target_directory_groups(shadps4)
|
||||||
target_link_libraries(shadps4 PRIVATE magic_enum::magic_enum fmt::fmt toml11::toml11 tsl::robin_map xbyak::xbyak Tracy::TracyClient RenderDoc::API FFmpeg::ffmpeg Dear_ImGui)
|
target_link_libraries(shadps4 PRIVATE magic_enum::magic_enum fmt::fmt toml11::toml11 tsl::robin_map xbyak::xbyak Tracy::TracyClient RenderDoc::API FFmpeg::ffmpeg Dear_ImGui)
|
||||||
target_link_libraries(shadps4 PRIVATE Boost::headers GPUOpen::VulkanMemoryAllocator sirit Vulkan::Headers xxHash::xxhash Zydis::Zydis glslang::SPIRV glslang::glslang SDL3::SDL3)
|
target_link_libraries(shadps4 PRIVATE Boost::headers GPUOpen::VulkanMemoryAllocator sirit Vulkan::Headers xxHash::xxhash Zydis::Zydis glslang::SPIRV glslang::glslang SDL3::SDL3)
|
||||||
|
|
||||||
|
target_compile_definitions(shadps4 PRIVATE IMGUI_USER_CONFIG="imgui/imgui_config.h")
|
||||||
|
target_compile_definitions(Dear_ImGui PRIVATE IMGUI_USER_CONFIG="${PROJECT_SOURCE_DIR}/src/imgui/imgui_config.h")
|
||||||
|
|
||||||
if (APPLE)
|
if (APPLE)
|
||||||
option(USE_SYSTEM_VULKAN_LOADER "Enables using the system Vulkan loader instead of directly linking with MoltenVK. Useful for loading validation layers." OFF)
|
option(USE_SYSTEM_VULKAN_LOADER "Enables using the system Vulkan loader instead of directly linking with MoltenVK. Useful for loading validation layers." OFF)
|
||||||
if (USE_SYSTEM_VULKAN_LOADER)
|
if (USE_SYSTEM_VULKAN_LOADER)
|
||||||
|
|
|
@ -18,3 +18,8 @@ void assert_fail_impl() {
|
||||||
Crash();
|
Crash();
|
||||||
throw std::runtime_error("Unreachable code");
|
throw std::runtime_error("Unreachable code");
|
||||||
}
|
}
|
||||||
|
|
||||||
|
void assert_fail_debug_msg(const char* msg) {
|
||||||
|
LOG_CRITICAL(Debug, "Assertion Failed!\n{}", msg);
|
||||||
|
assert_fail_impl();
|
||||||
|
}
|
||||||
|
|
29
src/imgui/imgui_config.h
Normal file
29
src/imgui/imgui_config.h
Normal file
|
@ -0,0 +1,29 @@
|
||||||
|
// SPDX-FileCopyrightText: Copyright 2024 shadPS4 Emulator Project
|
||||||
|
// SPDX-License-Identifier: GPL-2.0-or-later
|
||||||
|
|
||||||
|
#pragma once
|
||||||
|
|
||||||
|
// WARNING: All includes from this file must be relative to allow Dear_ImGui project to compile
|
||||||
|
// without having this project include paths.
|
||||||
|
|
||||||
|
#include <cstdint>
|
||||||
|
|
||||||
|
extern void assert_fail_debug_msg(const char* msg);
|
||||||
|
|
||||||
|
#define ImDrawIdx std::uint32_t
|
||||||
|
|
||||||
|
#define IM_STRINGIZE(x) IM_STRINGIZE2(x)
|
||||||
|
#define IM_STRINGIZE2(x) #x
|
||||||
|
#define IM_ASSERT(_EXPR) \
|
||||||
|
([&]() { \
|
||||||
|
if (!(_EXPR)) [[unlikely]] { \
|
||||||
|
assert_fail_debug_msg(#_EXPR " at " __FILE__ ":" IM_STRINGIZE(__LINE__)); \
|
||||||
|
} \
|
||||||
|
}())
|
||||||
|
|
||||||
|
#define IMGUI_USE_WCHAR32
|
||||||
|
#define IMGUI_ENABLE_STB_TRUETYPE
|
||||||
|
#define IMGUI_DEFINE_MATH_OPERATORS
|
||||||
|
|
||||||
|
#define IM_VEC2_CLASS_EXTRA \
|
||||||
|
constexpr ImVec2(float _v) : x(_v), y(_v) {}
|
Loading…
Add table
Add a link
Reference in a new issue