游戏开发论坛

 找回密码
 立即注册
搜索
查看: 1913|回复: 5

关于SHADER的问题

[复制链接]

6

主题

55

帖子

55

积分

注册会员

Rank: 2

积分
55
发表于 2006-10-1 14:06:00 | 显示全部楼层 |阅读模式
在shader中,我们会用sampler去取图样再用TEX2D来贴,但是如果我们根本不载入图的话,那改是个什么值!
用途也就是说,有图的时候我就给贴图上去,没图的时候就付个基本的颜色~~~~该怎么判断呢?
之前我用的是:
  float4  text = tex2D(sampler,UV)
if(text.x==0&&text.y==0&&......)
{
付基本颜色
}
上面的明显是在图片UV开始的地方是黑色的话就不行了~~~~有什么办法吗高手们?

5

主题

686

帖子

697

积分

高级会员

Rank: 4

积分
697
QQ
发表于 2006-10-1 18:59:00 | 显示全部楼层

Re:关于SHADER的问题

shader中不能判断这个的,除非你在外部给一个标记,或者根据情况直接调用不同的Shader

0

主题

6

帖子

6

积分

新手上路

Rank: 1

积分
6
发表于 2006-10-2 00:07:00 | 显示全部楼层

Re:关于SHADER的问题

用一张默认的图来代替

6

主题

55

帖子

55

积分

注册会员

Rank: 2

积分
55
 楼主| 发表于 2006-10-2 14:50:00 | 显示全部楼层

Re:关于SHADER的问题

........难道就没有更好的方法?

22

主题

274

帖子

274

积分

中级会员

Rank: 3Rank: 3

积分
274
发表于 2006-10-2 15:26:00 | 显示全部楼层

Re:关于SHADER的问题

在你跑这个SHADER时,SHADER的采样贴图就是用的当前值,没设置只不过用的最近设置过的值,因为这个状态是全局的.
但是当你SETTEXTURE(X,NULL)时,这时采样的值在 GEFORCE显卡上是白色(依赖格式,R8G8B8A8是的,其它的可以试下),ATI上好像不一样,是黑色.
这个在SHADER里判断就算有办法也是没有意义的.应该在CPU做.

30

主题

357

帖子

388

积分

中级会员

Rank: 3Rank: 3

积分
388
QQ
发表于 2006-10-2 22:28:00 | 显示全部楼层

Re:关于SHADER的问题

程序是死的,人是活的,换个方法吧。
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

作品发布|文章投稿|广告合作|关于本站|游戏开发论坛 ( 闽ICP备17032699号-3 )

GMT+8, 2026-1-25 14:04

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

快速回复 返回顶部 返回列表