小虾米资讯

AD1
当前位置:网站首页 / android / 正文

android:成功在渲染龙实现区块显示

2022-04-15 10:30:19 / 我要吐槽 查看是否已被百度收录 查看是否已被谷歌收录 查看是否已被搜狗收录 查看是否已被360收录
AD2
或许着色器的末日还没到

可以看到左上角的RENDERDRAGON

自基岩版换用渲染龙后,着色器都被存到了renderer/materials文件夹下的那堆bin文件里去了

如果直接打开是这样的

虽然还是能找到glsl的代码,但显然直接改是不行的

从Minecraft的网站上可以看到使用了bgfx这个开源项目

这个bgfx是一个跨平台的渲染库,是不是想到了邪恶的render dragon

这个库自造了一种类似glsl的着色器语言,之后可以编译成各个平台对应的着色器语言

而他编译出的二进制文件是VSH/FSH/CSH开头的,对应vertex,fragment,compute三种着色器

而如果你在这个material.bin的文件里翻一翻就会找到FSH或者VSH,就可以提取出着色器文件了

这么多着色器全写一个文件里肯定得记录其长度,在这个VSH或者FSH前面的四个字节就是以小端字节序储存的长度

不过提取出来的还是二进制文件,不过接下来可以翻bgfx的源码确定其格式了

首先是4个字节的magic number,前3个是VSH/FSH/CSH来表明其类型,之后的1个字节是版本号,现在从Minecraft里解包出来的版本号是5

然而这个版本在现在的bgfx已经11了

而从GitHub的记录来看,这个版本号是5的时候好像是2018年

Powered By © 小虾米资讯 2015

(本站部分文章来源于网络或网友爆料,不代表本站观点,如有侵权请联系及时删除 )