游戏开发论坛

 找回密码
 立即注册
搜索
楼主: oz01

关于tex2D/tex2Dproj和shadowmap

[复制链接]

7

主题

78

帖子

82

积分

注册会员

Rank: 2

积分
82
发表于 2009-6-1 10:13:00 | 显示全部楼层

Re:关于tex2D/tex2Dproj和shadowmap

"Z值至少是32位浮点数
纹理每个通道只有8位
Alpha通道经常无法使用"
如果仅是这个问题,把纹理格式换成R32F就可以了,

227

主题

1793

帖子

1866

积分

金牌会员

Rank: 6Rank: 6

积分
1866
 楼主| 发表于 2009-6-1 10:14:00 | 显示全部楼层

Re: Re:关于tex2D/tex2Dproj和shadowmap

biggerwoo: Re:关于tex2D/tex2Dproj和shadowmap

"Z值至少是32位浮点数
纹理每个通道只有8位
Alpha通道经常无法使用"
如果仅是这个问题,把纹理格式换成R32F就可以了,

opengl可没这个纹理格式 [em9]

7

主题

78

帖子

82

积分

注册会员

Rank: 2

积分
82
发表于 2009-6-1 10:14:00 | 显示全部楼层

Re: Re: Re:关于tex2D/tex2Dproj和shadowmap

oz01: Re: Re:关于tex2D/tex2Dproj和shadowmap


opengl可没这个纹理格式 [em9]

[em6] 那啥,只能祝好运了

227

主题

1793

帖子

1866

积分

金牌会员

Rank: 6Rank: 6

积分
1866
 楼主| 发表于 2009-6-1 10:15:00 | 显示全部楼层

Re: Re:关于tex2D/tex2Dproj和shadowmap

biggerwoo: Re:关于tex2D/tex2Dproj和shadowmap

float fTexOffs = 0.5 + (0.5 / (float)ShadowMap_SIZE);
D3DXMATRIX matTexAdj( 0.5f,    0.0f,        0.0f,        ...

这个值当然是不行的了 [em6]

227

主题

1793

帖子

1866

积分

金牌会员

Rank: 6Rank: 6

积分
1866
 楼主| 发表于 2009-6-1 10:16:00 | 显示全部楼层

Re: Re: Re: Re:关于tex2D/tex2Dproj和shadowmap

biggerwoo: Re: Re: Re:关于tex2D/tex2Dproj和shadowmap


[em6] 那啥,只能祝好运了

这个方法还有个问题,那就是又变成纯软阴影了……可现在的硬件全都能实现影shadowmap

7

主题

78

帖子

82

积分

注册会员

Rank: 2

积分
82
发表于 2009-6-1 10:18:00 | 显示全部楼层

Re:关于tex2D/tex2Dproj和shadowmap

话说...你完全照抄dxsdk也不行吗= =

227

主题

1793

帖子

1866

积分

金牌会员

Rank: 6Rank: 6

积分
1866
 楼主| 发表于 2009-6-1 10:21:00 | 显示全部楼层

Re:关于tex2D/tex2Dproj和shadowmap

我是opengl+Cg
没得抄……
关键是dxsdk的hlsl代码也是就一个tex2D/tex2Dproj就完成对比了orz
tex2D/tex2Dproj得到的值直接与反射光相乘……

7

主题

78

帖子

82

积分

注册会员

Rank: 2

积分
82
发表于 2009-6-1 10:22:00 | 显示全部楼层

Re:关于tex2D/tex2Dproj和shadowmap

原理应该都一样吧.....opengl里用ShadowMap这么bt吗....

5

主题

972

帖子

975

积分

高级会员

Rank: 4

积分
975
发表于 2009-6-1 10:50:00 | 显示全部楼层

Re:关于tex2D/tex2Dproj和shadowmap

Try shadow2D or Shadow2DProj.

5

主题

972

帖子

975

积分

高级会员

Rank: 4

积分
975
发表于 2009-6-1 10:53:00 | 显示全部楼层

Re:关于tex2D/tex2Dproj和shadowmap

以下引用别人的blog
http://www.cnitblog.com/linghuye/archive/2009/05/12/39451.html

3.HLSL没有shadow2DProj函数, GLSL的shadow2DProj返回的是深度比较的结果1.0或0.0的4元组,不是深度值!且要记住,shadow2DProj受到固定流水中纹理 GL_TEXTURE_COMPARE_MODE/GL_TEXTURE_COMPARE_FUNC的影响,要使用shadow2DProj必须打开深度纹理比较模式.
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

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

GMT+8, 2025-12-20 04:34

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

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