问题标签 [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.
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)。
function - Unity 自定义编辑器窗口输入控件,用于反射确定的类型
我正在创建一个 GUI,用于在受UnityEvent GUI启发的 Unity 自定义EditorWindow中选择一个函数。我无法让UnityEvent本身工作;使用EditorGUILayout.PropertyField并将UnityEvent成员作为序列化属性引用会产生一个空的折叠。
我选择了一个有效的函数,但我不知道如何允许用户指定函数参数参数。
我可以获得ParameterInfo和ParameterType,但我不知道如何创建输入 GUI 字段来指定适当的参数参数。
如何为类型由反射确定的参数创建 Unity IMGUI 输入字段?
c++ - 如果 copts 不允许系统路径,如何引用外部依赖项使用的系统库?
对于 Bazel,我正在从我的内部拉入一个外部库WORKSPACE
:
在里面BUILD.imgui
,我正在尝试构建它:
问题是它找不到#include <SDL.h>
。
我尝试将其添加到 copts:
但错误是:
好的。如果我尝试将其添加includes
到cc_library
.
我尝试了另一个技巧,我看到你通过 Bazel 中的另一个 repo 使标题可见,编辑WORKSPACE
如下:
问题是,如果我将该 repo 作为我正在尝试构建的外部库的 deps 引用,我会收到以下错误:
当然,我不能将标题更改为那个,因为它不是我的标题。它来自我下拉的外部库。
我该怎么办?
我不明白为什么我不能向 copts 添加系统路径(可能是密封的原因)。我不知道如何包含路径并将它们作为系统头文件访问。我也尝试了不同的东西-isystem
,但看到了同样的错误。
user-interface - 是否有任何基本的即时模式 gui 教程?
我正在尝试找到任何可以向我展示如何进行即时模式 gui 的基本教程。我知道制作自己的 gui 是一件非常困难的事情。我已经尝试制作保留的 gui(它最终变得非常基本)。我一直在寻找任何 im gui 教程,但找不到。我试过阅读 ImGui lib,但有些东西很难理解。
你有任何视频,书籍,...?
你能给我一些建议,我怎样才能制作那种类型的 gui。
我不想使用外部库。我想学点东西。
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 中共享外部对象时不会崩溃。
记录器文档。
c++ - 亲爱的 ImGui 窗口适合背景
如何使Dear ImGui创建的窗口完全适合“背景”?我的意思是当我们创建一个窗口时,它也在一些渲染场景或背景中。我想模仿其他框架(例如 Qt)创建的窗口,使其更像桌面应用程序,而不仅仅是在某些游戏中。
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 谢谢
c++ - 如何在 GLFW 窗口中限制我的每秒帧数?(使用亲爱的 ImGui)
目前,如果我的窗口足够小,我亲爱的 ImGui 应用程序(主要是带有一些自定义 OpenGL 渲染的演示窗口)运行速度约为 2000 fps。如何将其限制为显示器刷新率(甚至仅 60fps)?
我当前的代码如下所示:
如您所见,它与 ImGui 示例中给出的 GLFW 和 OpenGL 3 的原始示例代码没有(几乎完全不同),除了我尝试使用glfwWindowHint(GLFW_REFRESH_RATE, 60)
.全屏模式下的窗口。另外,我认为这glfwSwapInterval(1)
也可能将刷新率限制为显示器的刷新率,但它似乎也没有这样做。任何帮助将非常感激。
编辑:GLFW 错误函数和加载。
opengl - 将 ImGui 与 OpenGL 一起使用时出现错误
我有一些在 OpenGL 中工作的代码,现在我想使用 ImGui 为我的应用程序制作 GUI。
ImGui::CreateContext();
当我试图通过包含一些头文件将ImGui 的一行代码复制到我的项目时ImGui
,它持续了一百个错误(可能是由于链接)。
我正在使用 Ubuntu 18,我使用 Makefile 来编译整个项目
我在包括以下内容时遇到的一些错误imgui.h
:
当我运行一些提供的示例时,它们运行良好。但是,当尝试将我的项目与 imgui 的单行代码合并时,最终会出现上面显示的错误。