请教unity的matcap问题,为什么要把光照等信息投影到一个半球面上?

Jenny_WJN 2018-08-08 05:41:23
最近在学习matcap的时候有一个小小的疑问,为什么要把光照等信息投影到一个球面(或者说半球面/圆)上?为什么不是cubemap呢?
如果表示spherical light的话,cubemap不是更成熟吗?matcap的优势在哪里呢,而且matcap为什么要用一个半球面来存储它的光照信息呢?
实在是不懂啊,还请各位大神能指点一二啊!!!
感激不尽!!!!!!!!
...全文
402 3 打赏 收藏 转发到动态 举报
写回复
用AI写文章
3 条回复
切换为时间正序
请发表友善的回复…
发表回复
zhangyakun000 2020-07-03
  • 打赏
  • 举报
回复 1
两个不是同一个东西,cubemap模拟的是环境光.matcap模拟的是计算后的材质表面颜色,然后保存起来.可以想象成是一个绝对光滑的小球,你去观察这个小球,得到的就是matcap的效果.保存下来后,其他物体用的时候直接读取就行了,不用重新计算.
无名剑 2018-08-13
  • 打赏
  • 举报
回复 1
我的理解是 cube map 需要6张贴图 而matcap只需要一张
成本不要小太多了...
其实两者之间最后实现光照效果的思路差不多
主要是映射的对象是什么,看你具体的view的环境而定
Jenny_WJN 2018-08-08
  • 打赏
  • 举报
回复
顶啊,求各位大神指教啊!!!!

2,535

社区成员

发帖
与我相关
我的任务
社区描述
Unity3D相关内容讨论专区
游戏unity 技术论坛(原bbs)
社区管理员
  • Unity3D
  • 芝麻粒儿
  • 「已注销」
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

Unity3D社区公告:

  1. 社区致力于解决各种Unity3D相关的“疑难杂症”。
  2. 社区不允许发布与Unity3D或相关技术无关内容。
  3. 社区版主邀请各位一道为打造优秀社区不懈努力。

试试用AI创作助手写篇文章吧