UE4 VaTexAtlas插件使用

1、执行在UE4启动器中下载VaTexAtlas插件,并导入你的工程。

2、使用TexturePacker打包需要合并的图片:

设置如下:

2.1、Datafile无比保存为.vta格式,否则导入UE4后会默认为Paper2D。

2.2、选择2幂格式,即POT,用于IOS。至于为什么自行查阅IOS下图片格式,这里不做赘述。

2.3、Allowrotation 不勾选,否者需要自行修改插件代码支持纹理旋转。

2.4、Trimmode选择None,否者需要自行修改插件代码支持uv切分。

3、导入TexturePacker合并的资源:

3.1、导出的资源如下图

3.2、将你的*.vta文件(这里是TestAtlas.vta)直接拖入到工程中空的目录,导入即可。

3.3、目录结构如下:图集根目录下包含了一个Frames文件夹:存放切分后的纹理;Textures:存放大图集的纹理,实际游戏运行中加载的是这个纹理;TestAtlas_DataTable:实际上是一个引擎的DataTable,对Frames的纹理做一个Key、Value的资源映射;TestAtlas:这个是插件定义的一个TextureAtlasAsset的东东,对前面这几个东西进行一个统一管理,包含了对源的压缩方式,来源路径、切分纹理等等。自行去看看插件,大概就懂了吧,这里不赘述。

4、Frames:详细讲下这个,每个VtaSlateTexture实例包含了可见的属性。

AtlasTexture:源纹理图片,表示了这个小纹理从哪个源纹理中切分出来的。

StartUV:表示当前纹理从源纹理(AtlasTexture)中开始切的位置。这里x=0.25大概就是从大图中的1/4处开始,y=0.001大概就是几个像素,符合大图中所在的位置。

SizeUV:表示当前纹理所占源纹理UV的多少。这里x=0.25,y=0.25,大概就是占源纹理长度和宽度1/4的一个小方格,符合大图中所在的位置。

结合三者,因此可以切分出来正确的羊角骷髅头的纹理。(不清楚的自行再看看这几个参数的关系)

注:关于切分的纹理,需要详细了解的自行去看插件源码VtaSlateTexture.cpp

5、纹理测试和使用:和普通的纹理使用并无区别

6、纹理使用:在游戏运行中,纹理需要变更时,这里只讨论插件提供的该方式设置,可见line218复制了传入的源Brush,因此这里有一份内存的消耗。

参见:

你可能感兴趣的:(UE4 VaTexAtlas插件使用)