线程过剩: glutPostRedisplay 被忽略

2023-12-27

我有一个程序可以更新程序输出,然后程序的状态会发生变化。当时间计时器(不是 openGL 计时器,而是在线程中实现的)发生时,以及从 glut 注册键盘输入(使用 glutKeyboardFunc 回调)时,就会发生这种情况。

这两个事件都会更新程序状态并调用 glutPostRedisplay;问题只是当按下键盘时它实际上会做任何事情。当定时器计时时,显示函数被忽略,但当按下键盘时,显示函数被调用。

glut会忽略其他线程吗?如果是这样,有没有办法让它注册它们。


你不能打电话glutPostRedisplay或来自除初始化 GLUT 之外的线程的大多数其他 GLUT 函数。GLUT 是not线程安全。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

线程过剩: glutPostRedisplay 被忽略 的相关文章

  • 帧缓冲区/颜色缓冲区?

    有人可以指出我两者是否相同吗 我的意思是我一直在阅读有关它的信息 这里的红皮书说 颜色缓冲区本身可以由多个子缓冲区组成 系统上的帧缓冲区包含所有这些缓冲区 here http glprogramming com red chapter10
  • MATLAB 图形渲染:OpenGL 与 Painters?

    当谈到使用哪个渲染器来处理 MATLAB 图形或何时它很重要时 我一无所知 但我遇到过某些示例 其中does matter plot 0 0 ko markersize 50 linewidth 8 set gcf renderer ope
  • 使用 glGetFloatv 检索 pyglet 中的模型视图矩阵

    我正在使用 pyglet 在 python 中进行 3D 可视化 并且需要检索模型视图和投影矩阵来进行一些选择 我使用以下方式定义我的窗口 from pyglet gl import from pyglet window import wi
  • OpenGL中背景对象绘制在前景对象前面?

    为了测试目的 我们假设我画了 2 个茶壶glutSolidTeapot 像这样 glColor3f 1 0f 0 0f 0 0f Red teapot glutWireTeapot 1 0f glColor3f 0 0f 1 0f 0 0f
  • Opengl 视频纹理

    我正在使用 Visual Studio 10 在 Windows 上用 C 开发 opengl 应用程序 目前我在立方体上使用静态纹理 但我想集成视频纹理 你知道我可以使用哪个库来打开和解密视频吗 查看 ffmpeg libavformat
  • GL_COLOR_ATTACHMENT 有什么作用?

    我现在正在学习帧缓冲区 但我只是不明白颜色附件的作用 我了解帧缓冲区 第二个参数的意义是什么 glFramebufferTexture2D GL FRAMEBUFFER GL COLOR ATTACHMENT0 GL TEXTURE 2D
  • 延迟阴影映射 GLSL

    我目前正在实施延迟渲染管道 但我仍坚持使用阴影贴图 我已经成功地将其实施到前向管道中 我所做的步骤是 获取灯光视图中的位置 转换为光视图剪辑空间 使用 0 5 0 5 获取阴影纹理坐标 检查深度 编辑 使用新结果图像更新代码 float c
  • 在 OpenGL 中实例化数百万个对象:提高每秒帧数

    我的最终目标是以 60 fps 渲染 100 万个不同尺寸和颜色的球体 我也希望能够在屏幕上移动相机 我已经修改了代码我正在学习的教程的这一页 http learnopengl com Advanced OpenGL Instancing尝
  • matplotlib:渲染到缓冲区/访问像素数据

    我想使用 matplotlib 生成的图作为 OpenGL 中的纹理 到目前为止 我遇到的 matplotlib 的 OpenGL 后端要么不成熟 要么已经停止使用 所以我想避免使用它们 我当前的方法是将图形保存到临时 png 文件中 并从
  • 渲染到一个颜色通道而不影响其他通道

    使用 OpenGL 任何版本 如何通过一次仅影响一个颜色通道来渲染到帧缓冲区对象 例如 我的帧缓冲区对象具有 GL BGRA 布局 现在我想执行一些渲染命令 这些命令应该只改变红色通道 因此 如果片段用颜色 204 0 0 0 渲染并且像素
  • Qt 5.5 QOpenGLWidget 链接错误未链接任何 openGL 调用

    我尝试使用 Qt 5 5 1 构建一个简单的 OpenGL 应用程序 一切都很好 直到我尝试使用 glClearColor 等 openGL 本机函数调用 该小部件实际上编译并产生黑屏 但在我尝试使用任何 openGL 本机函数后 它甚至不
  • 无法在 QGLWidget 中设置所需的 OpenGL 版本

    我正在尝试在 Qt 4 8 2 中使用 QGLWidget 我注意到 QGLWidget 创建的默认上下文不显示 OpenGL 3 1 以上的任何输出 Qt wiki 有一个教程 http qt project org wiki How t
  • 为什么 cudaGLSetGLDevice 失败,即使它是在 main 函数的第一行中调用的

    我想使用 OpenGL 和 CUDA 之间的互操作性 我知道 正如一些教程所说 第一步是选择设备 但是 当我在主函数的第一行中调用 cudaGLSetGLDevice 0 时 程序退出并显示信息 cudaSafeCall 运行时 API 错
  • OpenGL纹理渲染与原始不匹配

    我正在尝试使用 OpenGL 渲染纹理 我用作测试的纹理是白色背景上的一堆黑色矩形 如下所示 然而 在渲染时 纹理似乎被复制并叠加在其自身之上多次 我使用以下方法设置场景 std string vertexSource ShaderLoad
  • OpenGL 与 OpenCL,选择哪个以及为什么?

    哪些功能使 OpenCL 能够独特地选择 OpenGL 和 GLSL 进行计算 尽管有与图形相关的术语和不实用的数据类型 OpenGL 是否有任何真正的警告 例如 可以通过使用其他纹理将 a 渲染到纹理来完成并行函数评估 减少操作可以通过迭
  • 如何使用OpenGL数组纹理?

    我正在尝试在OpenGL中使用精灵表 通过数组纹理实现它这就是我加载纹理的方式 QImage image image load C QtProjects project images spritesheet png png const un
  • glTranslatef 不在 glBegin .. glEnd 中工作

    我正在尝试并排绘制不同颜色的两个方块 我的问题是我无法让 glTranslatef 将第二个方块向右移动 第二个方块只是绘制在第一个方块上 void display void glClear GL COLOR BUFFER BIT glMa
  • 如何在 R 中导入并绘制三角形网格?

    我想在 R 中绘制我的模型输出 它是格式为的三角形网格 x1 y1 z1 x2 y2 z2 x3 y3 z3 value 每行代表一个三角形 我想用以下方法绘制这些三角形value作为规模 mymesh lt structure c 0 9
  • GLSL memoryBarrierShared() 有用吗?

    我想知道 memoryBarrierShared 的用处 事实上 当我查找屏障功能的文档时 我读到 对于计算着色器中任何给定的静态屏障实例 单个工作组内的所有调用都必须进入该实例 然后才能允许任何调用继续超出该实例 这确保了在给定的屏障静态
  • 在OpenGL中,我可以在坐标(5, 5)处精确地绘制一个像素吗?

    我所说的 5 5 正是指第五行第五列 我发现使用屏幕坐标来绘制东西非常困难 OpenGL 中的所有坐标都是相对的 通常范围从 1 0 到 1 0 为什么阻止程序员使用屏幕坐标 窗口坐标如此严重 最简单的方法可能是通过以下方式设置投影以匹配渲

