问题标签 [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 回答
909 浏览

c++ - 在 ImGui 中嵌入大于 char 大小的字体

我正在开发使用 ImGui 作为前端的小脚本的翻译。我需要扩展的 unicode 字符集才能在将要使用的字体中使用。由于这个脚本是通过 DLL 注入的,所以没有办法(我想是的。我根本没有使用 c++ 的经验。)使用:

io.Fonts->AddFontFromFileTTF("myfontfile.ttf", size_in_pixels);

从 ttf 文件添加字体导致 data == NULL;

我也尝试使用 io.Fonts->AddFontFromMemoryCompressedBase85TTF 并通过包含 binary_to_compressed_c 编译字体,但输出太大了,我得到:

致命错误 C1091:编译器限制:字符串长度超过 65535 个字节

但函数不接受除 char* 之外的任何类型。我将字符连接成字符串,然后通过 str() 和 c_str() 重新组装它,但应用程序在注入后崩溃。这是从 ImGui 处理 base85 转换的函数:

我该如何解决这个问题?我已经尝试了一切,但没有任何效果。只有将较小的字符传递给编译函数才有效(尝试使用捆绑的 Cousine_Regular.ttf)。

0 投票
1 回答
572 浏览

function - Unity 自定义编辑器窗口输入控件,用于反射确定的类型

我正在创建一个 GUI,用于在受UnityEvent GUI启发的 Unity 自定义EditorWindow中选择一个函数。我无法让UnityEvent本身工作;使用EditorGUILayout.PropertyField并将UnityEvent成员作为序列化属性引用会产生一个空的折叠。

我选择了一个有效的函数,但我不知道如何允许用户指定函数参数参数。

我可以获得ParameterInfoParameterType,但我不知道如何创建输入 GUI 字段来指定适当的参数参数。

如何为类型由反射确定的参数创建 Unity IMGUI 输入字段?

0 投票
1 回答
1673 浏览

c++ - 如果 copts 不允许系统路径,如何引用外部依赖项使用的系统库?

对于 Bazel,我正在从我的内部拉入一个外部库WORKSPACE

在里面BUILD.imgui,我正在尝试构建它:

问题是它找不到#include <SDL.h>
我尝试将其添加到 copts:

但错误是:

好的。如果我尝试将其添加includescc_library.

我尝试了另一个技巧,我看到你通过 Bazel 中的另一个 repo 使标题可见,编辑WORKSPACE如下:

问题是,如果我将该 repo 作为我正在尝试构建的外部库的 deps 引用,我会收到以下错误:

当然,我不能将标题更改为那个,因为它不是我的标题。它来自我下拉的外部库。

我该怎么办?
我不明白为什么我不能向 copts 添加系统路径(可能是密封的原因)。我不知道如何包含路径并将它们作为系统头文件访问。我也尝试了不同的东西-isystem,但看到了同样的错误。

0 投票
1 回答
3513 浏览

user-interface - 是否有任何基本的即时模式 gui 教程?

我正在尝试找到任何可以向我展示如何进行即时模式 gui 的基本教程。我知道制作自己的 gui 是一件非常困难的事情。我已经尝试制作保留的 gui(它最终变得非常基本)。我一直在寻找任何 im gui 教程,但找不到。我试过阅读 ImGui lib,但有些东西很难理解。

你有任何视频,书籍,...?

你能给我一些建议,我怎样才能制作那种类型的 gui。

我不想使用外部库。我想学点东西。

0 投票
1 回答
104 浏览

c++ - 在两个 .cpp 文件之间定义全局类/结构指针

我在不同的 .cpp 文件之间声明公共/外部结构对象时遇到问题。我正在尝试使用 imgui 记录器从挂钩记录一些消息。

该程序将崩溃ExampleAppLog my_log2; -> ImGuiTextBuffer Buf; -> class ImVector -> if (Data)

因为我ExampleAppLog* my_log2 = new ExampleAppLog();在一个包含 .h 的 .cpp 中执行此操作,其中包含 struct ExampleAppLog 以及 my_log2 的声明。

崩溃的相关代码 -> .h

.cpp

imgui.h

示例代码 -> .h

一.cpp

二.cpp

我尝试了许多不同的方法,但没有运气,但在尝试在多个 .cpp 中共享外部对象时不会崩溃。

记录器文档。

0 投票
1 回答
1242 浏览

c++ - 亲爱的 ImGui 窗口适合背景

如何使Dear ImGui创建的窗口完全适合“背景”?我的意思是当我们创建一个窗口时,它也在一些渲染场景或背景中。我想模仿其他框架(例如 Qt)创建的窗口,使其更像桌面应用程序,而不仅仅是在某些游戏中。

0 投票
0 回答
335 浏览

opengl - 如何将 gfx-rs (opengl) 场景渲染到 ImGui-rs 窗口中?

我是 Rust 和 gfx-rs 的新手,我想渲染一个纹理并将该纹理用作 imgui 的图像,几个小时后:-) 我已经成功地使用 factory.view_texture_as_render_target 创建了一个纹理,但我没有知道如何在 imgui 中将其用作纹理;( ps :我曾经使用 c++ 作为https://gamedev.stackexchange.com/questions/140693/how-can-i-render-an-opengl-scene-into-an-imgui-window?rq=1 )

其实这就是我想做的,我试过了,但它不起作用。似乎纹理不被认为是同一类型(或者我做错了方式:因为我是生锈的初学者),如果看看下面的代码,我会很感激,也许你可以给我其他的建议。Ps:在 C++ 中它使用指针。但是在 rust 中,我不太习惯打字系统。

它基于这个例子:https ://github.com/WimbledonLabs/imgui_gfx_example 谢谢

0 投票
1 回答
3543 浏览

c++ - 如何在 GLFW 窗口中限制我的每秒帧数?(使用亲爱的 ImGui)

目前,如果我的窗口足够小,我亲爱的 ImGui 应用程序(主要是带有一些自定义 OpenGL 渲染的演示窗口)运行速度约为 2000 fps。如何将其限制为显示器刷新率(甚至仅 60fps)?

我当前的代码如下所示:

如您所见,它与 ImGui 示例中给出的 GLFW 和 OpenGL 3 的原始示例代码没有(几乎完全不同),除了我尝试使用glfwWindowHint(GLFW_REFRESH_RATE, 60).全屏模式下的窗口。另外,我认为这glfwSwapInterval(1)也可能将刷新率限制为显示器的刷新率,但它似乎也没有这样做。任何帮助将非常感激。

编辑:GLFW 错误函数和加载。

0 投票
1 回答
115 浏览

java - Java 和 C 之间的代码点不匹配

0 投票
1 回答
812 浏览

opengl - 将 ImGui 与 OpenGL 一起使用时出现错误

我有一些在 OpenGL 中工作的代码,现在我想使用 ImGui 为我的应用程序制作 GUI。

ImGui::CreateContext();当我试图通过包含一些头文件将ImGui 的一行代码复制到我的项目时ImGui,它持续了一百个错误(可能是由于链接)。

我正在使用 Ubuntu 18,我使用 Makefile 来编译整个项目

我在包括以下内容时遇到的一些错误imgui.h

当我运行一些提供的示例时,它们运行良好。但是,当尝试将我的项目与 imgui 的单行代码合并时,最终会出现上面显示的错误。