游戏开发论坛

 找回密码
 立即注册
搜索
查看: 2491|回复: 6

请教关于ShadowMap中的一些问题

[复制链接]

1

主题

9

帖子

39

积分

注册会员

Rank: 2

积分
39
发表于 2007-1-10 09:13:00 | 显示全部楼层 |阅读模式
偶的ShadowMap的实现是仿照MS中的ShadowMap来实现的。说说偶实现的流程:
1。在灯光视角中渲染出相对深度的灰度图。
2。再在照相机视角中渲染场景,比较某点的相对深度的灰度与1中的灰度大小,把较大的渲染成影子。
偶觉得这样做应该没什么问题的说,但是影子就是渲染不出来。请教大家偶这个做法有什么错误的地方。

付上Shader的代码文件:

sf_200711091235.rar

1.2 KB, 下载次数:

19

主题

73

帖子

73

积分

注册会员

Rank: 2

积分
73
发表于 2007-1-12 09:39:00 | 显示全部楼层

Re:请教关于ShadowMap中的一些问题

void VertScene( float4 iPos : POSITION,
                                float3 iNormal : NORMAL,
                                float2 iTex : TEXCOORD0,
                                out float4 oPos : POSITION,
                                out float2 oTex : TEXCOORD0,
                                out float4 vPos : TEXCOORD1,
                                out float3 vNormal : TEXCOORD2,
                                float4 vPosLight : TEXCOORD3)
{


这个 float4 vPosLight : TEXCOORD3 是输出吧

1

主题

9

帖子

39

积分

注册会员

Rank: 2

积分
39
 楼主| 发表于 2007-1-12 16:05:00 | 显示全部楼层

Re:请教关于ShadowMap中的一些问题

是的,在VertScene中的vPosLight是作为输出,输出后输入到PixScene的vPosLight中。。
但是就是不知道什么原因,影子渲染不出来。。。==

19

主题

73

帖子

73

积分

注册会员

Rank: 2

积分
73
发表于 2007-1-17 10:27:00 | 显示全部楼层

Re:请教关于ShadowMap中的一些问题

如果你还没搞定,可以的话,把程序代码和shader附上,帮你看看

jackystar@163.com

1

主题

9

帖子

39

积分

注册会员

Rank: 2

积分
39
 楼主| 发表于 2007-1-17 19:52:00 | 显示全部楼层

Re:请教关于ShadowMap中的一些问题

谢谢Chiyer,邮件已经发送。。
主要还是有一两个地方搞不清楚,如Position于Tex的映射关系之类的,就像下面两行代码:
float2 shadowTexC=0.5 * vPosLight.xy/vPosLight.w+float2(0.5,0.5);
shadowTexC.y=1.0f-shadowTexC.y;

19

主题

73

帖子

73

积分

注册会员

Rank: 2

积分
73
发表于 2007-1-18 19:34:00 | 显示全部楼层

Re:请教关于ShadowMap中的一些问题

Proj 坐标的范围 x = [-1, 1] (左到右)  y = [1, -1](上到下)



Tex坐标的范围是 x = [0, 1] (左到右)  y = [0, -](上到下)

上面的代码是把 Proj坐标转成相应的tex坐标



你的代码我刚刚改了改,发邮件给你了



现在可以看到点效果,不过你的shader代码不是正确的影子做法

你可以参看sdk的例子, 要加上lerp采样,这样就不会有很明显的锯齿

还有,有影子的地方不是全黑,它还会受环境光的影响,所以,暂时

把你的影子从黑色调成一半本本来的颜色,具体的,你应该看看sdk的例子:)

1

主题

9

帖子

39

积分

注册会员

Rank: 2

积分
39
 楼主| 发表于 2007-1-18 20:40:00 | 显示全部楼层

Re:请教关于ShadowMap中的一些问题

嗯。这个偶到是知道的。因为要调试,偶就把一些不算核心的代码去掉了,如那个取样的代码。等到核心的思想实现后,偶再加强一下效果。
sdk的例子偶是看了。微软的东西嘛,就是有点难看懂的说。。
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

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

GMT+8, 2026-1-26 06:56

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

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