glUseProgram(0) 的作用是什么?

2024-04-02

OpenGL 文档为glUseProgram https://www.khronos.org/registry/OpenGL-Refpages/gl4/html/glUseProgram.xhtml声称用参数调用它zero将导致着色器执行的结果为undefined.

然而,经过一番搜索后,我看到了一些人们使用的例子glUseProgram to 卸载当前的着色器程序。

这种行为可靠吗?如果不是,那么到底是什么glUseProgram(0) do?


glUseProgram意味着给定的程序对象是将用于使用程序的事物的当前程序(glUniform、渲染命令等)。 0 很像NULL对于 OpenGL 对象。它代表的不是一个对象(对于大多数对象而言)。所以,glUseProgram(0)意思是no程序是最新的,因此不会将任何程序用于使用程序的事物。

如果您尝试致电glUniform当当前没有程序时,函数将失败并出现错误。如果您尝试在当前没有程序时进行渲染,则会发生以下两种情况之一。在 OpenGL 3.1+ 核心配置文件中,您将得到未定义的行为,因为核心 OpenGLmust用程序渲染。在兼容性配置文件或 3.0 或更低版本中,您将获得固定功能渲染。

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

glUseProgram(0) 的作用是什么? 的相关文章

  • Rails 使用驼峰命名法渲染 json 对象

    我在简单的 Rails API 中有以下控制器代码 class Api V1 AccountsController lt ApplicationController def index render json Account all end
  • OpenGL z轴指向哪里?

    我正在尝试了解 OpenGL 坐标系 我到处都看到它被描述为右撇子 但这与我的经验不符 我尝试绘制一些形状和 3 d 对象 我发现 z 轴显然指向 屏幕 而 x 指向右侧 y 指向上方 这是左手坐标系的描述 我缺少什么 编辑 例如 http
  • 通过 MailChimp 发送电子邮件

    我认为问题出在附近 api gt listSubscribers include libs mailchimp MCAPI class php options array list id gt list id subject gt Prov
  • 使用 Chrome TTS 的 SSML

    我试图通过强调等方式让 TTS 句子更加清晰 我正在使用Chrome TTS API http developer chrome com extensions tts html 这表明它接受SSML 格式的文档 http www w3 or
  • 如何将点光源转换为卵形/椭圆形?

    我希望通过具有不同 x 和 y 值的 vec2 半径将当前的圆形光变成椭圆形 有没有办法根据我当前在片段着色器中的代码来做到这一点 uniform struct Light vec4 colour vec3 position vec2 ra
  • 我们可以使用 axios 的 onDownloadProgress 来加载 API 吗?

    我需要使用 axios 创建一个用于在 React 项目中加载 API 的进度条 我为此发现了 onDownloadProgress 函数 但我不知道我们是否可以使用它来获取诸如加载百分比之类的信息 或者它是否仅用于文件下载 所以我不确定我
  • 如何使用 Sound Cloud API 按标签搜索特定用户的曲目?

    我想通过仅与我的用户名 即皇家歌剧院 相关的标签搜索曲目 例如 http api soundcloud com users royaloperahouse tracks client id 238947HSGDHSDG tags eric
  • 如何按城市过滤 WikiVoyage API 结果?

    我目前正在尝试使用 wikivoyage API 我当前的 API 调用如下所示 en wikivoyage org w api php action query list search srwhat text srsearch Pari
  • lnk1104:无法打开“LIBC.lib”链接

    使用 GLee 将着色器写入我的 OpenGL 项目并编译后 我收到了错误LNK1104 cannot open file LIBC lib 我尝试按照其他人的建议添加它并忽略它 但没有解决问题 有没有其他方法可以解决我错过的这个问题 以下
  • jQuery - 解析 JSON 数据 - 变量名称遇到问题

    我第一次深入研究 JSON 数据的使用 不过我有一些使用 jQuery 的经验 我发布到此 URL tumblr api jyoseph com api read json 我想做的是输出返回的 json 到目前为止我所拥有的 docume
  • 如何在S3中存储数据并允许用户使用rails API / iOS客户端以安全的方式访问?

    我是编写 Rails 和 API 的新手 我需要一些有关 S3 存储解决方案的帮助 这是我的问题 我正在为 iOS 应用程序编写一个 API 用户在 iOS 上使用 Facebook API 登录 服务器根据 Facebook 向 iOS
  • 为什么 OpenGL 给对象提供句柄而不是指针?

    OpenGL 的传统是让用户使用 unsigned int 句柄来操作 OpenGL 对象 为什么不直接给出一个指针呢 与指针相比 唯一 ID 有何优点 TL DR OpenGL ID 不会双射映射到内存位置 单个 OpenGL ID 可能
  • OpenGL 与 Eclipse CDT + MinGW + GLEW + GLFW:未定义的参考

    Edit 与此同时 我已经弄清楚了这一点 并在下面写了详细的答案 我刚刚尝试在 Win7 上从 Express 版本的 MSVC 10 切换到 Eclipse CDT 在配置时遇到了以下简单 OpenGL 代码的问题 在 Visual St
  • 使用 OpenGL 着色器进行数学计算 (C++)

    我有一个矩阵 例如 100x100 尺寸 我需要对每个元素进行计算 matrix i j tt 8 5例如 我有一个巨大的矩阵 我想使用 OpenGL 着色器来实现该算法 我想使用着色器 例如 uniform float val unifo
  • Swift:转义闭包捕获非转义参数“onCompletion”

    我的 swift 有问题 我正在尝试发送 API 请求 然后检索数据 但收到以下错误消息 Swift 转义闭包捕获非转义参数 onCompletion 有谁知道我该如何解决这个问题 提前致谢 Code class RestApiManage
  • NV_path_rendering替代方案[关闭]

    Closed 这个问题不符合堆栈溢出指南 help closed questions 目前不接受答案 我刚刚观看了 Siggraph 2012 的一个非常令人印象深刻的演示 http nvidia fullviewmedia com sig
  • 删除 Google Maps API Premier 使用条款/徽标/等。链接?

    删除我的集成谷歌地图 谷歌地图总理 上显示的徽标 使用条款链接是否合法 问题是 当我放大地图时 链接往往会变得更长并记录并覆盖整个网站 这非常难看 当然可以给div容器一个 overflow hidden 标志有一点帮助 但仍不令人满意 T
  • 我可以查看当前登录的 Twitter 用户吗?

    他们没有通过我的网站进行 OAuth 验证 但在该浏览器上登录到 Twitter 有什么办法让我知道他们的 Twitter 用户名吗 饼干 什么 除非某些东西非常糟糕或者 Twitter 明确提供了用于此目的的 API 否则不会 至少不是通
  • glut 库中缺少 glutInitContextVersion()

    我正在练习一些 opengl 代码 但是当我想通过以下方式强制 opengl 上下文使用特定版本的 opengl 时glutInitContextVersion 它编译过程失败并给出以下消息 使用未声明的标识符 glutInitContex
  • 发送 Microsoft Graph 请求事件返回 400

    我能够通过将 JSON 请求发布到https graph microsoft com v1 0 me calendar events https graph microsoft com v1 0 me calendar events 我已经

