下载地址
Immediate Mode Graphical User interface,Immediate模式,不保存UI对象,用静态方法每帧创建,Unity里的GUI就是这种模式,适合小游戏或快速开发,如果要做动画或者保存状态,可能需要自己额外封装一层,好处就是好写,虽然我还是喜欢UGUI的那种。
入坑方法:
进入github官网下载源码,将这些文件拖入自己的项目,比如单独弄一个imGUI文件夹。
实操样例:
一.显示demo窗口
1.准备工作
- 创建一个imgui管理类,并在GameApp类中添加其public对象imgui
.h
#pragma once
class ImguiManager
{
public:
ImguiManager();
~ImguiManager();
};
.cpp
#include "ImguiManager.h"
#include "imGUI\imgui.h"
ImguiManager::ImguiManager()
{
IMGUI_CHECKVERSION();
ImGui::CreateContext();
ImGui::StyleColorsDark();
}
ImguiManager::~ImguiManager()
{
ImGui::DestroyContext();
}
- imgui_impl_win32.h文件里添加#include "imgui.h"和<Windows.h>,要不会报错
IMGUI_IMPL_API void ImGui_ImplWin32_NewFrame();
的下面添加上LRESULT ImGui_ImplWin32_WndProcHandler(HWND hWnd, UINT msg, WPARAM wParam, LPARAM lParam);
,这样后面调用这个函数就不用include cpp了 - 在
bool D3DApp::InitMainWindow()