自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(16)
  • 收藏
  • 关注

原创 c# 一些特殊用法或者注意事项

C#使用过程中的一些记录

2022-06-25 16:31:45 131

原创 Unity打包泰语系统bug:ArgumentOutOfRangeException: Not a valid calendar for the given culture

问题如上解决方法如下:添加 link.xml 到Assets文件夹下;link.xml内容如下:<linker><assembly fullname="mscorlib"><namespace fullname="System.Globalization" preserve="all"/></assembly><assembly fullname="System.Globalization.*Calendar" preserve="al

2022-03-19 16:14:35 4700

原创 获得网络时间的两种方式

第一种方式IEnumerator GetTime() { WWW www = new WWW("https://time.weather.gov.hk/cgi-bin/time5a.pr?a=1"); yield return www; if (www.text == "" || www.text.Trim() == "")//如果获取网络时间失败,改为获取系统时间 { }

2022-02-27 18:16:26 536

原创 UGUI Text文本内容的实际长度

//求Text文本内容的实际长度 public static float GetTextContentLenght(Text text) { Font font = text.font; int fontsize = text.fontSize; font.RequestCharactersInTexture(text.text,fontsize,FontStyle.Normal); CharacterInfo charac..

2022-01-13 12:34:05 419

原创 UGUI Text自动换行的问题

Text自动换行会导致各种问题 比如计算文本长度等需求的时候 所以我们就需要修改这里当字符串中带有半角空格,且半角空格后面的字符串内容超过文本剩余显示宽度时,Text组件会将后面的整段文字做换行。这个并不是bug,而是Text组件按照拉丁西语的分词习惯做line break,半角空格相当于分隔符,分隔空格前后的内容,并视之为单词。这种分词规则在西语中是正确的,但用在中文就水土不服了:整段的中文内容,粗暴地按半角空格分成了3部分,第一行空格后面的大段文字被判定为一个单词,剩余宽度无法显示,就被整个换到了第二

2022-01-13 11:16:02 1599

原创 设置animator里面任意状态的速度

UnityEditor.Animations.AnimatorController ac = animator.runtimeAnimatorController as UnityEditor.Animations.AnimatorController; UnityEditor.Animations.AnimatorStateMachine sm = ac.layers[0].stateMachine; int stateLength = sm.states.Length

2022-01-12 10:35:44 768

原创 unity3d中await/async的无法捕获错误信息

原文链接:http://www.stevevermeulen.com/index.php/2017/09/using-async-await-in-unity3d-2017/以下是几种测试情况:“Never call async Task methods without also awaiting on the returned Task. If you don’t want to wait for the async behaviour to complete, you should call

2021-09-22 12:43:08 416

原创 如何在2d和3d中获得鼠标位置

[SerializeField] private Camera curCamera; [SerializeField] private LayerMask layer;//层级 用于3d转换中射线检测 void Update() { //--------------鼠标位置转换为2D坐标以及3D坐标 #region 正交相机 /* this.transform.localPosition...

2021-09-05 11:05:40 144

原创 unity 给materials赋值

for (int i = 0; i < trans.transform.GetComponent<Renderer>().materials.Length; i++) { trans.transform.GetComponent<Renderer>().materials[i] = M1; }这样单独是赋值不了的 因为Note that like all arrays returned by Unity, this

2021-05-07 16:31:18 579 1

原创 Unity 血条跟随

此脚本挂在人物身上 因为要在头顶 UIHeight 是相对人物做的一个高度偏移 public Transform bloodSlider;//血条 private Transform Canvas; private Vector3 worldPosition; private Camera uicamera; public float UIHeight = 1.5f; private void Start() { Canvas = Ga

2020-12-24 16:50:41 423 1

原创 unity导航网格与Animator根运动的配合(NavMeshAgent与Root Motion )

如何开启Animator根运动 请参考篇文章: https://blog.csdn.net/chy555chy/article/details/78843808如何让导航网格寻路行走根据根运动,而不是navmeshagent自己的移动。调增动画速度相当于更改了移动速度void Start() { at = this.GetComponent<Animator>(); ag = this.GetComponent<NavMeshAgent>(

2020-12-18 14:41:05 1534

原创 Unity3D研究院之将场景导出XML或JSON或二进制并且解析还原场景

http://www.xuanyusong.com/archives/1919

2020-12-16 17:01:32 104

原创 Unity 判断目标是否在左边或右边

使用差乘判断左右一般是比较差乘的y,小于0是左,大于0是右。特殊情况可以用其他分量来比较默认情况var cross = Vector3.Cross(lhsObject.transform.position, rhsObject.transform.position);if (cross.y > 0) //sideif(cross.y < 0)//another side用forward方向,从而对有旋转的对象进行比较:void OnCollisionEnter(Collision

2020-12-05 16:39:05 3780

原创 NavMeshAgent判断临界点

判断目标点在不在网格上。在的话正常逻辑,不在的话判断当前agent的位置有没有到那个边缘点if (Input.GetMouseButtonDown(1)){ NavMeshHit hit; NavMesh.Raycast(transform.position, target.position, out hit, 1); if (hit.hit) { NavMeshPath path = new NavMeshPath(); if (age

2020-12-03 14:29:25 479

原创 Unity3D navMesh如何判断到达目标点

1设置一个比较小的阈值,当前位置和targetPos之间距离小于该阈值,可认为到达终点。2navMeshAgent.hasPath, 当有路径的时候为true,当到达终点或初始状态为false3navMeshAgetn.path.corners.Length获得的是当前路径拥有的顶点数。当初始状态或者到达目标点后,获得的Length数为1;当>1的时候说明还没有到达终点。需要注意的是:当我们通过以下任一方式设置目标点后navMeshAgent.destination=XXXnavMeshA

2020-12-01 20:36:32 5273 1

原创 Editor常见得一些方法

判断是否在编译中if(EditorApplication.isCompiling)弹出提示框EditorUtility.DisplayDialog(“提示”,“请等待…”,“确定”)当前选中的多个物体Object[] objs = Selection.objects;选中的单个物体Object obj = Selection.activeObject;获取物体的工程相对目录string path = AssetDatabase.GetAssetPath(go);刷新工程目录AssetD

2020-11-28 19:18:07 290

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除