随机推荐

  • 在线性时间内打印出不相交集数据结构中的节点

    我正在尝试在 Cormen 等人的 算法简介 中进行此练习 该练习与分离集数据结构有关 假设我们要添加操作PRINT SET x 给定 一个节点x并打印所有成员x已设置 按任何顺序 展示如何 我们可以只向不相交集中的每个节点添加一个属性 森
  • 了解 Swift 中的 UnicodeScalar 初始值设定项

    如果我们再看一下结构体UnicodeScalar 我们看到这个初始化器 init v UInt32 但你可以毫无问题地做到这一点 println UnicodeScalar a value 它打印出 97 但如果你尝试这样做 let a C
  • Doctrine2 和 Zend 框架中的多个数据库连接

    我目前正在开发一个使用 ZF 1 11 3 构建的应用程序 Doctrine2 是使用的 ORM 组件 我需要使用多个数据库 在 application ini 文件中 我将数据库连接设置如下 resources doctrine dbal
  • Rails 运行脚本不工作

    任何想法为什么这不起作用 我得到一个NoMethodError当我尝试通过运行下面的代码时rails runner 也许我错误地调用了 Rails 运行程序 抱歉 Rails 新手 文件位置 app scripts data import
  • 如何使用鼠标滚轮在 tmux 面板中启用滚动? [关闭]

    Closed 这个问题不符合堆栈溢出指南 help closed questions 目前不接受答案 需要使用鼠标滚轮在 tmux 窗格中启用滚动 我怎样才能得到这些提示 我可以使用它 当然如果它存在的话 鼠标选择窗格打开 option 原
  • 如何将 Windows 身份验证与 SQL Server docker 容器一起使用

    我已经浏览了我可以在网上找到的用于构建基于 docker 容器的应用程序的所有示例 我想在两个 docker 容器中运行两个服务 运行 ASP NET 的 Windows 容器 运行 SQL Server 的 Windows 容器 简单的工
  • 在 Firefox 中单击“后退”按钮,在访问时重新加载页面

    我有一个页面 它可以将整个身体从观看者的屏幕上动画出来作为过渡 它工作正常 但是当用户单击浏览器中的后退按钮时 Firefox 会从历史记录中调出没有正文的缓存页面 因此 当我通过后退按钮访问时重新加载页面对我来说非常简单 我尝试了以下代码
  • 我将把“Public static void main(String[] args)”放在哪里?

    几天前我开始编写java代码 我制作了一些成功的程序 但我坚持这个 无论我在哪里编写 Public static void main String args 代码 我都会收到错误 大多数时候它告诉我 是期待 我知道把 该代码前面是错误的 有
  • 如何修复“导入错误:无法导入名称 IncompleteRead”?

    当我尝试安装任何东西时pip or pip3 I get sudo pip3 install python3 tk Traceback most recent call last File usr bin pip3 line 9 in
  • Asp.net - MVC1 与 MVC2

    任何人都可以准确解释 ASP NET MVC1 与 MVC2 之间的区别 如果我在 MVC1 中有一个项目 我如何将其迁移到 MVC2 MVC 2 是同一库的更高版本 要升级到它 请阅读这一页 http www asp net learn
  • RecyclerView 预测项目动画不起作用(出现)

    我有一个带有 GridLayoutManager 的 RecyclerView 支持 lib v7 我更新适配器并进行notifyItemMoved 如果项目源位置在屏幕上并且目标位置也在屏幕上 则播放 移动动画 如果该项目位于屏幕外的位置
  • ArgumentNullException - 获取 AzureService

    我正在尝试使用 Windows Azure PowerShell 模块来管理订阅 我已经下载了我的证书 publishsettings 文件 并将其导入Import AzurePublishSettingsFile然后我选择了我的订阅Sel
  • 如何获取通过输入框输入的城市/国家的经度和纬度?

    我有这个代码
  • 如何在反应选择上进行for循环?

    我使用react select创建一个选择选项安装与使用 https github com JedWatson react select示例代码 有一个数组对象来存储如下选项 const options value chocolate la
  • 如何在 R 中将所有行合并为一行? [关闭]

    Closed 这个问题需要细节或清晰度 help closed questions 目前不接受答案 我有一个有 100 行和 10 列的数据框 我想知道如何将所有 100 行合并为一行 谢谢 mydata seq 1 1000 mydata
  • 如何在 DocPad 中缩小 HTML、CSS 和 JavaScript 文件?

    我想在点击时缩小 HTML CSS 和 JavaScript 文件docpad generate 我怎样才能做到这一点 有几种方法可以解决这个问题 最突出 最直接的方法就是修改你的文档垫配置文件 http bevry me docpad c
  • iPad 上的 YouTube 嵌入代码

    我正在努力通过添加 iPad 支持来改善网站的体验 这包括对视频的支持 我们的客户正在推动一种用于存储和提供视频的 YouTube 模型 这对我们来说太棒了 我原本计划使用 YouTube 新的 HTML5 支持来实现片段 这将设备检测任务
  • C++:计算游戏中的总帧数

    不是一个很好的标题 但我不知道该起什么名字 无论如何 我正在计算游戏中的总帧数 这样我就可以计算平均 FPS long int 万一游戏持续很长时间 我该怎么做才能确保我的long int不会增加超过其限制吗 如果超过极限会发生什么 Tha
  • 以不同数组长度绘制来自 pandas 数据帧的 3D 光谱数据

    是否有可能得到类似的东西这个情节 https www researchgate net figure 7662272 fig1 Figure 4 3D overlay zoom plot of mass spectra of a serum
  • glUseProgram(0) 的作用是什么?

    OpenGL 文档为glUseProgram https www khronos org registry OpenGL Refpages gl4 html glUseProgram xhtml声称用参数调用它zero将导致着色器执行的结果