博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
[转]在Ogre中如何关联textunit 与 cg/hlsl/glsl 语言中的 uniform sampler 关联
阅读量:4315 次
发布时间:2019-06-06

本文共 894 字,大约阅读时间需要 2 分钟。

 

在Ogre中如何关联textunit 与 cg/hlsl/glsl 语言中的 uniform sampler 关联:

cg 和 hlsl 中基本上通用:

pass

{

textunit

{

        textname diffuseMap.jpg

}

textunit

{

        textname normalMap.jpg

}

}

 

float4 main(tex0: TEXCOORD0,

uniform sampler diffusemap ,

unifrom sampler normapmap ):COLOR

{

................

}

 

如果不指定参数的话,那么会按照纹理单元的顺序,与fragment_shader中的sampler顺序保持一致。

如果纹理单元很多,为了防止错误,最好使用下面的方法确定纹理单元与采样器sampler的关联

 

float4 main(tex0: TEXCOORD0,

uniform sampler diffusemap: register(s0) ,

unifrom sampler normapmap:register(s1) ) :COLOR 或者

float4 main(tex0: TEXCOORD0,

uniform sampler diffusemap: TEXUNIT0 ,

unifrom sampler normapmap:TEXUNIT0  ):COLOR

 

glsl 中关联我还没有验证,在网上找到的资料为

函数的采样参数需要在顶点程序声明中设置

 

fragment_program myFragmentProgramGLSL glsl

{

source prog.frag

default_params

{    

        param_named diffusemap int 0

        param_named normapmap int 1

}

}

 

不过好像以前使用 register(sn)好像也可以。有空再去试试。

转载于:https://www.cnblogs.com/pulas/archive/2012/02/23/2364538.html

你可能感兴趣的文章
win10连接无线网,开启移动热点,手机连接它手机一直显示获取ip地址中。
查看>>
MapReduce的倒排索引
查看>>
Heterogeneity Activity Recognition Data Set类别
查看>>
服务中的 API 网关(API Gateway)
查看>>
Android--TextView第一个单词大写
查看>>
网友给的链接
查看>>
《2017011.17-构建之法:现代软件工程-阅读笔记3》
查看>>
sourceinsight4
查看>>
C#实现四部电梯的调度
查看>>
Android SDK版本和ADT版本
查看>>
TCL的艰难生存之路
查看>>
Flask最强攻略 - 跟DragonFire学Flask - 第五篇 做一个用户登录之后查看学员信息的小例子...
查看>>
Android笔记(四十) Android中的数据存储——SQLite(二) insert
查看>>
newcoder【NOIP2018普及组模拟赛第一次】C题
查看>>
关于PC端页面适应不了手机端的问题 解决方案
查看>>
多线程 基本概念
查看>>
电报压缩/解压缩系统
查看>>
[UE4]C++ getter and setter
查看>>
[UE4]机器人射击逻辑行为树
查看>>
CentOS系统将UTC时间修改为CST时间
查看>>