imgui_impl_metal.h (imgui-1.86) | : | imgui_impl_metal.h (imgui-1.87) | ||
---|---|---|---|---|
skipping to change at line 15 | skipping to change at line 15 | |||
// [X] Renderer: User texture binding. Use 'MTLTexture' as ImTextureID. Read th e FAQ about ImTextureID! | // [X] Renderer: User texture binding. Use 'MTLTexture' as ImTextureID. Read th e FAQ about ImTextureID! | |||
// [X] Renderer: Support for large meshes (64k+ vertices) with 16-bit indices. | // [X] Renderer: Support for large meshes (64k+ vertices) with 16-bit indices. | |||
// You can use unmodified imgui_impl_* files in your project. See examples/ fold er for examples of using this. | // You can use unmodified imgui_impl_* files in your project. See examples/ fold er for examples of using this. | |||
// Prefer including the entire imgui/ repository into your project (either as a copy or as a submodule), and only build the backends you need. | // Prefer including the entire imgui/ repository into your project (either as a copy or as a submodule), and only build the backends you need. | |||
// If you are new to Dear ImGui, read documentation from the docs/ folder + read the top of imgui.cpp. | // If you are new to Dear ImGui, read documentation from the docs/ folder + read the top of imgui.cpp. | |||
// Read online: https://github.com/ocornut/imgui/tree/master/docs | // Read online: https://github.com/ocornut/imgui/tree/master/docs | |||
#include "imgui.h" // IMGUI_IMPL_API | #include "imgui.h" // IMGUI_IMPL_API | |||
//----------------------------------------------------------------------------- | ||||
// ObjC API | ||||
//----------------------------------------------------------------------------- | ||||
#ifdef __OBJC__ | ||||
@class MTLRenderPassDescriptor; | @class MTLRenderPassDescriptor; | |||
@protocol MTLDevice, MTLCommandBuffer, MTLRenderCommandEncoder; | @protocol MTLDevice, MTLCommandBuffer, MTLRenderCommandEncoder; | |||
IMGUI_IMPL_API bool ImGui_ImplMetal_Init(id<MTLDevice> device); | IMGUI_IMPL_API bool ImGui_ImplMetal_Init(id<MTLDevice> device); | |||
IMGUI_IMPL_API void ImGui_ImplMetal_Shutdown(); | IMGUI_IMPL_API void ImGui_ImplMetal_Shutdown(); | |||
IMGUI_IMPL_API void ImGui_ImplMetal_NewFrame(MTLRenderPassDescriptor* renderPass Descriptor); | IMGUI_IMPL_API void ImGui_ImplMetal_NewFrame(MTLRenderPassDescriptor* renderPass Descriptor); | |||
IMGUI_IMPL_API void ImGui_ImplMetal_RenderDrawData(ImDrawData* draw_data, | IMGUI_IMPL_API void ImGui_ImplMetal_RenderDrawData(ImDrawData* draw_data, | |||
id<MTLCommandBuffer> commandB uffer, | id<MTLCommandBuffer> commandB uffer, | |||
id<MTLRenderCommandEncoder> c ommandEncoder); | id<MTLRenderCommandEncoder> c ommandEncoder); | |||
// Called by Init/NewFrame/Shutdown | // Called by Init/NewFrame/Shutdown | |||
IMGUI_IMPL_API bool ImGui_ImplMetal_CreateFontsTexture(id<MTLDevice> device); | IMGUI_IMPL_API bool ImGui_ImplMetal_CreateFontsTexture(id<MTLDevice> device); | |||
IMGUI_IMPL_API void ImGui_ImplMetal_DestroyFontsTexture(); | IMGUI_IMPL_API void ImGui_ImplMetal_DestroyFontsTexture(); | |||
IMGUI_IMPL_API bool ImGui_ImplMetal_CreateDeviceObjects(id<MTLDevice> device); | IMGUI_IMPL_API bool ImGui_ImplMetal_CreateDeviceObjects(id<MTLDevice> device); | |||
IMGUI_IMPL_API void ImGui_ImplMetal_DestroyDeviceObjects(); | IMGUI_IMPL_API void ImGui_ImplMetal_DestroyDeviceObjects(); | |||
#endif | ||||
//----------------------------------------------------------------------------- | ||||
// C++ API | ||||
//----------------------------------------------------------------------------- | ||||
// Enable Metal C++ binding support with '#define IMGUI_IMPL_METAL_CPP' in your | ||||
imconfig.h file | ||||
// More info about using Metal from C++: https://developer.apple.com/metal/cpp/ | ||||
#ifdef IMGUI_IMPL_METAL_CPP | ||||
#include <Metal/Metal.hpp> | ||||
#ifndef __OBJC__ | ||||
IMGUI_IMPL_API bool ImGui_ImplMetal_Init(MTL::Device* device); | ||||
IMGUI_IMPL_API void ImGui_ImplMetal_Shutdown(); | ||||
IMGUI_IMPL_API void ImGui_ImplMetal_NewFrame(MTL::RenderPassDescriptor* renderPa | ||||
ssDescriptor); | ||||
IMGUI_IMPL_API void ImGui_ImplMetal_RenderDrawData(ImDrawData* draw_data, | ||||
MTL::CommandBuffer* commandBu | ||||
ffer, | ||||
MTL::RenderCommandEncoder* co | ||||
mmandEncoder); | ||||
// Called by Init/NewFrame/Shutdown | ||||
IMGUI_IMPL_API bool ImGui_ImplMetal_CreateFontsTexture(MTL::Device* device); | ||||
IMGUI_IMPL_API void ImGui_ImplMetal_DestroyFontsTexture(); | ||||
IMGUI_IMPL_API bool ImGui_ImplMetal_CreateDeviceObjects(MTL::Device* device); | ||||
IMGUI_IMPL_API void ImGui_ImplMetal_DestroyDeviceObjects(); | ||||
#endif | ||||
#endif | ||||
End of changes. 2 change blocks. | ||||
0 lines changed or deleted | 6 lines changed or added |