在Blender2.8版本以后,直接导出带透明贴图的模型为gltf,会导致模型的贴图,在展示平台中变成不透明的效果。
在https://gltf-viewer.donmccurdy.com/中的效果(gltf-viewer是以three.js为基础开发的):
正常的情况,上图显示树的效果,是那些黑色的贴图效果不显示出来,在blender中,切换到Texture Paint的场景,可以看到正常的效果。
找到Blender的官方文档,以及从网上搜索,发现在2.7的系列版本中不存在这个问题,但是2.7系列,gltf导出还是要以插件的方式进行加入。
最终,找到可以设置贴图透明的方式,通过修改贴图的属性,达到实现透明贴图继续透明的效果。
切片到blender的Texture Paint场景:
选择当前模型的贴图,在右侧的小按钮上,选择材质的属性:
将“混合模式”的属性,将“不透明”改成“Alpha 混合”,保存,再进行模型的导出。
在gltf-viewer再次进行查看,就发现透明的地方,现在已经透明了。
注:要是多个贴图具有透明的属性,需要都进行修改,不过,blender开放了编程的接口,可以通过python语言进行开发,有机会了列举一下在blender中使用python进行api操作,感兴趣的可以提前看一下api官方文档。
https://docs.blender.org/api/2.80
参考文档:
https://docs.blender.org/manual/en/2.80/
https://docs.blender.org/api/2.80