
Unity3D_原创
u013452440
只会unity的渣渣
展开
-
生成随机且不重复的怪物和数字
一直在想这个问题,终于搞定了,就是说要生成100个怪物,且要控制怪物之间的间距,不能太近了。这就要考虑如何才能不重复: public List num = new List();//用数组的话没有直接移除的方法 public List view = new List();//随机好的数字 void Start() { for (int i =原创 2016-05-23 14:13:56 · 1139 阅读 · 0 评论 -
写的一个寻路算法(•̀ᴗ•́)
是我想的太简单了,想要自己写一个寻路的算法,结果写了好久还是不能做到真正的寻路:这是一个没有障碍物的....寻路using UnityEngine;public class TestMaze : MonoBehaviour{ public Vector2 start; public Vector2 end; public int obstacle;原创 2016-08-12 21:16:14 · 385 阅读 · 0 评论 -
ExecuteMenuItem解决快捷键失效的问题
问题 使用unity5遇到的一个问题,Align With View,快捷键ctrl+shift+F,升到unity5之后经常会失效,最近学习了工具类,可以有效地解决此类问题。但是原快捷键就不能继续用了,暂时还不知道如何重写unity自带的快捷键,只能用还没有被占用的。比如。。。ctrl+Q,W,E,T。。。。shift+Q,W,E,T。。。。 解决方法 [MenuItem("CustomT原创 2017-03-08 19:02:31 · 2900 阅读 · 0 评论 -
Process.Start解决开机启动问题
问题 每天开机都会打开几个必要的程序,比如QQ、unity、浏览器这些,如果手动打开不仅没效率还影响心情,在开机启动里设置启动项是个不错的办法,但是过一段时间就会提示xxx.dll丢失,xxx.exe启动异常。。。 解决 利用UnityEngine.Application .OpenURL 或者System.Diagnostics.Process.Start来把这种风险降至最低。比如我平时要启原创 2017-03-09 09:03:52 · 1225 阅读 · 0 评论 -
对象池
代码using System.Collections.Generic;using UnityEngine;public class ObjectPool : MonoBehaviour{ static Queue<GameObject> pool = new Queue<GameObject>();//使用队列,先进先出,避免连续生成同一个对象 static Transform原创 2017-03-21 13:50:08 · 238 阅读 · 0 评论 -
计时器
代码using UnityEngine;using UnityEngine.UI;public class TimeCount : MonoBehaviour{ int shift = 60;//时间进制 float _time = 0f;//毫秒 int second = 0;//秒 int minute = 0;//分 int hour = 0;//原创 2017-03-21 14:11:36 · 366 阅读 · 0 评论 -
嫌得蛋疼做了个接鸡蛋
桶的触发器using UnityEngine;public class EggCollider : MonoBehaviour{ void OnTriggerEnter(Collider co) { if (co.tag == "Egg") { ObjectPool.PushEgg(co.gameObject);原创 2017-03-21 14:10:18 · 1367 阅读 · 1 评论 -
为一个物体添加子物体
using System;using UnityEngine;using UnityEditor;public class AddChild : ScriptableWizard{ GameObject addObj;//要增加子物体的对象 public int addObjectCount = 10; //要增加的数量 public string prefix = "原创 2017-03-22 09:23:14 · 1131 阅读 · 0 评论 -
Android收集Log文件并显示在UGUI
吃水不忘wa井人。。。 http://www.xuanyusong.com/archives/2477效果图 突然发现显示的信息好像不完整。。。手机上的没有定位到哪里出错…先分享一下吧using UnityEngine;using System.Collections.Generic;using System.IO;using System.Text;using Unity原创 2017-04-28 13:59:46 · 1317 阅读 · 0 评论 -
使用NPOI编辑Office(Excel)
声明:我是用Unity写的,以下代码在5.5.2中运行通过,unity都能过了,所以C#肯定没问题的…………..NPOI的dll在网上找找吧。。。使用NPOI写Excel——插入数据 public static void WriteExcel(List<MyRebar> list) { HSSFWorkbook workbook2003 = new HSSFWorkbook(翻译 2017-04-06 18:10:35 · 4014 阅读 · 0 评论 -
UGUI菜单栏伸缩
UGUI菜单栏伸缩demo地址,失效了可以找我。。。 http://pan.baidu.com/s/1hs1evFuusing System.Collections.Generic;using UnityEngine;using UnityEngine.UI;public class ElasticTest : MonoBehaviour{ public List<GameOb原创 2017-04-25 13:23:24 · 3262 阅读 · 4 评论 -
用UGUI制作HUD
序:百度一搜,这类文章不少,但都是抄袭别人,原封不动的拿,我并不讨厌搬运,但至少要保证自己看过,用过,切实可行。如果能把原文的案例改编成自己的岂不是更好? 综上所述,找了十几篇文章都是同一个作者写的,可能是我版本过高也可能是其他原因,总之报错了。。。无法解决。于是我想起了一年前写的帖子。。。这是一年前写的using UnityEngine;using UnityEngine.UI;using原创 2017-05-21 18:13:25 · 1535 阅读 · 0 评论 -
运用递归查找对象下的所有子物体
最近,创建了好多对象,突然想知道我到底创建了多少对象,于是。。。。1.ctrl+a,然后alt+右方向键,使所有物体呈展开状态,然后执行代码 Debug.Log(Selection.gameObjects.Length);嗯,就是这样,一句话的事,但是。。。觉得不够方便(自己作死)于是有了2 2.还是一句话的事。。。 Debug.Log(FindObjectsOfType<Transform>()原创 2017-06-08 18:26:56 · 2479 阅读 · 0 评论 -
机器能做的事你就别凑热闹了╮(︶﹏︶")╭
机器能做的事你就别凑热闹了╮(︶﹏︶”)╭1.一楼测试… [MenuItem("CustomTools/Test___K %K")] public static void Test___K() { } [MenuItem("CustomTools/Test___L %L")] public static void Te原创 2017-06-19 19:31:09 · 704 阅读 · 0 评论 -
C#中的PadLeft
PS:这里只是描述我浏览博客学习的过程,并无其他意思浏览博客,突然看到了这么一句话:但是有的人写的程序实在不敢恭维。比如http://bbs.youkuaiyun.com/topics/390847086 里面的6L。看到这句话莫名的有点好奇,心里也一直在想,如果是我的话会不会也和他写的一样呢?带着这种想法,我打开了这个链接的六L。代码是这样的: #region 各进制数间转换 /// <s原创 2017-06-22 18:44:45 · 1396 阅读 · 0 评论 -
自定义的一个复制Transform组件的功能和一个控制物体显隐的功能
复制一个组件。。。。物体显隐的这个快捷键好像是有的,我之前用过一次,极不顺手就忘记了,但是这个功能还是不可少的,还是自己定义一个吧using UnityEngine;using UnityEditor;public class ChangeAdioClip : MonoBehaviour{ private static Vector3 position;原创 2016-10-19 12:11:54 · 1096 阅读 · 0 评论 -
存储Position和Rotation到XML中需要时读取
当初记得这是个很重要的功能来着,写完就忘记是什么用了一个保存一个读取; using System;using System.Collections.Generic;using System.IO;using System.Xml;using UnityEngine;string saveAnimationPath = Application.dataPath + "/原创 2016-10-18 20:55:33 · 508 阅读 · 0 评论 -
将选中的物体进行修改保存到XML或者保存到Assets目录下的某个预制以及自定义快捷键=_=
之前一直想做个copy对象的transform属性,每次都点那个小齿轮真是太麻烦了,于是有了如下:using UnityEngine;using System.Collections;using UnityEditor;public class ChangeAudioClip : MonoBehaviour{ [MenuItem("Terrain/Cust原创 2016-10-18 20:48:43 · 387 阅读 · 0 评论 -
制作自己的HUD
最近在写一个单机的小游戏,用过UGUI的HUD,并不知道可不可以自定义数字的样式,好像没有吧....索性就自己写个。功能基本是实现了,代码还有待优化,最初是想着用少量的预制不用频繁的实例就可以实现,但那样的话比如伤害数字是555555,这同样的数字出现了6个,就不大好办了,所以就改成现在这样了.....好了上代码,有时间的朋友可以帮忙完善一下....using UnityEngine;原创 2016-05-23 12:30:02 · 1721 阅读 · 0 评论 -
获取当前播放Animator的动画时间
还是在写小游戏的时候遇到了这个问题,然后就各种搜索啊都没有找到想要的结果,之后偶然发现动画的那个inspector界面居然有个length 后边跟着的数字正好就是该片段的时间,然后我就查了API得到了我想要的结果 Animator anim = GetComponent();Debug.Log(anim.GetCurrentAnimatorStateInfo(0).length);原创 2016-05-23 13:05:54 · 19050 阅读 · 6 评论 -
UGUI富文本
content 粗体content 斜体content 字号content字颜色原创 2016-07-13 11:14:51 · 1003 阅读 · 0 评论 -
异步加载——进度条君(▰╹◡╹▰)
嗯...这是我几个月之前写的,没想到又翻出来用上了using UnityEngine;using System.Collections;using UnityEngine.UI;public class Loading : MonoBehaviour{ AsyncOperation async;// public Slider slider;//进度原创 2016-08-17 23:05:48 · 2810 阅读 · 0 评论 -
最近做了一个怪物手册的功能
首先想到的就是获取到当前地图所有的怪物,然后排除重复种类的怪物,接着把玩家攻击怪物时候受到的伤害从小到大进行排序,最后把到UI上显示遇到的问题:1.开始偷懒,直接从创建怪物那里获取的怪物列表,然后问题就来了,怪物死掉后图鉴还是可以看到,这是不好的体验2.排除重复种类的怪物,用的方法比较笨。。。。3.排序么,想了下还是用sort吧4.UI没啥好说的,知道RectTransform原创 2016-09-10 01:37:21 · 815 阅读 · 0 评论 -
二维数组和字符串之间的互转
为什么会想到把一个二维数组转成字符串呢?哎,说来话长,简单来说就是我在保存游戏的时候,用的那个不支持多维数组,而且我也不知道一共会有多少个二维数组,所以我就想着干脆转换成一个长长的字符串算了,不知道这样会消耗多少性能。。。但是也管不了了,先实现功能再说读取游戏的时候还要把字符串转换成二维数组。。。/// /// 将一个二维数组转化为一个string /// /原创 2016-08-20 02:46:06 · 12180 阅读 · 0 评论 -
The object of type 'RectTransform' has been destroyed but you are still trying to access it
MissingReferenceException: The object of type 'RectTransform' has been destroyed but you are still trying to access it.Your script should either check if it is null or you should not destroy the obj原创 2016-08-20 10:18:09 · 11215 阅读 · 0 评论 -
使用Linq查询感觉好方便的说
原代码如下 Sprite GetIDSprite(string mID) { for (int i = 0; i < monsterIcon.Length; i++) { if (monsterIcon[i].name == mID) { return monsterIcon[原创 2016-08-20 11:23:01 · 438 阅读 · 0 评论 -
关于深复制
引用类型的复制好像都是浅复制,要深复制的话就得实现ICloneable这个接口,看了一下这个http://blog.youkuaiyun.com/bugdemo/article/details/7918164和http://www.cnblogs.com/luminji/archive/2011/02/02/1948826.html感觉还是自己实现好了于是就有了如下: ///原创 2016-08-11 16:47:20 · 333 阅读 · 0 评论 -
巧妙地批量修改unity本地文件的参数
项目中有几百个音频文件,需要设置音频文件的格式,但Unity这块还不支持批量选中操作,一个一个修改太费劲参考了http://www.manew.com/thread-46098-1-1.htmlusing UnityEngine;using UnityEditor; public class ChangeAudioClip{ [MenuItem ("Crusade To原创 2016-09-02 17:35:49 · 1878 阅读 · 0 评论 -
撸算法
/// /// 插入排序 /// /// public static int[] Sort(int[] sort) { for (int i = 0; i { int currentCount = sort[i]; //把当前循环到的数值取出来 int原创 2016-08-12 21:09:29 · 532 阅读 · 0 评论 -
获取当前播放Animator的动画Name
写个工具,倒也不是工具,就是自己需要这么个功能,,,实时的查看某个状态机正在播放的动画名,方便,提高效率,但是一直找不到这个属性,还是得自己翻书找啊 string animString = anim.GetCurrentAnimationClipState(0)[0].clip.name;原创 2016-10-08 21:17:19 · 24341 阅读 · 6 评论 -
unity摇一摇+震动
原脚本是Java我翻译成了C#。。。哈哈using UnityEngine;public class Vibrate : MonoBehaviour{ private float old_y; private float new_y; private float max_y = 0; private float min_y = 0; p翻译 2016-09-27 21:12:51 · 867 阅读 · 0 评论 -
写了一个计时器
由于工作需要写了个计时器,没有想像的那么容易,折腾了一个小时左右,终于大功告成。 主要功能就是计时,大的单位比如分,时,天为0的时候只显示秒单位,其他在不为0的时候显示,代码很简单,就不注释了,截图也免了…没啥好看的,自己运行一下就清楚了哈哈using System.Text;using UnityEngine;using UnityEngine.UI;public class TimerTe原创 2017-06-22 20:40:12 · 620 阅读 · 0 评论