Home › Forums › Games202-高质量实时渲染 › 环境光渲染出来偏暗 This topic has 5 replies, 2 voices, and was last updated 3 years, 6 months ago by cmc233. Viewing 4 reply threads Author Posts 2021年4月26日 at 下午3:13 #8328 Score: 0 MoonParticipant 预计算的环境光在js框架里面渲染出来和 prt程序显示出来的相比暗很多(都是一倍曝光的情况下),调整曝光倍数之后,看起来结果是正确的,这种情况是什么原因? 2021年4月26日 at 下午5:11 #8330 Score: 0 cmc233Participant Karma: 6 pts 两种可能 1.prt里存储成png图片时将线性空间转换到了sRGB空间 Color3f tonemapped = coeffRef(i, j).toSRGB();颜色计算给webgl的时候应该也得做相应的gamma矫正 2.prt里计算TransportSHCoeffs有乘以kd/pi吗?prt里Color3f Li()返回的是sum TransportSHCoeffs*LightCoeffs 2021年4月26日 at 下午5:32 #8332 Score: 0 MoonParticipant 确实没有乘以kd/pi, 但是如何乘了这个系数,webgl里不也会同时变得更暗吗? 2021年4月26日 at 下午5:52 #8333 Score: 0 cmc233Participant Karma: 6 pts 我说的第二种情况意思是:你在prt里没乘kd/pi,然后在shader.glsl里写的是的kd/pi *sum TransportSHCoeffs*LightCoeffs,所以导致两倍不一样。 如果你shader.glsl也是直接sum TransportSHCoeffs*LightCoeffs,感觉就是gamma矫正的问题了,prt里保存png时做了如图的空间转换,在js里pow(vColor, vec3(1.0/2.2))应该就得到差不多结果了? This reply was modified 3 years, 6 months ago by cmc233. Attachments:You must be logged in to view attached files. 2021年4月26日 at 下午6:51 #8336 Score: 0 MoonParticipant 但是作业文档里面说不需要gamma矫正啊 2021年4月26日 at 下午7:01 #8337 Score: 0 cmc233Participant Karma: 6 pts 所以作业文档里贴的图,prt显示的debug的图片也比js里的图亮啊(虽然图1,2不是同一个场景),而且文档里的图应该没乘kd/pi,其实给的参考图挺随意的 Author Posts Viewing 4 reply threads You must be logged in to reply to this topic. Log In Username: Password: Keep me signed in Log In