osgConv:生成压缩格式并加载
2014年11月12日
上一篇博客介绍了如何使用 WriteImageHint 将模型绑定的素材转换到外部独立文件。其实这个 osgConv 还可以将转换的文件进行压缩,进一步减少大小。
1、转换部分:
使用参数:
1 | Compressor=zlib |
具体命令类似:
1 | ./osgconv young.fbx young.osgb -O Compressor=zlib |
2、展示部分:
在 iOS 加载的工程中需要注册 zlib 压缩类。编辑 osgPlugins.h ,添加下面一行:
1 2 | // Pull in the zlib compressor USE_COMPRESSOR_WRAPPER(ZLibCompressor) |
这样加载的经过压缩的 osgb 文件就可以正常显示了。
对于上文给出过的那个例子来说采用压缩的方式对于减小格式大小还是很有帮助的:
格式(选项) | 大小 |
---|---|
fbx | 4.4 MB |
osgb | 4.0 MB |
osgb压缩 | 792 KB |
参考文献:
[1] http://trac.openscenegraph.org/projects/osg//wiki/Support/KnowledgeBase/SerializationSupport
[2] https://www.liuxiao.org/2014/11/osgconv-%EF%BC%9A%E8%BD%AC%E6%8D%A2%E7%B4%A0%E6%9D%90%E5%88%B0%E5%A4%96%E9%83%A8%E5%B9%B6%E5%8A%A0%E8%BD%BD/