Unity个人优化总结

一、程序方面    01、务必删除脚本中为空或不需要的默认方法;    02、只在一个脚本中使用OnGUI方法;    03、避免在OnGUI中对变量、方法进行更新、赋值,输出变量建议在Update内;    04、同一脚本中频繁使用的变量建议声明其为全局变量,脚本之间频繁...

2017-12-05 14:07:11

阅读数 201

评论数 0

数学中的各类曲线函数

最近偶然看到一款非常有意思的东西,很全面。里面有全部的Math的曲线函数。 函数的小游戏地址 在这个界面右上角,可以选择函数。然后随便点点、小球就会按照曲线函数移动过去。并且坐标轴上也会显示出该曲线函数

2017-07-12 14:43:34

阅读数 8300

评论数 0

我发现了一个贼屌的大神的博客。这个帖子只为存储他的博客地址

大神的博客链接

2017-07-06 14:51:52

阅读数 330

评论数 0

Unity UGUI事件系统

Unity3D的uGUI系统的将UI可能触发的事件分为12个类型,即EventTriggerType枚举的12个值。如下图所示:     先以PointerClick为例。这个是用于某点点击事件。其他事件都可以根据相同的办法调用。     之所以使用PointerClick为例...

2017-07-03 18:02:41

阅读数 220

评论数 0

Unity 纹理格式

[Desktop] RGB Compressed DXT1 压缩的RGB纹理。这是最常见的漫反射纹理格式。 4位/像素(32 KB 256x256) RGBA Compressed DXT5 压缩的RGBA纹理。这是漫反射和高光控制纹理的主要格式。 ...

2017-07-03 15:01:05

阅读数 421

评论数 0

Unity游戏开发使用Assetbundle加载场景实战

之前有一篇文章中我们相惜讨论了Assetbundle的原理,如果对原理还不太了解的朋友可以看这一篇文章:Unity游戏开发使用Assetbundle加载场景的原理 本篇文章我们将说说assetbundle是如何实现的。 1.创建Assetbundle          无论是模型资...

2017-06-30 16:52:27

阅读数 409

评论数 0

关于Invoke的使用

在多线程编程中,我们经常要在工作线程中去更新界面显示,而在多线程中直接调用界面控件的方法是错误的做法,Invoke 和 BeginInvoke 就是为了解决这个问题而出现的,使你在多线程中安全的更新界面显示。 正确的做法是将工作线程中涉及更新界面的代码封装为一个方法,通过 Invok...

2017-06-30 16:49:04

阅读数 120

评论数 0

Unity关于Sprite Packer的用法

之前有人留言说想我介绍一下sprite packer的用法。那么我也顺便的介绍一下吧。 我们用来做sprite 的图片,通常会留有很多空白的地方,我们在画完了sprite之后,这些地方很可能就没有什么作用了。如果想避免这些资源上的浪费,我们可以把各个sprite做成图集,把图片上的空间尽量利...

2017-06-30 15:11:18

阅读数 2471

评论数 0

Unity比较两个向量的长度

向量的长度是用勾股定理计算出来,计算机计算两次方和开根的运算量比加减法要费时的多。所以如果是想比较两个向量的长度,用sqrMagnitude可以快出很多。using UnityEngine; using System.Collections; public class example : Mon...

2017-06-30 14:06:52

阅读数 1091

评论数 0

Unity写代码日常(六)

最近注意到了一个事情,有些时候,我们可能需要判断一些不一定等于0.但是又要接近0的情况。就比如,我们做一个人物移动,2D情况下。目的地有个墙,我们移动过去。移动的距离即使特小也是有距离的,可能在贴近目的地的时候,发生某些我们不想要的问题。这个时候,就需要一些判断。 我通常会用float.Eps...

2017-06-30 13:57:00

阅读数 790

评论数 1

Unity场景问题,以及老程序DontDestory问题

Unity 5.3中新增加了多场景编辑功能,允许用户将一个大场景以某种逻辑分割成多个小场景并方便的编辑和管理。这在某些情况下会比较有用,是对Unity编辑器对场景编辑能力的一个重要提升。本文将由Unity官方工程师张为,为大家介绍一些多场景编辑的基本功能以及一些实例。什么是多场景编辑 多场景编辑...

