游戏开发论坛

 找回密码
 立即注册
搜索
查看: 1416|回复: 2

Shader 颜色问题

[复制链接]

2

主题

2

帖子

8

积分

新手上路

Rank: 1

积分
8
发表于 2008-8-19 11:49:00 | 显示全部楼层 |阅读模式
创建了三个光源:directional point spot
都分别求出了他们对应的颜色,最后想在Output.RGBColor中将各种颜色加在一块得到当前像素的颜色值。
问题1:用单个光源产生的颜色对Output.RGBColor进行赋值时都没问题;
      用point directional产生的颜色相加对Output.RGBColor进行赋值时也没问题;
      当将spot产生的颜色值与其他的颜色值相加时就出现问题,曾经想过是否会因为三种颜色值相加会超过1.0,于是将spot颜色*0.01,但最后还是有问题。
问题2:怎样调试shader,查看其中的变量值等等,不胜感激 !

float3 spotDiffuseColor = slconeAttenuation * sldisAttenuation * slangAttenuation * g_LightDiffuseColor;
float3 spotSpecularColor = slconeAttenuation * sldisAttenuation * pow(slValue,20) * g_LightSpecular;

float3 pointAndspotColor = pointDiffuseColor + pointSpecularColor + spotDiffuseColor + spotSpecularColor;
       
Output.RGBColor = float4(                                                          g_LightDiffuseColor *  max(0,dot(In.vNormal, g_LightDir)) +g_LightSpecular * pow(value,20) + g_LightAmbColor +pointAndspotColor ,1.0f);  

return Output;

59

主题

984

帖子

1200

积分

金牌会员

Rank: 6Rank: 6

积分
1200
发表于 2008-8-19 12:24:00 | 显示全部楼层

Re:Shader 颜色问题

问题2:
try pix

121

主题

2029

帖子

2034

积分

金牌会员

Rank: 6Rank: 6

积分
2034
QQ
发表于 2008-8-19 14:33:00 | 显示全部楼层

Re:Shader 颜色问题

唉,PIX最大的问题究竟就是好他妈吃机器啊。。。
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

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

GMT+8, 2026-1-21 14:28

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

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