本帖最后由 SQwatermark 于 2021-5-25 11:26 编辑
想要学1.17原版Shader的可以离开了,本贴内容毫无技术含量
当前基于 Minecraft 21w11a,如有其他版本有异常请关闭本资源包
这个原版Shader是我看MOJANG的原版Shader源码发现自己低血压被彻底治好之后写的,基于原版Shader修改而成,主要内容包括以下几点:
1、对原版Shader的性能优化 (最终效果可能因配置差异而不同)
我在看原版Shader代码时,发现MOJANG在顶点着色器里面写入了大量的重复运算和不必要运算,包括但不限于:
重复进行 ModelViewMat * vec4(Position + ChunkOffset, 1.0) 操作(相当于进行16次循环)
把 normal 设置为 vec4 变量,并且使用完整的 mat4 矩阵进行MVP运算(4*4矩阵的运算量比3*3要多一倍多)
彻底治好了我的低血压,我一怒之下对原版着色器代码进行了微小的修改,获得了5%的FPS提升(这不是什么都没有提升吗)
顺便附图,16与32视距下的性能报表:
(如果加载资源包后帧率反而下降,请使用原版的 rendertype_solid rendertype_cutout 与 rendertype_cutout_mipped 内容覆盖本资源包内容)
32视距下,由 55.36 ticks per second 提升到了 57.66 ticks per second
16视距下,由 179.97 ticks per second 提升到了 188.27 ticks per second
2、游戏输出日志内警告清除
MOJANG的代码质量确实不敢恭维……在Java源代码尚未绑定的前提下,向各个着色器片段的json文件内写入了一些未使用的变量,导致每一次重载资源包时会报一长串警告。这个资源包内的着色器片段配置文件针对警告内容进行了修正,让游戏输出日志不再输出由源代码内未绑定变量产生的警告,大大提高 log 内有效信息的占比,方便其他开发者与log洁癖患者。
Shader包:
Vanilla Optimized Shader.zip
(76.76 KB, 下载次数: 56)
本资源包基于 The Unlicense 发布
想要学1.17原版Shader的可以离开了,本贴内容毫无技术含量
当前基于 Minecraft 21w11a,如有其他版本有异常请关闭本资源包
这个原版Shader是我看MOJANG的原版Shader源码发现自己低血压被彻底治好之后写的,基于原版Shader修改而成,主要内容包括以下几点:
1、对原版Shader的性能优化 (最终效果可能因配置差异而不同)
我在看原版Shader代码时,发现MOJANG在顶点着色器里面写入了大量的重复运算和不必要运算,包括但不限于:
重复进行 ModelViewMat * vec4(Position + ChunkOffset, 1.0) 操作(相当于进行16次循环)
把 normal 设置为 vec4 变量,并且使用完整的 mat4 矩阵进行MVP运算(4*4矩阵的运算量比3*3要多一倍多)
彻底治好了我的低血压,我一怒之下对原版着色器代码进行了微小的修改,获得了5%的FPS提升(这不是什么都没有提升吗)
顺便附图,16与32视距下的性能报表:
(如果加载资源包后帧率反而下降,请使用原版的 rendertype_solid rendertype_cutout 与 rendertype_cutout_mipped 内容覆盖本资源包内容)
32视距下,由 55.36 ticks per second 提升到了 57.66 ticks per second

16视距下,由 179.97 ticks per second 提升到了 188.27 ticks per second

2、游戏输出日志内警告清除
MOJANG的代码质量确实不敢恭维……在Java源代码尚未绑定的前提下,向各个着色器片段的json文件内写入了一些未使用的变量,导致每一次重载资源包时会报一长串警告。这个资源包内的着色器片段配置文件针对警告内容进行了修正,让游戏输出日志不再输出由源代码内未绑定变量产生的警告,大大提高 log 内有效信息的占比,方便其他开发者
Shader包:

本资源包基于 The Unlicense 发布
厉害,光影制作太难了,学不会
看不懂 这就是大佬么
额这有点看不懂
感谢大佬分享
感谢大佬分享