unity默认是错误的gamma space,而不是linear space,原因是什么?

根据unity的manual
In the gamma rendering pipeline all colors and textures are sampled in gamma space, ie, gamma correction is not removed from images or colors before they are used in a shader. Albeit these values being in gamma space, all shader calculations treat their input as if it was in linear space, and additionally, when writing the shader outputs to memory, no gamma correction is applied to the final pixel. Much of the time this looks acceptable as the two wrongs go some way to cancelling each other out. But it is not correct.

unity默认gamma space,文档上看linear space不支持手机平台。难道是这个原因?

为什么linear space不支持手机平台? 难道仅仅是因为手机没有最后shader输出到memory时的gamma correction功能?

那也就说我们用unity做手机游戏的,做法其实都是错的了?

求大神解答。

解释下:以下是正确的工作流,注意图片上说是gamma pipeline但其实就是unity里的linear space。unity的gamma space应该是两头没做那2个gamma correction。shader是在gamma空间进行运算的。而这明显是不对的。



参考 Gamma Correction and Linear Colour Space
按投票排序 按时间排序

3 个回答

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值