ATF批量导出工具
ATF批量导出工具
08 / 31, 2013
批量导出Atf的工具,使用是adobe atf 编码核心
先说一下关于atf的bug
当atf导出时候启用了mips选项会导致:如果纹理问长方形时上传会报错的bug
解决方法是把纹理改成正方形
来张截图
功能说明
输出平台选择压缩体积,减小文件大小
mipmap设置合并xml
支持jpg png 转换图像尺寸自动纠正为2幂图像自动转换为方形,解决atf上传时为长方形会报错的bug 仅在使用mips会触发所以需要启用mips可以考虑勾选这个选项目录转换(包含子目录)输出质量设置
关于很多同学说导出的ATF报错的问题(只针对Starling)
其实问题很简单。了解Texture.fromAtfData
的几个参数就行了
我们这里只要注意第3
个参数
如果没有启用mips
那么第3
个参数必须传递false
否则报错
合并xml之后如何创建纹理
如果选择合并xml
,那么合并atf和xml产生的新文件会以.xatf
结尾
以下为.xatf
的解析代码
var urlLoader:URLLoader=newURLLoader();
urlLoader.dataFormat =URLLoaderDataFormat.BINARY;
urlLoader.addEventListener(Event.COMPLETE,loaderComplete);
urlLoader.load(newURLRequest("asset/test.xatf"));function loaderComplete(e:Event):void{var bytes:ByteArray= urlLoader.data;var xmlLength:int;var xmlBytes:ByteArray=newByteArray();var atfBytes:ByteArray=newByteArray();
bytes.position = bytes.length -2;
xmlLength = bytes.readShort();
bytes.position = bytes.length - xmlLength -2;
bytes.readBytes(xmlBytes,0,xmlLength);
bytes.position =0;
bytes.readBytes(atfBytes,0,bytes.length - xmlLength -2);if(AtfData.isAtfData(atfBytes)){var texture:Texture=Texture.fromAtfData(atfBytes,2,false,null);var textureAlats:TextureAtlas=newTextureAtlas(texture,XML(xmlBytes));}}