12 无幻

尚未进行身份认证

我要认证

个人喜欢CPlusPlus。

等级
TA的排名 208

Unity 字符串按自然数排序之二

原因在 Unity 中提供了编辑器时的自然数排序(EditorUtility.NaturalCompare接口,见上篇《Unity 字符串按自然数排序》),但是运行时也需要进行自然数排序。解决新建IEnumerableEx.cs文件,代码如下:using System;using System.Collections.Generic;using System.Linq;using System.Text.RegularExpressions;public static class IEnu

2020-06-29 21:43:52

Unity 去除自动添加的ACCESS_FINE_LOCATION权限

原因游戏莫名添加了ACCESS_FINE_LOCATION权限,查找Unity 官方手册https://docs.unity3d.com/Manual/android-manifest.htmlLocation APIs (such as LocationService) adds ACCESS_FINE_LOCATION解决工程里并没有使用到LocationService服务,搜索工程发现是Input.location返回了这个服务,而这个是tolua暴露给lua使用的接口,但正常用不到,所以

2020-05-31 17:42:29

Unity Live2D Mask功能失效的解决

在 Unity 中使用 Live2D 来进行动态角色的显示,遇到过当游戏进行一段时间后,角色的眼球随机消失不显示。

2020-04-29 21:06:18

Unity 不能在节点隐藏的时候更改子节点的父对象

在 Unity 中使用物体池,在父节点进行隐藏的时候,把子物体回归到池里,即重设父对象,但此时 Unity 会报错

2020-03-31 13:57:43

Unity 动态加载第三方开发调试库

在游戏中加入第三方的开发调试库,但不想默认打包进游戏,只在不同打包选项时,才进行附加上去,然后在游戏里进行动态加载。

2020-02-22 21:37:02

Unity 使用多线程来写日志文件

目的自动写日志文件功能,但是不能影响游戏性能,故使用多线程来写日志。源码/// <summary>/// 日志文件模块,使用多线程来进行写日志文件/// </summary>public class LogFileModule{ private static LogFileModule sLogFileModule; /// <sum...

2020-01-22 17:42:14

Unity 外部 DLL 无法引用 TextMeshPro

问题创建 C# DLL 库来让 Unity 进行引用,但是自建的库需要引用到 TextMeshPro DLL,而在 Unity 2018 里,TextMeshPro 就以源码的形式来存放的,路径在Library\PackageCache,其 DLL 路径在Library\ScriptAssemblies里,将Unity.TextMeshPro.dll来进行引用的话,会出现调用TextMeshP...

2019-12-31 19:38:36

Unity TextMeshPro DynamicText 动态文本组件

Unity-TextMeshPro-DynamicTextTextMeshPro DynamicText 动态文本组件,动态生成当前界面所需要的字体图集。原理基于TextMeshPro1.4.1 版本,收集当前显示所需的动态文本,利用font.TryAddCharacters接口进行生成字体图集。使用场景适用于静态字体 + 动态字体结合使用组件TextMeshProUGUI_Dy...

2019-11-30 14:54:27

Unity 获取手机键盘弹出高度

