前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >7.2 uniform

7.2 uniform

作者头像
代码咖啡
发布2018-09-26 15:32:52
4130
发布2018-09-26 15:32:52
举报
文章被收录于专栏:程序员叨叨叨程序员叨叨叨

文章内容源自《GPU编程与CG语言之阳春白雪下里巴人》,因笔者读书易中途放弃,遂每读一章节,将其移至简书平台,以此作为对自己读书的勉励。笔者用粗体斜体 标注了关键词句,望感兴趣的读者们一起学习共勉。猛戳这里查看更多!

7.2 uniform

Cg 语言将输入数据流分为两类(参见文献[3]Program inputs and Outputs ):

  1. Varying inputs,即数据流输入图元信息的各种组成要素。从应用程序输入到 GPU 的数据除了顶点位置数据,还有顶点的法向量数据纹理坐标数据等。Cg 语言提供了一组语义词,用以表明参数是由顶点的哪些数据初始化的。
  2. Uniform inputs,表示一些与三维渲染有关的离散信息数据,这些数据通常由应用程序传入,并通常不会随着图元信息的变化而变化,如材质对光的反射信息运动矩阵等。Uniform 修辞一个参数,表示该参数的值由外部应用程序初始化并传入;例如在参数列表中写:
代码语言:javascript
复制
uniform float brightness,
uniform float4x4 modleWorldProject

表示从“外部”传入一个 float 类型数据,和一个 4 阶矩阵。“外部”的含义通常是用 OpenGL 或者 DirectX 所编写的应用程序。 使用 Uniform 修辞的变量,除了数据来源不同外,与其他变量是完全一样的。

需要注意的一点是:uniform 修辞的变量的值是从外部传入的,所以在 Cg 程序(顶点程序和片段程序)中通常使用 uniform 参数修辞函数形参,不容许声明一个用 uniform 修辞的局部变量!否则编译时会出现错误提示信息:

代码语言:javascript
复制
Error C5056:’uniform’not allowed on local variable
本文参与 腾讯云自媒体分享计划,分享自作者个人站点/博客。
原始发表:2018.08.29 ,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 7.2 uniform
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档