TextMeshPro源码移植-替换掉PackageManager

以下内容为自定义TextMeshPro方法(魔改,不成功的魔改)

踩了几天坑之后发现,还是直接使用无幻大哥的方法,和开源项目吧(最后)

以下内容作废

因为工作需要,使用类似美术字的效果

TextMeshPro支持各种效果,效能也可以(到底这个可以到底是多可以,效率有多高,反正都是传说,哥也不知道),唯一缺点就是不支持多语言

只要你的项目不需要多语言,果断使用TextMeshPro

也可以放心把源码搬到项目中,只要在PackageManager把官方包 REmove 即可

 碰到个资源|图标问题,Warning,使用了小哥的方法,

//TMP_EditorUtility
        private static string GetPackageRelativePath()
        {
            //这里直接return就好了(TODO 改成引用关联)
            return "Assets/ThirdMeshPro/TextMeshPro306";
            // Check for potential UPM package

发现一个有意思的事情,如下:

所以推断 TextMeshPro 这个包是用 mac book 开发而最终的成品pack各平台通用,所以可能会有字符不相符的问题,类似于全角和半角的冲突 

另外,总是弹出

//同理,改返回path:TMP_PackageResourceImporter.cs
        static string GetPackageFullPath()
        {
            //这里直接return就好了(TODO 改成引用关联)
            return "Assets/ThirdMeshPro/TextMeshPro306";
            // Check for potential UPM package
            string packagePath = Path.GetFullPath("Packages/com.unity.textmeshpro");
            if (Directory.Exists(packagePath))
            {
                return packagePath;
            }

很多时候是我们对自己太苛刻了,

其实无论国内外

也无论是否官方

更无论团队大小,大小厂

还是可能写了很多”多余“代码的。。。。

用了非官方包,直接用代码,总是弹出原因:

//TMP_ResourceManager.cs
   internal static TMP_Settings GetTextSettings()
        {
            if (s_TextSettings == null)
            {
                // Try loading the TMP Settings from a Resources folder in the user project.
                s_TextSettings = Resources.Load<TMP_Settings>("TextSettings"); // ?? ScriptableObject.CreateInstance<TMP_Settings>();

                #if UNITY_EDITOR
                if (s_TextSettings == null)
                {
                    // Open TMP Resources Importer to enable the user to import the TMP Essential Resources and option TMP Examples & Extras
                    TMP_PackageResourceImporterWindow.ShowPackageImporterWindow();
                }
                #endif
            }

            return s_TextSettings;
        }

//TMP_Settings 在这个目录 

删掉.asmdef(哥删了4个,请自行承担风险,c#从来都有namespace ,不知道这个.asmdef有什么用,除了负作用,namespace副作用还不够多吗)

TextMeshPro3.0.6出现一堆错误

 从无幻 大神,那找到答案:

Unity TextMesh Pro 文本组件之字体图集生成工具(2018 修改)_无幻的博客-CSDN博客_unity 字体图集

TextMeshPro源码修复,下载链接:

就不放出了。。。

其他Unity艺术字效果,开源参考:

GitHub - n-yoda/unity-vertex-effects: Beautiful text outline for Unity UI.

猜你喜欢

转载自blog.csdn.net/avi9111/article/details/128217502