自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

原创 3d数学基础 -- 2维向量(高中学的忘完了都)

二维向量计算 向量加法 在二维坐标中 A点的坐标是(4,5),B点坐标是(2,2),那么ab向量就是A点的坐标减去B点的坐标,计 算如下(4-2,5-2)=(2,3)。 同样的,两个向量相加的时候也就是坐标的各个轴上的值进行相加 用上面的方法,我们在添加一个点C坐标是(3,-2), ab向量的值...

2019-10-15 10:35:45 64 0

原创 关于按钮点击事件的PointerEventData属性详解

PointerEventData .button 触发此事件的按钮 PointerEventData.clickCount 计算按钮连击次数,间隔时间很短 public class ExampleClass : MonoBehaviour, IPointerDownHandler { pu...

2018-12-07 15:23:41 12049 3

原创 Unity画线工具--LineRander

新版的画线系统将颜色和材质渐变进行了整合,根据官方的文档,我们可以发现将这些整合到了Gradient这个类里面,这是一个专门用来处理渐变的类 private LineRenderer lr; void Start() { lr = GetCompon...

2018-08-07 11:30:40 1921 0

原创 3D数学--变换坐标

齐次坐标(用来判断点和向量) 通过在坐标值后面添加0或者1判断是否是点或者向量,1代表是一个点比如[1,2,3,1],0代表是向量例如[1,2,3,0] 向量和点相加得到的还是一个点,代表了这个点经过这个向量位移后产生新的点 向量就是是由最终点减去起始点得到的,方向由起始点指向最终点 ...

2018-08-07 10:53:49 81 0

原创 DoTween使用(完整版添加)

下载DoTween 在Asset Store直接下载,分为付费和免费版本 这里讲解是付费完整版 对变量进行动画(正则表达式) public float myValue2 = 0; // Use this for initialization void Start ...

2018-08-07 09:58:52 20491 1

原创 3D数学--变换坐标

齐次坐标(用来判断点和向量) 通过在坐标值后面添加0或者1判断是否是点或者向量,1代表是一个点比如[1,2,3,1],0代表是向量例如[1,2,3,0] 向量和点相加得到的还是一个点,代表了这个点经过这个向量位移后产生新的点 向量就是是由最终点减去起始点得到的,方向由起始点指向最终点 ...

2018-08-02 17:21:58 442 0

原创 3D数学--矩阵汇总

在unity中矩阵的定义和使用 在Unity中我们都是使用4*4的矩阵 ,通过 Matrix4x4.SetRow 和Matrix4x4.SetCoiumn来设置4*4矩阵的某行和某列,通过 Matrix4x4.GetRow 和Matrix4x4.GetCoiumn 获取4*4矩阵的某行和某列,返...

2018-08-02 10:15:00 633 0

原创 3D数学--向量的运算汇总

向量的长度 向量的长度就是向量的大小或者向量的模 向量长度的大小就是向量个分量平方和的平方根,就是根据三角形法则计算对角线,通过勾股定理获得长度 Unity中使用Vector3.magnitude来获取一个向量的长度 例如向量a(3,4,0),a向量的模就是3^2+4^2+0^2然后在开根...

2018-07-31 18:12:39 442 0

原创 3D数学--Unity坐标的转换

常用的转换坐标方法 //将一个点的世界坐标转换局部坐标 transform.InverseTransformPoint(Vector direction); //将一个点的局部坐标转换世界坐标 transform.TransformPinot(Vector direction); //将一个...

2018-07-31 10:25:20 197 0

原创 Unity 物体移动之虚拟轴移动

物体移动有很多方式,比如刚体的速度或者直接添加力,3d物体还能够使用角色控制器来进行移动,但是2D物体的移动很多就是采用插值的方式移动,因为2D物体需要精准的控制坐标 获取虚拟轴是我们最常用的获取移动的方式,方向以及大小都可以通过这个控制 这个方法是通过获取键盘的虚拟轴通过GetAxisRaw...

2018-07-18 10:48:24 1076 0

原创 游戏开发中的设计模式一(状态模式)

在游戏开发中,我们常常会用到一些物体的状态切换,比如场景和动画剧情等等,对于常规的不需要变通的我们可以使用switch case语句实现,但是一旦使用你的逻辑就是固定的,不能添加和修改,所以对于不确定会不会增加需求的,采用状态模式会更好 状态模式的核心思想就是通过GameManager来管理...

2018-07-16 10:59:39 425 0

转载 Unity InputFiled文字框如何获取焦点

第一种方式 public InputField mainInputField; // Activate the main input field when the scene starts. void Start () { mainInputF...

2018-07-12 16:01:44 1642 0

转载 Unity自带的一些特性的使用方法

转载:Unity常用特性

2018-07-12 15:15:53 291 0

原创 c#栈和队列的简单使用(测试回文字符串)

原理:栈是先进后出,队列是先进先出,这两个数据结构的存储是一样的,但是他们的读取确是不同,通过这个我们就能判断回文字符串 static void Main(string[] args) { string str = Console.Read...

2018-07-12 12:09:15 250 0

翻译 c#解析excel文档

注意:Excel文档有两种 以.xls结尾的使用 “Provider=Microsoft.Jet.OLEDB.4.0;” + “Data Source=” + fileName + “;” + “;Extended Properties=\”Excel 8.0;HDR=YES;IMEX=1\”“...

2018-07-11 18:26:45 1084 0

原创 c# 使用LitJson解析Json

如何添加litJson 两种引入litjson的方法 1,去litjson的网站下载litjson.dll 然后添加引用 找到dll所在目录 2,右键引用 打开管理netget程序包,在联机里面搜索litjson 在搜索结果中选择一个 点击安装 ...

2018-07-11 18:11:01 1787 0

原创 c#文件操作(读写)

使用FileInfo对文件进行操作 //相对路径:就是找当前程序所在的路径 FileInfo fileInfo = new FileInfo("TextFile1.txt"); //绝对路径:加上文件完整的路径名 ...

2018-07-11 16:54:21 831 0

原创 c#Socket进阶(TcpClient,TcpListener,UdpClient)

应用程序可以通过 TCPClient、TCPListener 和 UDPClient 类使用传输控制协议 (TCP) 和用户数据文报协议 (UDP) 服务。这些协议类建立在 System.Net.Sockets.Socket 类的基础之上,负责数据传送的细节。(也就是说TCPClient、TCPL...

2018-07-11 15:18:11 649 0

原创 c#UDP通信

UDP服务端 class Program { private static Socket udpServer; static void Main(string[] args) { //1,创建socket ...

2018-07-11 15:00:49 2226 0

原创 c#使用TCP协议构建一个能够广播的聊天室

首先这里我们是使用了线程来开辟多个连接通道,将这些连接存到一个List里面,然后对这个容器里面所有的客户端发送消息达到广播的目的 首先我们创建一个Client类,主要用来处理我们的消息接收和发送 class Client { private Socket cli...

2018-07-11 14:40:34 545 0

原创 c#线程的使用

如何开启一个线程获取线程方法的返回值 我们首先可以使用委托开启线程 //定义我们的线程方法 static int Test(int i,string str) { Console.WriteLine("test&am...

2018-07-11 12:04:46 471 0

翻译 Unity__对XML文件的操作(生成,读取,修改,追加)

/// <summary> /// 生成XML文件 /// </summary> void CreateXML() { string path = Application.dataPath +...

2018-07-05 18:17:41 1207 0

原创 Unity--读写文件操作

简单的读写文件,文件内容比较少可以使用下面这种方法,但是注意,这种方法只能创建文件,不能创建文件夹,所以需要创建好目录,这种WriteAllText写入方式每次都会覆盖掉先前的内容,追加字符串就可以使用AppendAllText方法 Environment.NewLine这个方法是个换行符 ...

2018-07-05 15:54:12 3595 0

原创 Unity--AssetBundle包的下载与实例化

最简单的加载,注意这里面的ab2是cube的材质,需要进行实例化的时候要先将这个物体的所包含的所有关联信息一块加载 string ss = "AssetBundles"; // Use this for initialization void Star...

2018-07-05 14:42:40 265 0

原创 Unity-- AssetBundle打包

using UnityEngine; using System.IO; public class CreatAssetBundles : MonoBehaviour { [MenuItem("Tools/Build AssetBundles")] stati...

2018-07-05 13:26:22 41 0

原创 c# Socket网络连接(客户端)

static void Main(string[] args) { Socket clientSocket = new Socket(AddressFamily.InterNetwork, SocketType.Stream, Protoco...

2018-07-03 11:17:49 871 0

原创 c# socket网络连接(服务器端)

首先我们需要新建一个socket //定义一个Socket Socket serverSocket = new Socket(AddressFamily.InterNetwork, SocketType.Stream, ProtocolType.Tcp); 这三...

2018-07-03 11:07:14 1984 0

原创 Unity如何在手机端截图

public Camera arCamera; public void OnScreenShotClick() { System.DateTime now = System.DateTime.Now; string times = n...

2018-07-02 08:36:24 659 0

原创 Unity移动端输入控制,双击,长按等

点击触摸直接使用GetMouseButton(0)即可,下面我们通过这个思路实现双击和长按 其中下面的newTouch和touchTime是用来控制长按的是否以及时间,保证一个位置的长按只能触发一次长按的方法 if (Input.GetMouseButton(0)) { ...

2018-07-02 08:20:20 2372 0

原创 Unity读取json的工具类JsonUtility

首先我们需要定义我们的json文件,我们可以在Resources文件夹下面创建一个.json的文件,写上如下内容 { "infoList": [ {"panelTypeString":&a...

2018-06-18 05:47:22 2834 0

转载 c#委托和事件--观察者模式

出处:http://www.cnblogs.com/wudiwushen/archive/2010/04/21/1717378.html //---本例场景为当用户从银行账号里取出钱后,马上通知电子邮件和发手机短信--- //本例中的订阅者,也就是观察者是电子邮件与手机 ...

2018-06-01 14:58:28 115 0

原创 Unity递归--经典斐波那契数列

private void Start () { //输出第十位的数字 print( Foo (10)); } int Foo ( int a ) { if(a<=0) { ...

2018-06-01 13:39:43 790 0

原创 Unity数学Mathf类使用

静态变量 Deg2Rad: Degrees-to-radians conversion constant (Read Only). 度到弧度的转化常量。(只读) Epsilon: ...

2018-06-01 11:20:40 567 0

原创 Unity使用Time类手写一个时钟计时器

private float timer = 0f; private int h = 0; private int m = 0; private int s = 0; private string timeStr = string.Empty; void Up...

2018-06-01 11:06:12 829 0

转载 Unity优化技术--UI优化之Mipmap

出处:https://www.jianshu.com/p/84cd407cb442 Mipmap技术有点类似于LOD技术,但是不同的是,LOD针对的是模型资源,而Mipmap针对的纹理贴图资源 使用Mipmap后,贴图会根据摄像机距离的远近,选择使用不同精度的贴图。 缺点:会占用内存,因为m...

2018-06-01 10:31:21 1080 0

原创 c#--string类型的方法--替换字符

void Start () { string s = "你是坏蛋asddad"; string a = s.Replace ("坏蛋","**"); print (s); ...

2018-06-01 10:28:28 7056 0

转载 c# --八种排序算法

public static class SortExtention { #region 冒泡排序 /* * 已知一组无序数据a[1]、a[2]、……a[n],需将其按升序排列。首先比较a[1]与a[2]的值,若a[1]大于a[2]则交换两者...

2018-06-01 09:22:03 75 0

原创 UnityAPI--UnityEngine下面的GameObject独有的静态方法

CreatePrimitive Creates a game object with a primitive mesh renderer and appropriate collider. ...

2018-05-31 18:09:38 446 0

原创 UnityAPI--UnityEngine下面的Object的静态方法

Destroy Removes a gameobject, component or asset. 删除一个游戏对象、组件或资源 DestroyImmediate ...

2018-05-31 18:02:24 189 0

原创 UnityAPI--对游戏物体的组建进行操作

添加组件 //创建一个名为Cube的物体 GameObject go = new GameObject("Cube"); //给go添加一个刚体组件 go.AddComponent<Rigidbody>(); 查找组件 mMesh = g...

2018-05-31 17:44:19 130 0

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