您的位置:首页 > 移动开发 > Unity3D

[精华分享][Unity技巧]日常积累小技巧

2017-02-14 21:51 274 查看
31.使用 浏览器 的 ctrl + F 搜索功能,可以快速 查找 网页的关键词。

30.隐藏UI物体,或者是其他的物体,可以 使其Transform.localScale或者Transform.lossyScaleVector3.zero时候隐藏,Vector3.one时候显示

29.使得 大量的 代码 模块化,是非常紧急的工作。在一些变量 的前面加上一个 [Header("Test_003")] ,即可。

[Unity&C#]变量太多,如何模块化显示

28.如果安装的时候出现Internet connection lost,请使用相关工具清理C盘,使得C盘有足够的空间,缓存安装包。

 


[Unity]安装Unity的时候出现Internet connection lost.

27.Unity有很多版本,如果打开旧版本的 Unity 缺少一些 引用空间,D:\Unity\Editor\Standard Assets 里面是放很多兼容包的地方,需要安装最新版本完整的Unity。

可以参考下面的文章,

[Unity&]缺少引用空间MouseLook 的解决办法

26.快速 判断一个 字符串 string 是否为 空 的函数

 if (string.IsNullOrEmpty(test_str))//test_str

25使用接口 命名 第一个 ITest,意味着 InterfaceTest 接口。

[Unity&C#]接口interface 的意义

24.使用VS 快捷键快速 打开 继承 的 父类 的文件

 


[Unity&小技巧]快速跳转到 类 的文件



23.大量的 IF语句 代码 如果 能简化 成 1句 代码,那么 对 代码的可读性 有很大的提升。

[Unity&C#]简化IF 语句的几种方法

22.构造函数,与自己 的类的名字相同,并且构造函数 没有 返回值

public class Test

{

    public int Value { get; set; }

    public Test(int value)

    {

        this.Value = value;

        Debug.Log( "New value initiated"  );

    }

}

在另外 一个 类 中 直接使用 new Test(66); 就会创建一个 66

21.对UGUI 的Button 等组件进行代码 操作 的时候 ,使用using UnityEngine.UI;

20.同一个 类中 有 与函数 相同名字 的 形参 用  this.变量 区别

private string var;

void fuction(string var)

{this.var = var;} 

19.声明相同类型 的变量,public int a;

public in b;

可以这样写 public int a,b;

18.如果派生类(子类)的派生类(子类)使用 同名 的函数,则相对 的父类 使用关键词 virtual ,相对子类 同名函数 使用关键字 override。

17.如果有相同模型 不同 的动作 最好 这样命名: hero.fxb,hero@attack.fxb,hero@walk.fxb,hero@run.fxb

16.想要 改变 派生类(子类) 的父类 的函数,变量。可以在 对应 的父类 函数,变量 使用关键词virtual 。在派生类(子类)同名函数 使用关键字 override。


浅析C#中new、override、virtual关键字的区别

15.从本质上来说,继承,全局静态类,全局静态变量,函数,实例化,的本质 就是 减少代码冗余,优化代码。

14.如何创建 一个 包含 string [] str = {"a","b" };的二维数组

List<string[]> str_array_list = new List<string[]>();

这篇文章有助于你更好的理解:

[Unity&JSON&List&数组]如何用一个 list 代替 二维 sting 类型数组

13.

如果工程里面包含了NGUI,如果长时间没有使用 该工程(没有打开运行),Unity会报出NGUI很多莫名其妙的问题。(记得备份之前可以使用的工程文件)(这是使用NGUI的弊端坏处之一)

12.

.cs文件继承的使用。如果A.cs 是母文件,B.cs 是A.cs 的子文件,在A.cs 里面有一个私有 变量或者 私有函数。那么继承A.cs 的B.cs 是可以直接使用A.cs 的私有对象的。

11.

【Unity&小技巧】如何操作大量改名字的变量

10.

不要在循环里面使得i++;变为 i+=0;这样会使得Unity无限循环空,失去响应。

9.

四舍五入运算,Mathf.Round 四舍五入,// Prints 10Debug.Log(Mathf.Round(10.2));//
Prints 11Debug.Log(Mathf.Round(10.7));

8.

尽量少使用float 变量,因为该变量会导致占用较大的内存,如果变量都是该类型,就会造成大量的空间浪费,影响运行效率。

7.

使用类型转换的时候,把int 类型的变量转换为float 类型的变量。如果

,就是没有成功转换。

6.

莫名其妙 执行2次,或者多次。有几种情况

A.使用了Input.GetMouseButton(0)

使用该函数,只要按住鼠标就会一直执行。

B.没有把代码放入update函数。而是OnGUI函数中

C.有多个物体 挂载了相同 的脚本。

5.

请多检查几遍For 循环,不能让循环进入死循环,或者是 一定次数 的没有任何代码的循环里面。

否则Unity 会失去响应。Ctrl + Alt + Del 启动任务管理器 ,结束Unity程序即可解决问题。

4.

对于频繁使用 的UI ,或 物体而言,直接对其进行数值上的操作,要比 实例化 生成物体,使得效率更快?

3.

在项目中,如果频繁 大量 的生成 实例化 物体,会给系统造成负担,那么 直接对已经 在场景中生成 的物体,进行改变数值等操作

也能达成类似的效果,效率会不会 更快一些

2.

UGUI 围绕在3D角色的UI 只有Pro版本才能够使用

1.

int 类型的变量使用乘除,如果有0.5的结果,会直接变为0,因此,要强制转换为 float 类型变量 (float)

【Unity问题】Int类型除法运算为什么归零
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: