自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 封装数组工具类ArraysUtil(操作整型数组)

请根据要求封装操作整型数组的工具类ArraysUtil,不允许调用Arrays类的现成的方法,提供如下方法(注意参数和返回值的设计)需求:1、循环打印数组2、循环打印数组,一行打印指定个数的元素3、将数组转成[元素1,元素2…]这种格式的字符串4、将数组冒泡\或者其他算法排序(直接将原数组排序)5、将数组冒泡\或者其他算法排序(不允许排形参的数组,需要直接返回一个排好序的新数组)6、...

2020-02-10 11:35:29 826

转载 抽象类和接口有什么区别

抽象类和接口有什么区别参数 抽象类 接口默认的方法实现 它可以有默认的方法实现 接口完全是抽象的。它根本不存在方法的实现实现 子类使用 extends 关键字来继承抽象类。如果子类不是抽象类的话,它需要提供抽象类中所有声明的方法的实现。 子类使用关键字 implements 来实现接口。它需要提供接口中所有声明的方法的实现构造器 抽象类可以有构造器 接口不能有构造器与正常 Java 类的...

2019-12-29 09:10:23 144

转载 Final

final关键字一.Final 修饰成员变量的注意事项final修饰成员变量,该成员变量必须在创建对象之前进行赋值,否则编译失败final修饰成员变量,固定的不是成员变量拥有的默认值,如果固定的是默认值,那么将导致被final修饰的成员变量的值永远无法修改,只能是默认值,这也不符合语法规则成员变量的赋值有三种实现方式:定义成员变量的时候手动赋值利用构造器对成员变量进行赋值利用set函...

2019-12-19 16:04:07 343

翻译 合理优化Unity的GC

介绍:在游戏运行的时候,数据主要存储在内存中,当游戏的数据在不需要的时候,存储当前数据的内存就可以被回收以再次使用。内存垃圾是指当前废弃数据所占用的内存,垃圾回收(GC)是指将废弃的内存重新回收再次使用的过程。Unity中将垃圾回收当作内存管理的一部分,如果游戏中废弃数据占用内存较大,则游戏的性能会受到极大影响,此时垃圾回收会成为游戏性能的一大障碍点。本文我们主要学习垃圾回收的机制,垃圾回收...

2019-03-22 15:41:22 267 1

转载 了解市面上的Lua

现在一些热更的方案有LuaJit、uLua、sLua、xLua、L#(C# Light)等1、LuaJit和其他Lua解释器区别过大,针对大多数unity的程序员来讲,并不是特别适合。2、uLua:Lua是当前速度最快的Lua,但它所存在的缺陷就是uLua的分支版本多,造成了不统一的现象。 ulua最早是一个叫LuaInterface开源库的Unity移植,在2015年初换成cs2lu...

2018-05-27 22:40:03 574

原创 NGUI监听事件的几种方式

欢迎观看小kobe的博客本次分享一下NGUI中几种监听方式,监听方式有很多,点击,按下,抬起,托拉拽,滑动等等,这里拿按钮点击状态举例,正常我们都知道想创建一个Button需要给一个Sprite添加一个UIButton.cs和BoxCollider(勾选isTrigger)。但有时候我们不想给Sprite添加UIButton.cs,那么这样如何实现UI的触发事件呢? 我这里做了四种方式分类,...

2018-05-03 09:55:47 972

转载 Unity3d笔试题大全

