找回密码
 立即注册
查看: 572|回复: 0

Three.js光源梳理4——半球光(HemisphereLight)

[复制链接]
发表于 2022-2-9 12:47 | 显示全部楼层 |阅读模式
半球光是一个比较有意思的光,Unity中是没有这种光的,半球光的图示如下:


半球光

半球光的原理由两部分组成,一部分是从下往上的平行光,一部分是从上半球往中心点的光。如下:


image.png

从而实现了模拟模型法线向上的部分天空光线照射到物体上,法线向下的部分接收来自于地面的反射环境光。
半球光不能投射阴影。

HemisphereLight类构造:
skyColor - (可选参数) 天空中发出光线的颜色。 缺省值 0xffffff。
groundColor - (可选参数) 地面发出光线的颜色。 缺省值 0xffffff。
intensity - (可选参数) 光照强度。 缺省值 1。

HemisphereLight类属性:
position,设置半球光的中心点位置

半球光虽然Unity里面没有,但个人觉得还是比较有用的,可以取代环境光提亮场景,类似于一个简易的环境球,还能区分细节(地面光通常比较暗)。

Unity中通常在shader中使用简单的半兰伯特来模拟类似的效果。

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?立即注册

×
懒得打字嘛,点击右侧快捷回复 【右侧内容,后台自定义】
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|手机版|Unity开发者联盟 ( 粤ICP备20003399号 )

GMT+8, 2024-11-16 20:58 , Processed in 0.092604 second(s), 26 queries .

Powered by Discuz! X3.5 Licensed

© 2001-2024 Discuz! Team.

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