游戏开发论坛

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

PointLight光源移动不平滑的问题

[复制链接]

10

主题

22

帖子

22

积分

注册会员

Rank: 2

积分
22
发表于 2007-2-9 10:17:00 | 显示全部楼层 |阅读模式
D3D9中的PointLight, 希望做个在较暗的场景中,点光源移动,照亮地面明暗不断变化的效果,但是感觉这个点光源是跳着移动的,并不是很平滑的移动,如果把Attenuate0 = 1 其他设为0的时候(没有衰减)更加明显,一个很亮的区域是每隔一段时间(1-2秒)向前跳一大格,而不是每桢都在移动。
代码的写法就是每桢计算更新一个新位置,然后创建一个新的D3DLight对象,然后把位置赋值进去,
再SetLight(0,&light);
这样有什么问题吗?我看别的引擎也是这么写的,但是效果很好。

另外为了防止是地面法线问题,我把地面改平了,法线都是(0,1,0);还是不行。

6

主题

307

帖子

309

积分

中级会员

Rank: 3Rank: 3

积分
309
发表于 2007-2-9 10:41:00 | 显示全部楼层

Re:PointLight光源移动不平滑的问题

因为是顶点光的关系,平滑程度和网格密度有关

用shader写个像素级光

10

主题

22

帖子

22

积分

注册会员

Rank: 2

积分
22
 楼主| 发表于 2007-2-9 14:25:00 | 显示全部楼层

Re:PointLight光源移动不平滑的问题

谢谢 明白了  怪不得光照区域是个多边形 要想在固定管线下动态光照效果好一些 需要把光照半径调大一些 这样看不见光照范围的最边缘移动会好一些
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

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

GMT+8, 2026-1-26 10:42

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

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