Reverse-engineered reimplementation of 3D Pinball for Windows - Space Cadet from k4zmu2a/SpaceCadetPinball (MIT), upstream cb9b7b8, vendored rather than submoduled so local patches are just edits. - CMakeLists: stop hard-setting CMAKE_OSX_ARCHITECTURES so the documented -D override works; brew's SDL2 is arm64-only and universal linking failed. - gitignore original .DAT/.MID assets, which are not ours to redistribute. - CLAUDE.md: build line, upstream deviation, and where game data goes. Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
30 lines
1.4 KiB
C
30 lines
1.4 KiB
C
// dear imgui: Renderer Backend for SDL_Renderer
|
|
// (Requires: SDL 2.0.17+)
|
|
|
|
// Important to understand: SDL_Renderer is an _optional_ component of SDL.
|
|
// For a multi-platform app consider using e.g. SDL+DirectX on Windows and SDL+OpenGL on Linux/OSX.
|
|
// If your application will want to render any non trivial amount of graphics other than UI,
|
|
// please be aware that SDL_Renderer offers a limited graphic API to the end-user and it might
|
|
// be difficult to step out of those boundaries.
|
|
// However, we understand it is a convenient choice to get an app started easily.
|
|
|
|
// Implemented features:
|
|
// [X] Renderer: User texture binding. Use 'SDL_Texture*' as ImTextureID. Read the FAQ about ImTextureID!
|
|
// [X] Renderer: Support for large meshes (64k+ vertices) with 16-bit indices.
|
|
|
|
#pragma once
|
|
#include "imgui.h" // IMGUI_IMPL_API
|
|
|
|
struct SDL_Renderer;
|
|
|
|
IMGUI_IMPL_API bool ImGui_ImplSDLRenderer_Init(SDL_Renderer* renderer);
|
|
IMGUI_IMPL_API void ImGui_ImplSDLRenderer_Shutdown();
|
|
IMGUI_IMPL_API void ImGui_ImplSDLRenderer_NewFrame();
|
|
IMGUI_IMPL_API void ImGui_ImplSDLRenderer_RenderDrawData(ImDrawData* draw_data);
|
|
|
|
// Called by Init/NewFrame/Shutdown
|
|
IMGUI_IMPL_API bool ImGui_ImplSDLRenderer_CreateFontsTexture();
|
|
IMGUI_IMPL_API void ImGui_ImplSDLRenderer_DestroyFontsTexture();
|
|
IMGUI_IMPL_API bool ImGui_ImplSDLRenderer_CreateDeviceObjects();
|
|
IMGUI_IMPL_API void ImGui_ImplSDLRenderer_DestroyDeviceObjects();
|