我之前发过一个类似的帖子,但从那以后我获得了更多的见解。对于上下文,我正在创建一个基于 DX11 的 3D 渲染引擎,其中中心焦点是一个大行星,它是一个标准化立方体。我正在尝试在地球上实现法线贴图,但在计算切线时遇到问题。顶点法线工作正常,但我尝试了各种计算切线信息的方法都无济于事。
第一种方法是从这篇文章中实现的,并且似乎产生了正确的结果,因为切线和双切线正确地映射到了 UV 坐标。但是,您会注意到在立方体面的顶点处,几何体的 UV 发生了变化,这导致了不同方向的法线,因此产生了硬光照接缝。
第二种方法,从这个页面掺杂,不依赖于顶点 UV,因此在球体周围提供平滑的切线。但是,由于 UV 没有排列,新的凹凸法线最终会明显关闭。
(好像太黑了)
任何建议都可以帮助我解决这个问题,无论是切线本身还是我的基础球体几何,或者至少更好地理解它。提前致谢。