Unity中使用TextMeshPro打出Emoji表情 | 您所在的位置:网站首页 › 怎么用emoji表情 › Unity中使用TextMeshPro打出Emoji表情 |
文章目录
1 制作Emoji图集1.1 准备好emoji素材1.2 下载 TexturePackerGUI 软件1.3 制作图集并输出
2 制作TextMeshPro素材资源2.1 导入 TextMeshPro 库2.2 制作 TextMeshPro 的 Sprite Assets
3 打出完美的emoji表情3.1 将上一步的 Sprite Assets 引用到 TextMeshPro 的设置中3.2 调整 TexturePackerGUI 输出的细节
最近遇到一个需求,在聊天框中支持用户的Emoji输入,查了半天资料没有一个能说清楚的,于是自己研究琢磨了下。 最终效果 最终效果可以在APP输入框中使用系统的输入法输入emoji表情并显示,如下 找到emoji图片,注意需要是 unicode.png 格式命名的。github上一些开源项目有这些图,或者到这个链接(提取码: 0uN0 )下载 准备使用。 1.2 下载 TexturePackerGUI 软件到这个链接下载并安装,打开软件 语言的切换在这里 将Emoji图片文件夹拖入到左侧栏目里,同时右侧的数据格式切记选择 JSON(Array), 而不是 Unity的texture和json格式. 点击发布精灵表,输出保存即可。 项目中在 PackageManager中导入 TextMeshPro , 注意版本为Pre-Release的3.2.x的而不是当前最新的Release 3.0.x 在 Project Settings 可以打开Pre版本的展示 不过可能是网络因素或者中国版因素,很大可能开启了pre版本拉取依旧package manager里不展示,如果这样的话可以到 TextMeshPro的github源码库下载并导入该库 记得将Essential素材导入 打开 Sprite Importer 开始制作TextMeshPro的SpriteAssets 将1.3制作输出的文件拖入,勾选 use filenames as Unicode 然后Create Sprite Asset,没问题的话会输出结果 再点击 Save Sprite Asset 保存即可 建议将这些素材放到TMP Essential目录里,刚好他里面也有个emoji的demo 选中 TMP Settings 将上一步导出的 Sprite Assets 拖入设置为 Default Sprite Assets 此时就可以测试TextMeshPro打字打emoji了,win10的默认微软输入法和市面上的输入法一般都支持直接打emoji,例如键盘输入拼音 haha 候选里面就会有emoji UI结果如下所示,不尽人意,图片内容有裁剪和其他内容,并且图片位置下移或不对劲 按照如下设置配置 TexturePackerGUI 重要的几个点为布局里的 大小限制-POT(2的幂)强制正方形-勾选缩放模式-平滑算法-网格/条带允许旋转-不勾选做到上述配置,再次导出并制作Sprite Assets, 并在 TMP Settings 里拖入新的Sprite Assets即可观察效果。 建议新制作导出制作Sprite Assets是重新命名保存个新的文件并在TMP重新拖动,防止Unity不更新素材文件等。 到这里,图片可以正常显示了。 不过位置依旧不对,需要将图集的锚点重新设置,按照实际图片的需求设置并导出测试。我使用的emoji图片需要以下设置。 在 TexturePackerGUI 左边的列表随便选中一张图双击进入详情,将锚点设置为下面这样,默认应该是预定义里的中央0.5;0.5 ,自己调整并且点击那个回车按键,这样新导入的图片就会使用这个配置。我这里设置为0.8并且按了回车。然后将左边的图片文件夹选中点 delete 按键删了,重新导入,这时所有图片都是这个锚点配置了,重新点击发布精灵表 即可 最终的效果如图,这样就基本OK了 这个链接(提取码: 3pv3 )可以下载最终导出的json和png直接制作sprite assets 至此,就结束了TextMeshPro制作带unicode的emoji表情功能的sprite assets 如果您觉得对您有帮助,可以点这里请我喝杯咖啡,同时相关资源也会同步免费发布 |
CopyRight 2018-2019 实验室设备网 版权所有 |