bat 批处理 脚本 for循环 批量压缩gltf模型 gltf批量压缩 gltf压缩转成glb

bat 批处理  脚本 for循环 批量压缩gltf模型  gltf批量压缩 gltf压缩转成glb

这里参考两篇文章:

1. 关于gltf压缩转成glb的工具(gltf-pipeline)     https://blog.csdn.net/niujing1987/article/details/100639864  

2. 关于批处理的知识    https://www.jb51.net/article/134025.htm

一、模型准备

如下图所示,现在有二十多个gltf模型,放在一个文件夹下,要对这些模型进行压缩:

二、首先想到用gltf-pipeline

官方开源地址:https://github.com/CesiumGS/gltf-pipeline

使用方法很简单,进入你的文件目录,打开cmd,只要你安装了npm,就可以直接通过下面一句命令安装gltf-pipeline这个库:

npm install -g gltf-pipeline

安装完成后,按照官方地址的使用说明,直接对模型进行压缩即可,比如:

gltf-pipeline -i model.gltf -o modelDraco.gltf -d

就可以把model.gltf模型压缩。

三、批量处理

gltf-pipeline官方并没有介绍批量处理的方法,下面我们通过批处理来实现:

打开cmd,进入gltf模型存放的路径,如下图,输入命令,回车,就会自动循环执行,批量压缩。(-d表示使用draco算法进行压缩)

for %i in ('dir *.gltf /s /b') do gltf-pipeline -i %i -o %i -d

看一下压缩后的模型大小:

如果还想进一步压缩,可以转成glb格式,使用如下命令:

for %i in ('dir *.gltf ') do gltf-pipeline -i %i -o %~ni.glb

注意唯一的不同就是输出后缀,%i表示文件名带后缀,此时后缀变成glb了,%~ni表示文件名(不带后缀),所以用%~ni加上后缀.glb既可。

转成glb后的大小如下图,可以看到小了很多。

四、知识点总结

1. 批处理的基本语法,写法、格式;

       在cmd中使用%i,如果是在bat批处理文件中,要换成%%i

2. gltf-pipeline除了会用,还应该看看他的源码,draco算法到底是怎么回事?是如何达到压缩效果的,gltf和glb这两种格式的区别,转换和压缩的原理是什么。

(学海无涯,只有不断深究,才会真正的进步,与君共勉)

 

微信搜索:acoolgiser,一起学习成长,交个朋友!^_^

或者直接扫描

  • 0
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值