随机推荐

  • 如何使用 javascript 设置文本框的值

    我试图从查询字符串中获取一个值并将该值分配到文本框中 我能够从查询字符串中获取值 但无法将其分配给文本框 document getElementByName Contact0Email Value email 尝试了上面的代码 但似乎不起作
  • 使用 JAXB 解组期间覆盖声明的编码

    我有一个 XML 文件 其中设置了编码 但实际上文件是用 UTF 8 编码的 使用 JAXB 解组 XML 文件时是否可以覆盖 XML 文件中声明的编码 您可以从 a 中解组内容java io Reader为了提供实际的编码 Unmarsh
  • 在C中,是否保证数组起始地址小于其他元素的地址?

    换句话说 当做 index array x array 0 是否总是保证 根据 C 标准 array 0 地址顺序是有保证的 关系运算符的行为定义在C11 6 5 8p5 http port70 net nsz c c11 n1570 ht
  • 分页逻辑怎么写?

    任何人都可以提供一些想法 逻辑来为我正在处理的搜索页面编写分页逻辑吗 我掌握的信息是总页数对于该搜索 每页10条记录我还收到了上一页和下一页的页码 编写逻辑没问题 我需要做的就是提取该信息并填充 我还获取我所在页面的信息 我只能显示 10
  • 导入com.google.android.gms.gcm.GoogleCloudMessaging无法解析[重复]

    这个问题在这里已经有答案了 我正在尝试在 Android 应用程序中使用通知 我发现了很多 tuto 但都使用了已弃用的 com google android gcm pakage 我发现我必须使用 com google android g
  • Apache - 处理 TCP 连接,但不处理 HTTP 请求

    我有一个 GPS 单元 可以通过 TCP 连接发送数据 但我无法修改它发送的消息 因此它会以 HTTP 请求的形式到达我的服务器 它只能发送消息以预定义的格式 所以 我有以下问题 1 是否可以让 Apache 处理不以 HTTP 请求形式出
  • “Hello World”——TDD 方式?

    自从我接触 TDD 以来 我一直在思考这个问题 构建 Hello World 应用程序的最佳方法是什么 这将在控制台上打印 Hello World 使用测试驱动开发 我的测试会是什么样子 以及大约什么班 Request No 类似维基百科
  • Apache Flink(如何唯一标记作业)

    是否可以使用唯一的名称来标记作业 以便我可以在以后停止它们 我真的不想 grep 并保留作业 ID 简而言之 我想在部署过程中停止一项作业并部署新作业 您可以在启动作业时为其命名execute name String 打电话 例如 val
  • 如何清除 IE 的图标缓存?

    我为我的网站定义了一个最喜欢的图标 任何访问过该网站的浏览器after我添加的图标可以很好地显示favicon 但我自己的浏览器拒绝显示图标 我已经尝试了我能想到的链接的所有变体
  • Java大文件AES加密很慢

    我正在尝试使用 AES CBC 算法加密 512 Mb 文件 大约需要 7 秒 这太长了 如何减少加密时间并使其更快 我使用固定密钥并尝试使用 CipherOutStream 以及 cipher update 而不是 cipher dofi
  • 为什么 Haskell 中基于 [Char] 的输入比基于 [Char] 的输出慢得多?

    这是一个不使用的常识 Char 在 Haskell 中读取大量数据 一用ByteString来完成这项工作 对此通常的解释是Chars 很大并且列表增加了它们的开销 然而 这似乎不会对输出造成任何问题 例如下面的程序 main intera
  • git重置后未暂存的文件消失了--hard

    我尝试过git reset hard HEAD n from git reflog我丢失了当前未暂存文件的所有内容 未暂存的文件是最后一个git add我做到了 在那之前我尝试过git reset到最后git commit 我所有的文件都消
  • 反应 onClick 问题

    我是 React 新手 我正在尝试将 onClick 事件连接到图像 以查看已按下的对象但无法使其工作 我已经尝试了在该网站上找到的几个答案 但没有一个起作用 可能是因为 var createItem jsx React DOM var R
  • Mono for Android OnPause 事件在 Galaxy Nexus 上未触发

    我整理了我的第一个 Mono for Android 项目 目标 API 级别 8 最低 Android 2 2 并将其部署到运行 2 3 4 的 HTC Incredible 1 一切都很顺利 并且在我的主要活动中出现了断点OnCreat
  • 对话框 ui 中的复选框不可选中

    我正在尝试使用 jQuery UI 对话框解决 z index 问题 类似于问题无法选择或取消选择 jQuery UI 模态对话框中的复选框 https stackoverflow com questions 10542327 cant s
  • 如何在 docker 容器中运行 npm 命令?

    我正在尝试在 docker 容器内以开发模式运行角度应用程序 但是当我使用 docker compose build 运行它时 它可以正常工作 但是当我尝试放置容器时 我收到以下错误 ERROR for sypgod Cannot star
  • jackson - 具有受控精度的双精度的 json 编码

    我正在使用双值数组对复杂的 Map 结构进行编码 高精度并不重要 输出大小才是重要的 所以我试图让 JSON 工具 在本例中为 Jackson 使用提供的 DecimalFormat 序列化双精度值 以下是我的最佳镜头 但由于对象映射器未选
  • C++(Windows)中的分配数及其可预测性

    我在用 CrtDump内存泄漏 http msdn microsoft com en gb library d41t22sb aspx识别我们软件中的内存泄漏 我们在多线程应用程序中使用第三方库 这个库确实存在内存泄漏 因此在我们的测试中
  • 加载 Google 地图时出现问题 - SensorNotRequired

    我正在尝试在 WordPress 网站上运行 Google 地图 代码在此完美运行JSFIDDLE http jsfiddle net 3VKQ8 55 但是当我将其带到 WordPress 时 我收到此错误 Google 地图 API 警
  • 线程过剩: glutPostRedisplay 被忽略

    我有一个程序可以更新程序输出 然后程序的状态会发生变化 当时间计时器 不是 openGL 计时器 而是在线程中实现的 发生时 以及从 glut 注册键盘输入 使用 glutKeyboardFunc 回调 时 就会发生这种情况 这两个事件都会