目的在手机上进行聊天时,键盘弹起会盖住聊天窗口,所以需要键盘弹起的时候,将界面也进行上移。解决安卓 publicint GetKeyboardHeight() { using (var unityClass = new AndroidJavaClass("com.unity3d.player.UnityPlayer")) { var uni...

2019-10-31 20:14:14

Unity 在安卓7+以上调用安装apk

问题Unity 游戏项目在进行大版本更新时,会自动下载apk,然后调用安装apk。然而,在安卓系统7+上调用安装apk没任何反应,查看日志为:android.os.FileUriExposedException: file:///storage/emulated/0/xxx.apk exposed beyond app through Intent.getData()原因在安卓系统7+...

2019-09-29 09:41:50

中点画线算法(任意斜率)

基本原理 在画直线段的过程中,当前像素点为(xp ,yp ),下一个像素点有两种可选择点P1(xp +1,yp )或P2(xp +1,yp +1)。若M=(xp +1,yp +0.5)为P1与P2之中点,Q为P理想直线与x=xp +1垂线的交点。当M在Q的下方,则P2应为下一个像素点;M在Q的上方,应取P1为下一个像素点。在斜率0<=k<=1的时候,实现代码如下...

2010-04-03 14:31:00

Unity 控制台 Console 插件增强显示

Unity-ConsoleTinyConsole Tiny 是一个 Unity 编辑器 console 窗口的有力替代品。功能文本搜索过滤多行日志显示颜色标识的调用堆栈双击堆栈进行跳转自定义过滤项外部 DLL 支持跳转安装Unity 5.x将UnityEditor.Facebook.Extensions.dll 放到 Assets\Editor\Unity 2...

2019-08-31 15:50:40

Unity 2018 渐进式光照系统可能引起的闪退

现象在使用 Unity 2018 开发项目的时候,某个场景在停止游戏的时候,会导致有些人的 Unity 闪退掉,另外有些会报错,错误如下:OpenCL GPU device GeForce GTX 750 from NVIDIA Corporation has less than 2 GB of global memory, ignoring device for lightmapping....

2019-07-30 20:23:10

Unity TextMesh Pro 文本组件之字体图集生成工具(2018 修改)

问题Unity 项目从 5.x 升级到 2018,基于 TextMesh Pro 实现的字体图集生成工具,因为 TextMesh Pro 被 Unity 内置到引擎里,不再提供DLL,导致工具编译失败。原因代码发生了变化,字体图集生成实现调用了不开放的接口,比如:GlyphLoadFlags glyphLoadFlags = ((GlyphRasterModes)m_GlyphRender...

2019-06-30 12:48:54

Unity 集成 Python 2.7 环境

原因Unity 使用 protobuf 来做网络传输和数据配置,一直使用 bat 的方式来调用生成数据,但是在 mac上无法使用,非常不便。跨平台的工具语言能够更方便进行进行不同平台的操作。使用 bat 的方式,代码难写,且难以复用。但是 Windows 下没有提供 Python 环境。Mac 平台已经自带了 Python 环境,所以只需在 Windows 环境集成 Python 环境即可。方...

2019-05-23 19:34:48

Unity Sprite Packer Overview 图集总览工具

Unity Sprite Packer OverviewUnity 图集总览工具原因Unity Sprite Packer 工具当图集多的时候,切换查看图集非常不方便,也没有可以对所有图集进行总览的功能。所以增加这个小工具,来方便进行查看和跳转。示意图地址GitHub:https://github.com/akof1314/UnitySpritePackerOverview...

2019-04-27 11:06:26

Unity 识别文件名大小写不同

原因游戏工程使用GIT进行版本控制,GIT的一个特征是不对文件名大小写敏感,需要手动去对单个文件进行重名操作,若是有人不是通过重名,就无法上传。在Unity Windows 编辑器读取正常,在安卓下就有可能读取不到文件。解决若是在Windows 下也能识别到文件的真正名称就没有这个问题。增加个可以识别文件真正名称的接口,然后在读取文件的时候,判断文件名跟传入的是否大小写相同,不相同就报错。...

2019-03-31 15:10:33

Unity TextMesh Pro 组件的 Resources 文件夹打包

原因在使用 Unity 开发的游戏中,避免使用 Resources 文件夹,而使用 AssetBundle 打包,但是 TextMesh Pro 组件自带了 Resources 文件夹,此时 AssetBundle 资源如果引用了它,那么就会把 TextMesh Pro 打成 AssetBundle,造成冗余。但是如果仅把 TextMesh Pro 的 Resources 文件夹改名掉,就会造成...

2019-02-27 19:16:41

Unity 在编辑器下模拟刘海屏显示

原因在实现支持刘海屏时,为了可以方便在编辑器下直观查看效果,也方便其他人员进行调整,需要可以在编辑器模拟显示刘海屏。原理模拟显示刘海屏黑边,那么就得在左右两侧动态添加两个黑色图片,来模仿刘海屏。代码了防止分辨率小于刘海屏的也开启模拟,所以添加分辨率比判断,小于一定比例不是刘海屏。/// <summary>/// 开启模拟/// </summary>publ...

2019-01-31 20:44:14

Unity TextMesh Pro 文本组件之字体图集生成工具

原因Unity 推荐使用 TextMesh Pro 来代替内置的现有文本组件如 Text Mesh 及 UI Text,因为 TextMesh Pro 可以渲染出非常清晰的文本。在使用过程中发现,发现有以下问题:TextMesh Pro 需要先生成一张静态字体图集,每当静态文字增加时,都需要打开自带的生成工具,一个参数一个参数的设置,非常麻烦,也不便于其他人员使用。每一个字体资产都会...

2018-12-08 11:29:14

查看更多

勋章 我的勋章
  • 签到新秀
    签到新秀
    累计签到获取,不积跬步,无以至千里,继续坚持!
  • 勤写标兵Lv1
    勤写标兵Lv1
    授予每个自然周发布1篇到3篇原创IT博文的用户。本勋章将于次周周三上午根据用户上周的博文发布情况由系统自动颁发。