问题标签 [imgui]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
631 浏览

c++ - 如何在 Linux 的 cmake gcc 项目中使用柯南处理 ImGui-SFML 依赖项?

我想使用 conan 在 Linux 中处理项目的依赖关系C++/cmake/gcc并构建一个 ImGui C++ 演示,如下所示:使用 Elias Daler 的 imgui

我已经使用Boost柯南成功地处理了依赖关系,但是使用 ImGui-SFML 我遇到了链接错误。

conanfile.txt有以下说明:

我将这些行添加到我CMakeLists.txt的与柯南一起工作:

然后,在里面build/我运行以下命令来构建库并安装依赖项:

到目前为止,柯南很好,libImGui-SFML.a生成了(它也被复制到,build/lib因为[imports]我添加了link_directories()指令,但我认为不应该需要副本)。

然后,我生成makefile

最后,当我尝试构建项目时

我收到这些链接错误:

柯南生成的库是静态的:

这篇文章看起来很相关,但不适用于 ImGui:Installing gtest with conan

程序是否在寻找共享库?

我是否conanfile.txt在文件或文件中缺少某些配置CMakeLists.txt


编辑:

0 投票
1 回答
875 浏览

c++ - 如何使用imgui在OpenGL c++中制作一个按钮

我想知道如何使用 glfw 在 OpenGL c++ 中制作按钮。我知道如何在 OpenGL 中制作按钮和文本框,但我有一个问题。当我在 imgui 的顶部制作一个按钮时,有一个类似矩形的窗口,它有一个名称(imgui demo 或您命名的任何名称)我想删除它。我可以混合颜色,使 OpenGL 窗口和 imgui 窗口看起来一样。只需移除顶部并混合颜色即可。

Imgui 按钮

正如您在图像中看到的那样,除了顶部之外,一切都相同。我想解决这个问题,或者删除它。

0 投票
1 回答
2089 浏览

c++ - 亲爱的 IMGUI 和 DirectX 12 覆盖 (DXGI_ERROR_INVALID_CALL)

我正在尝试使用 Dear IMGUI 为 DirectX 12 游戏制作一个简单的帧计数器。我只是想覆盖一个小的透明窗口,在游戏过程中显示帧的顺序。为此,我挂钩 Present(),因此我可以获得SwapChain, 并计算方法被调用的次数(帧计数)。这不是为了作弊。我不是为游戏写秘籍,我只是想记录帧数以用于分析目的。

我已经使用ShowExampleAppSimpleOverlay()此处提供的示例成功地为 DirectX 11 完成了此操作:https ://github.com/ocornut/imgui/blob/master/imgui_demo.cpp

这是一个显示 DX 11 游戏中的帧计数器的图像示例。

DX 11 中的帧计数器示例

我现在正尝试对 DirectX 12 做同样的事情。挂钩Present()不是问题。

使用此处提供的示例代码:https ://github.com/ocornut/imgui/blob/master/examples/example_win32_directx12/main.cpp

我尝试ShowExampleAppSimpleOverlay()再次使用该方法,但是在调用d3d12CommandQueue->ExecuteCommandLists(1, (ID3D12CommandList* const*)&d3d12CommandList);(以呈现覆盖)的代码中,它会导致错误提示(0x887A0001: DXGI_ERROR_INVALID_CALL). 这是下面提供的代码示例中的最后一行代码:

我不确定如何进行。有什么想法吗?

编辑:我忘了提到我也在连接和获取游戏命令 que。所以d3d12CommandQueue是直接从游戏中获得的。它不返回 NULL 所以我假设它是正确的对象。虽然我可能是错的......

对于 Present() 的每次调用,请执行以下操作:

0 投票
1 回答
666 浏览

c++ - 带有glfw的opengl没有与imgui c ++链接

我正在学习 opengl,并决定通过在项目中添加以下文件来将 imgui 用于现有的 opengl cmake 项目:

虽然这在 Windows 上工作正常但是当我在 linux 中构建它时链接器显示错误说:

所有其他 glfw 和 opengl 函数都在我的 application.cpp 中工作,只有当我将 imgui 文件添加到项目中时它才会中断。

0 投票
1 回答
1177 浏览

c# - 如何将自动换行添加到 EditorGUILayout.TextArea?

图片显示 textarea 中缺少自动换行

如何将自动换行添加到编辑器文本区域?我正在尝试模仿 [TextArea] 属性(自动换行,需要时自动增加高度)

我知道 GUILayout.TextArea() 有效,但我希望使用 EditorGUILayout,因为根据文档,它正确响应复制/粘贴、全选等。

我的代码:

0 投票
1 回答
6604 浏览

c++ - 如何正确安装 ImGui?

我对 c++ 很陌生,但我知道其他几种语言(即 python、java、一点 C)。问题是当我编译我的代码并尝试打开一个新的 ImGui 窗口时,它会给出“未定义的引用”错误。我认为这是我如何设置文件的问题。我的 main.cpp 文件和 imgui 库都在同一个目录中,当我尝试使用“#include”imgui/imgui.h“”导入文件时,它仍然给我未定义的引用错误。我试图将所有 .h 和 .cpp 文件从 imgui 文件夹中拉出并放入与我的“Main.cpp”文件相同的目录中,但它仍然给我一个未定义的参考错误。我已经阅读了您将 .cpp 文件放入工作目录的安装说明,但它仍然无法正常工作并给了我同样的错误。任何帮助,将不胜感激。

- - - - - - - - - - - - - - - - - - - - - - -输出 - - -----------------------------------------

-------------------------------------------我的工作目录---- --------

0 投票
4 回答
5674 浏览

imgui - 如何水平居中对齐文本?

我正在 ImGui 中创建文本。它会自动对齐,如何使一个文本在中心对齐?

我不相信有这样做的功能。我知道你可以为一个盒子或小部件做到这一点,但我将如何处理一个简单的文本?

0 投票
0 回答
217 浏览

c++ - ImGui 如何知道当前的缩进级别是多少?

有了 ImGui,我才恍然大悟

结果与以下不同的渲染:

第一个按钮嵌套在标题中,第二个按钮嵌套在标题之外。ImGui 到底怎么能说在第一个版本中按钮功能嵌套在 if 中,但在第二个版本中却不是?

0 投票
1 回答
368 浏览

opengl - 如何从 OpenGL 中的帧缓冲区纹理中采样像素?

我正在使用 ImGUI 为图像创建颜色选择器 OpenGL 应用程序。我设法通过将图像加载到 aglTexImage2D并使用ImGUI::Image(). 现在我想实现一个方法,它可以在鼠标左键单击的情况下确定像素的颜色。

这是我加载纹理,然后将其分配给帧缓冲区的方法:

不幸的是,上面的代码导致一个完全空白的屏幕。我想,在设置帧缓冲区时我错过了一些东西。

这是方法,我想使用鼠标坐标对帧缓冲区纹理进行采样:

任何帮助表示赞赏!

0 投票
1 回答
853 浏览

c++ - 无法在 Visual Studio (C++) 的 GLFW 项目中安装 ImGui

我在 Visual Studio 中有一个 GLFW 项目,我想将 ImGui 添加到其中。我按照教程安装它,我只是拿起一些文件并添加到项目中,但它给了我很多错误(+200)。主要错误是:

#错误

“无法检测到 OpenGL 加载程序!”

我遵循的教程是这样的:

https://www.youtube.com/watch?v=nVaQuNXueFw&ab_channel=TheCherno

我试图找到一些指南,但我找不到任何东西。