


YSS的物理基础渲染系统支持下面标准1，3两种标准，请各位玩家和材质作者自行斟酌

pbr标准1 透明度
(来自cspe)
修改材质贴图透明度
99%透明度 发光方块
98%透明度 金属方块
50%以下透明度 塑料块和玻璃块

pbr标准2 透明度通道
来自origin shader作者lin
一个alpha通道2^8=256
转化为二进制后可以存储八个0或1
用于编码方块物理性质足够

pbr标准3 四合一PBR贴图
来自某巴西画饼王(glslpe)
国外探索及实践:OSBES Nori shader
国内读取完善及应用 只问为何(YSS BE) 闲事杂谈(ABC)


关于四合一pbr贴图详情请查找b站茶匙专栏
(虽然那篇文章想推的不是四合一)

YSS PBR贴图包采用四合一PBR贴图使得方块的法线粗糙度金属度等物理信息得以通过材质保存,

关于YSS的pbr贴图要求

在使用材质时只使用 /四分之一张/ 贴图(也就是正常的材质贴图),
这样就能保证没有光影时 /材质包的正常使用/ 和有光影时pbr贴图的正确读取.



[目前标准]      [材质贴图]  [pbr贴图]

                [法线贴图]  [检测贴图]
                
     四个框对应四张贴图在一张图上的位置,每张贴图各占四分之一
     
在oldpbr标准中,pbr贴图的r通道对应粗糙度度 g通道对应金属度 b通道对应自发光

在labpbr标准中,pbr贴图的r通道对应粗糙度度 g通道对应金属度 b通道对应环境光遮蔽(AO)强度

1.光泽度0～1(0～255)越高,物体表面越光滑,
2.金属度取0或1(也就是0或255)来决定是否为金属,
拉动金属度可以控制高光和反射强度
3.自发光为0～1(0～255)来控制像素点自发光强度
4.环境光遮蔽0-1(0-255)可以控制环境光强度,
5.高度图存在于法线贴图的alpha通道内,用于视差计算

YSS默认oldpbr标准 有需要的可以去自定义修改

[注意事项]

1.不必担心类似osbes那种改一个贴图或者加一个贴图就全炸的问题，但必须要保证 /贴图分辨率统一./

2.如果你想尝试使用pbr贴图,请打开databasic.yss里的FOUR_IN_ONE_PBRTEX开关并且填写你的材质包分辨率
自定义中能调整参数以适配更多的je材质包标准来方便玩家移植je材质包

3.为了保证四合一材质包在没有光影的情况下的正常使用,制作好材质后请在/ terrain_texture.json /里把所有的材质前面都加上[ "quad":1, ]

4.请在terrain_texture.json里将padding改为0,mipmap改为4,以保证方块不会出接缝

5.不想要法线的方块请把法线贴图处涂成 /白色/ (YSS贴图读取会自动识别)
或 /0红色 0绿色 255蓝色/ (此时法线垂直物体表面)

6.检测贴图，请让检测贴图的rgb都为127以保证贴图能正常检测到保证pbr计算

感兴趣的材质作者和玩家可以尝试制作
目前尚未完善,还在打磨中


四合一贴图能干什么呢

举几个例子:
移植Java端材质包,在手机端享受端游方块质感
你可以通过修改材质让红石块青金石和绿宝石块在黑暗中发光;
想让沙子中像掺了金属,只需要修改材质金属度把沙子的某些部位作为金属看待;
可以靠法线贴图在方块表面营造逼真的凹凸效果,甚至控制反射方向,从而做出方块本不应该有的质感。
利用高度图在物体表面发挥你的创意，挖个洞什么的都不成问题
综合利用法线，pbr和视差,可以将地形图转变为材质做成微缩场景
还有很多奇特的玩法等着你发现。

 
目前暂未有完善的贴图包,等待你的创作。
感谢 @仰望星空 的贴图包
目前YSS支持法线贴图，高度图，粗糙度金属度贴图,更多功能正在制作中(当然如果你不嫌弃可以直接拿Java的一部分支持pbr的材质复制粘贴)。


[相关声明]
因本人能力和知识面问题,没能采用真正的物理基础渲染技术去处理贴图,
期待有光影作者有能力做pbr且愿意尝试该标准,做出真正的外部pbr贴图的pbr光影包