mc光影吧 关注:8,599贴子:130,400
  • 8回复贴,共1

1.14及以上版本天空光照修复算法最新进展

只看楼主收藏回复

经过各种尝试之后,我最终头疼的发现,通过dFdx和dFdy在片元着色器内计算屏幕空间变化值无论怎么样都绕不开屏幕边缘的拉伸,然后我打算整个活
如你们所见,接近完美的边缘衔接和非露天光源完全不受影响,目前发现的唯一的缺点就是两个相隔一方块的完整发光方块中间仍然无法正常工作
想知道怎么做到的?敬请期待PTGI GFME下个版本(这个版本可能会考虑直接发到Minecraft吧)



IP属地:湖南1楼2021-03-03 00:27回复
    nb


    来自iPhone客户端2楼2021-03-03 13:25
    回复
      2025-05-26 08:17:59
      广告
      大佬NB


      IP属地:广东来自Android客户端3楼2021-03-03 16:34
      回复
        高改


        IP属地:江苏来自iPhone客户端4楼2021-03-03 19:10
        回复
          算法更新:
          从只兼容完整方块升级到兼容大部分自定义模型。当然,一些过于靠近完整发光方块的模型元素表面还是不会渲染。
          这个算法对所有的光影理论上都是通用的,需要一个gbuffer_terrain.gsh(几何着色器),由于几何着色器本身就有从顶点着色器向片元着色器传递数据的功能,大部分需要的数据应该都有,但是我还是提一下必须的数据:
          必须的数据是世界空间坐标(需要提前加上摄像机坐标)以及光照等级(废话,不然怎么修)
          (可能以后还会继续优化?反正这个算法到这基本上已经完美达到目的了,除了两个相隔一格的完整发光方块中间由于实现原理问题完全没辙)


          IP属地:湖南5楼2021-03-03 23:50
          回复
            nb


            IP属地:黑龙江来自Android客户端6楼2021-03-04 16:46
            回复
              nb


              IP属地:河北7楼2021-03-06 22:33
              回复
                nb


                来自iPhone客户端8楼2021-03-09 01:54
                回复
                  2025-05-26 08:11:59
                  广告


                  IP属地:中国香港9楼2021-03-09 12:37
                  回复