2017-06-30 11:19:00

阅读数 651

评论数 0

关于认证Steamworks注意事项。

因为现在steam已经把绿光去掉了。换成了steam Dirct。所以规则变了一些。具体的详细流程我就不写了,记不住。因为我已经注册过了。除非再申请一个账号,再走一次流程。最主要的是发一下注意事项。 1.认证steamworks的时候,填写你的个人信息,记住一定是全英文拼写。比如叫尘心。那么就是C...

2017-06-26 14:49:41

阅读数 4326

评论数 3

C# 结构体类型和类类型

当我们需要定义一些需要定义一些类型的时候,需要用到一些字段和属性的集合,有人会用类类型。也有人会用结构体类型。             结构和类的区别:   1、结构是值类型,它在栈中分配空间;而类是引用类型,它在堆中分配空间,栈中保存的只是引用。   2、结构类型直接存储成员数据,让其他...

2017-06-19 13:45:47

阅读数 287

评论数 0

TCP和UDP

TCP UDP TCP与UDP基本区别   1.基于连接与无连接   2.TCP要求系统资源较多,UDP较少;    3.UDP程序结构较简单    4.流模式(TCP)与数据报模式(UDP);    5.TCP保证数据正确性,UDP可能丢包    6.TCP保证数据顺序,UDP不保...

2017-06-19 11:28:10

阅读数 232

评论数 0

数组与指针的区别

数组要么在静态存储区被创建(如全局数组),要么在栈上被创建。指针可以随时指向任意类型的内存块。 (1)修改内容上的差别 char a[] = “hello”; a[0] = ‘X’; char *p = “world”; // 注意p 指向常量字符串 p[0] = ‘...

2017-06-17 11:15:51

阅读数 128

评论数 0

内存存储以及分配方式的区别问题

内存分配方式及其区别 1) 从静态存储区域分配。内存在程序编译的时候就已经分配好,这块内存在程序的整个运行期间都存在。例如全局变量,static 变量。 2) 在栈上创建。在执行函数时,函数内局部变量的存储单元都可以在栈上创建,函数执行结束时这些存储单元自动被释放。栈内存分配运...

2017-06-17 11:11:39

阅读数 260

评论数 0

List和ArrayList和区别。这是我见过最清晰地解释

原文链接 在ArrayList中,我们不仅插入了字符串"abc",而且又插入了数字123。这样在ArrayList中插入不同类型的数据是允许的。因为ArrayList会把所有插入其中的数据都当作为object类型来处理。这样,在我们使用ArrayList中的数据来处理问题的时候...

2017-06-16 10:54:51

阅读数 412

评论数 0

Unity之关于代码--数据结构

1、如果你需要高效的随即存取,而不在乎插入和删除的效率,使用vector 2、如果你需要大量的插入和删除,而不关心随即存取,则应使用list 3、如果你需要随即存取,而且关心两端数据的插入和删除,则应使用deque。 4、如果你要存储一个数据字典,并要求方便地根据key找value,那么...

2017-06-14 16:16:58

阅读数 237

评论数 0

Unity 游戏存档 PlayerPrefs类的用法

unity3d提供了一个用于本地持久化保存与读取的类——PlayerPrefs。工作原理非常简单,以键值对的形式将数据保存在文件中,然后程序可以根据这个名称取出上次保存的数值。     PlayerPrefs类支持3中数据类型的保存和读取,浮点型,整形,和字符串型。     分别对应的...

2017-04-14 15:15:32

阅读数 485

评论数 0

Unity之讲Texture图片转换成Sprite格式

由于Image和Button的图片要求是Sprite类型的,当有大量图片时,一个一个的操作不方便,所以考虑动态的将jpg或png图片进行转换格式。 Sprite sprite = Sprite.Create(tex, new Rect(0, 0, 0,0), Vector2.zero); ...

2017-03-13 14:09:02

阅读数 4727

评论数 0

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