Unity3d笔试题大全 1. [C#语言基础]请简述拆箱和装箱。 答: 装箱操作: 值类型隐式转换为object类型或由此值类型实现的任何接口类型的过程。 1.在堆中开辟内存空间。 2.将值类型的数据复制到堆中。 3.返回堆中新分配对象的地址。 拆箱操作: object类型显示转换为值类型或从接口类型到实现该接口值类型的过程。 1.判断给定类型是否是装箱时的

2018-01-06 16:36:58 2333

转载 .NET Framework 自动内存管理机制深入剖析 (C#分析篇)

在.NET Framework中,内存中的资源(即所有二进制信息的集合)分为”托管资源”和”非托管资源”.托管资源必须接受.NET Framework的CLR(通用语言运行时)的管理(诸如内存类型安全性检查),而非托管资源则不必接受.NET Framework的CLR管理. (了解更多区别请参阅.NET Framework或C#的高级编程资料)托管资源在.NET Framework中又分别存放在两

2017-12-20 22:49:26 420

转载 Unity鼠标双击事件

1鼠标的双击 function OnGUI(){ if(Event.current.isMouse && Event.current.type == EventType.MouseDown && Event.current.clickCount == 2){ print(“double click”); } } 上面是双击屏幕的事件,假如想双击某个物体private var

2017-12-12 11:43:22 6036

转载 socket数据包限制大小是多少

一,网络编程中两个主要的问题一个是如何准确的定位网络上一台或多台主机,另一个就是找到主机后如何可靠高效的进行数据传输。在TCP/IP协议中IP层主要负责网络主机的定位,数据传输的路由,由IP地址可以唯一地确定Internet上的一台主机。而TCP层则提供面向应用的可靠(tcp)的或非可靠(UDP)的数据传输机制,这是网络编程的主要对象,一般不需要关心IP层是如何处理数据的。目前较为流行的网络编程模型

2017-12-12 11:42:39 16612 2

转载 手游上线基本流程

仅供参考上线前一个月运营工作游戏信息确定确定游戏名字icon做多个版本进行测试截图准备做多个版本进行测试法律流程申请软件著作权申请软件产品登记美术相关申请美术作品版权登记游戏官网(适应移动端浏览)游戏视频制作开始筹备游戏资料整理(初版)第三方账号申请百度贴吧申请微信账号申请微博账号申请QQ空间账号申请提交运营通用需求(详情在另外一个文档)

2017-11-29 11:29:11 6007

转载 通俗易懂的_A*

虽然掌握了 A* 算法的人认为它容易,但是对于初学者来说, A* 算法还是很复杂的。搜索区域(The Search Area)我们假设某人要从 A 点移动到 B 点,但是这两点之间被一堵墙隔开。如图 1 ,绿色是 A ,红色是 B ,中间蓝色是墙。图 1你应该注意到了,我们把要搜寻的区域划分成了正方形的格子。这是寻路的第一步,简化搜索区域,就像我们这里做的一

2017-11-29 09:40:22 870

翻译 封装Debug.Log 游戏发布关闭 Log 减少性能消耗

在游戏发布时,有很多东西需要进行优化 ,消耗性能的东西 能减少就减少。UnityEngine.Debug.Log 是很消耗性能的操作,即使我们选择的是Release 版本发布,这个函数仍然会执行并且输出Log ,不仅影响性能,还有可能泄漏隐私。所以我们在发布上线时会关掉Log。比如下面这段代码:?12345

2017-11-28 00:58:09 1243

转载 NGUI减少Drawcall

一、减少drawcall方法前置说明一:Unity中的drawcall定义:每次引擎准备数据并通知GPU的过程称为一次Draw Call。Unity(或者说基本所有图形引擎)生成一帧画面的处理过程大致可以这样简化描述:引擎首先经过简单的可见性测试,确定摄像机可以看到的物体,然后把这些物体的顶点(包括本地位置、法线、UV等),(顶点如何组成三角形),变换(就是物体的位

2017-11-28 00:51:22 438

转载 图片纹理压缩方式

Unity3D引擎对纹理的处理是智能的:不论你放入的是PNG,PSD还是TGA,它们都会被自动转换成Unity自己的Texture2D格式。  在Texture2D的设置选项中,你可以针对不同的平台,设置不同的压缩格式,如IOS设置成PVRTC4,Android平台设置成RGBA16等。嗯,非常的智能。  但是,在一些进阶的使用中,一些情况是难以满足的。比如,我们NGUI的图集中,

2017-11-28 00:44:34 631

转载 TCP和UDP区别

TCP协议与UDP协议的区别    首先咱们弄清楚,TCP协议和UCP协议与TCP/IP协议的联系,很多人犯糊涂了,一直都是说TCP/IP协议与UDP协议的区别,我觉得这是没有从本质上弄清楚网络通信!TCP/IP协议是一个协议簇。里面包括很多协议的。UDP只是其中的一个。之所以命名为TCP/IP协议,因为TCP,IP协议是两个很重要的协议,就用他两命名了。TCP/IP协议集包括应用层,

2017-11-26 20:27:50 172

原创 关于在Unity中实例化脚本的问题

我们在学c#基础的时候,大家都知道想要获取一个实例类里面的公有成员,就必须在调用的时候实例化这个类。比如有一个A类class  A{  public int  age;}class Progress{    void Main()     {A a = new A();//实例化A类  也称实例化对象                a.name;

2017-10-23 18:21:39 5795

原创 摄像机跟随主角

在Unity中,经常会用到摄像机跟随主角的效果,那么我们来实现一下。主要运用的技术点有:1.GameObject.FindGameObjectWithTag()查找方法                                    2.向量的基本运算      3.Vector3.Lerp() 平滑移动                                   

2017-10-20 09:23:27 1143

原创 Unity3d_协程和Invoke二者的区别

延迟调用一般会用到Time.deltatime做逻辑处理,还有Invoke延迟调用,协程,说一下Invoke和协程大致区别。Invoke和协程一、Invoke函数。原文:http://blog.csdn.net/ycguhang/article/details/188088731.Invoke是一种委托方法。void Invoke(string methodName,

2017-10-10 20:33:58 6913 3

原创 const和readonly二者区别

1.1 静态/动态常量 首先先解释下什么是静态常量以及什么是动态常量。静态常量是指编译器在编译时候会对常量进行解析,并将常量的值替换成初始化的那个值。而动态常量的值则是在运行的那一刻才获得的,编译器编译期间将其标示为只读常量,而不用常量的值代替,这样动态常量不必在声明的时候就初始化,而可以延迟到构造函数中初始化。1.2 二者区别  1)const修饰的常量在声明的时候必须初始化

2017-08-01 10:00:35 1374 2

空空如也

空空如也

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

TA关注的人

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