自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(38)
  • 资源 (6)
  • 收藏
  • 关注

原创 【Lua】Table根据value排序

使用lua开发需要把有用的数据全部存进Table里,lua也提供了一个sort接口来给table排序,但是sort的实现也是基于冒泡排序,他默认table的key是从1开始的,这样就会造成当我们的key是一些特殊的标志位,比如游戏中背包数据的GUID,就会无法正常排序。所以我们需要单独封一个接口来实现通过value来排序的功能下面就以装备列表中,Key为GUID 通过装备部位来排序

2017-03-06 15:47:20 4307 1

转载 【Unity开发】获取Unity Stats面板

讲脚本挂在场景内即可查看Stats数据using UnityEngine;using System.Text;using UnityEditor;public class ShowFps : MonoBehaviour{ public bool m_isShow = true; private int m_FrameCounter; private flo

2017-02-16 15:35:13 4299

转载 【Lua】Lua转义符的使用

虽然lua中字符串拼接“string.format”相对于“..”消耗较大,但有时为了代码的可读性,项目中还是经常用到“string.format”。至于这两个用法的性能看源码也很容易看出来,这里就简单说一下,前者其实调用C函数str_format来实现拼接的,而后者只是一个操作符,通过memcpy来拼接,并且多个“..”的操作其实也只执行了一次concat。对于“string

2016-11-25 17:55:48 8579 1

原创 【Unity开发】粒子效果穿透最上层UI的解决办法

只需将下面的脚本动态或者静态加载到NGUI的粒子上。并设置一下粒子显示在某个UI上,就可以解决穿透的问题了using UnityEngine;using System.Collections;public class EffectDepth : MonoBehaviour { //粒子放置的UI位置 public UIWidget target; //记录渲染深度

2016-08-03 16:30:47 7613 1

转载 【Lua】将数据插入table,并设置Key值

给定如下数据 {“aaa”, 25, "策划"}, {“bbb”, 24, "程序"}, {“ccc”, 26, "测试"}这些数据用LUA转化成 { {“aaa”, 25, "策划"}, {“bbb”, 24, "程序"}, {“ccc”, 26, "测试"}}这种表,并设置Key值为szName, nAge, szTitle.思路:先将三张表插入到同一张表中,再通过循环,将“大表”

2016-05-12 16:51:26 2814

转载 【Unity开发】Unity中触摸和鼠标操作的几个问题

关键点1:在unity中touch事件同时也会触发GetMouseButton事件,有时候可能会给你带来方便,但是如果没有意识到这个问题的话,也很可能给你带来很大的麻烦。关键点2:触摸操作也可以使用Input.GetAxis("Mouse X")(或"Mouse Y",下同,略去不写)来判断指尖移动的距离,虽然这点很方便,但是这样就带来了另外两个问题,见关键点3和4;关键点3:

2016-05-06 19:28:43 12379 4

原创 【Unity开发】Unity获取设备屏幕分辨率

using UnityEngine;using System.Collections;public class ExampleClass : MonoBehaviour { void Start() { Resolution[] resolutions = Screen.resolutions; foreach (Resolution res in r

2016-04-01 10:52:29 28818 2

原创 【Lua】不进位保留小数点X位数

游戏需求常常因为数值太大,需要简化显示,例XX.XX亿。 XX.XX万lua在对两个整数进行除法操作时不会向C#那样将结果转换成整数,而是自动转换成浮点数。所以当我们保留小数使用string.format("%.2f",str)的时候,会自动完成四舍五入操作那么当不想进位的时候怎么做呢:function NumberToShow(number) if number = n

2016-03-29 13:57:55 9039

原创 【Unity开发】NGUI动态刷新ScrollView

使用NGUI开发ScrollView时,当动态添加Prefab时无法重新排序,此时可以通过调用UIGrid组件的Reposition()函数来刷新ScrollView或者通过属性repositionNow = true来刷新具体代码如下:using UnityEngine;using System.Collections;public class test

2016-03-09 17:20:20 4086 1

原创 【Unity开发】通过C#读取CSV表,创建并存储到LUA table中

这样做的目的有助于策划改需求时。可以直接热更新修改游戏数值。using UnityEngine;using System.Collections;using System.IO;using System.Collections.Generic;using System.Text;using UnityEditor;public class test : MonoBehaviour {

2016-03-03 11:11:54 2076

原创 【Lua】观察者模式在Lua中的实现

--LUA对于观察者模式的实现--被观察者表Subject = {}--类似父类,具体对于lua面向对象编程思想学习看这里:--http://www.jb51.net/article/55724.htmfunction Subject:new(obj) obj = obj or {} setmetatable(obj, self) --实例化对象指向Subject,这样就以Sub

2016-02-01 11:13:39 1445

原创 【Unity开发】实现简易时钟效果

先创建一个新的Unity工程。默认场景包含一个基于 (0, 1, -10) 、俯视Z轴的相机。为了获得和场景视图相机相似的视角,选择相机,然后从菜单中选择GameObject / Align View to Selected。我们需要一个对象结构来代表时钟,从GameObject / Create Empty创建一个空游戏对象,命名为Clock。为它创建三个子对象,分别命名为Hours,

2016-01-25 11:14:41 3143

转载 【C#】对文本、图片、音频文件的读取与写入

对于文件的存储都采用流(System.IO.Stream)形式存储与读取1.文件流——FileStream 包括: StreamWriter和 BinaryWriter2.缓存流——BufferStream3.内存流——MemoryStream4.网络流——NetworkStream注:针对文本形式的采用————StreamWriter和 StreamReader类;   

2016-01-16 14:40:05 2569 1

原创 【Unity开发】简单的Wav文件压缩

using UnityEngine;using System.Collections;using System.Text;using System.IO;using System;using System.Collections.Generic;public class audioTest : MonoBehaviour { void Start () {

2016-01-15 21:49:03 1803

原创 【Unity开发】获取文件的MD5

文件的MD5值是独一无二的,所以当MD5值改变时说明文件改变了近期做移动端的断点续传正是运用到这一特性。using UnityEngine;using System.Collections;using System.Net.NetworkInformation;using System.IO;using System;using System.Text;public class

2016-01-07 14:10:17 3328

原创 【Unity实用小方法】判断shader使用贴图数

using UnityEngine;using System.Collections;using UnityEditor;public class Test : MonoBehaviour {private int showShaderTexNum(Shader shader)    {        int propertynum = ShaderUtil

2016-01-05 21:12:21 1452

原创 【Unity开发】UNITY实现断点续传

using UnityEngine;using System.Collections;using System.IO;using System.Threading;using System.Net;public class wishDownload : MonoBehaviour{ /// /// URL下载路径 /// private stri

2016-01-05 20:48:23 3868 3

原创 【Unity实用小方法】判断贴图是否为透明贴图

private bool JudgeTransparentPic(TextureFormat format) { //所有贴图格式带alpha通道的格式,带alpha通道的贴图才为透明贴图 string[] transparentFormat = { TextureFormat.Alpha8.ToString(),T

2015-12-27 23:28:20 5641

原创 【C#数据结构】快速排序

设要排序的数组是A[0]……A[N-1],首先任意选取一个数据(通常选用数组的第一个数)作为关键数据,然后将所有比它小的数都放到它前面,所有比它大的数都放到它后面,这个过程称为一趟快速排序。值得注意的是,快速排序不是一种稳定的排序算法,也就是说,多个相同的值的相对位置也许会在算法结束时产生变动。一趟快速排序的算法是:1)设置两个变量i、j,排序开始的时候:i=0,j=N-1;2)以第一

2015-12-16 21:42:12 490

原创 【C#数据结构】简单选择排序

在简单选择排序过程中,所需移动记录的次数比较少。最好情况下,即待排序记录初始状态就已经是正序排列了,则不需要移动记录。最坏情况下,即待排序记录初始状态是按第一条记录最大,之后的记录从小到大顺序排列,则需要移动记录的次数最多为3(n-1)。简单选择排序过程中需要进行的比较次数与初始状态下待排序的记录序列的排列情况无关。当i=1时,需进行n-1次比较;当i=2时,需进行n-2次比较;依次类

2015-12-16 21:31:41 829

原创 【C#数据结构】直接插入排序

直接插入排序(straight insertion sort)的做法是:每次从无序表中取出第一个元素,把它插入到有序表的合适位置,使有序表仍然有序。第一趟比较前两个数,然后把第二个数按大小插入到有序表中; 第二趟把第三个数据与前两个数从后向前扫描,把第三个数按大小插入到有序表中;依次进行下去,进行了(n-1)趟扫描以后就完成了整个排序过程。直接插入排序属于稳定的排序,最坏时间复杂性为O

2015-12-16 21:26:31 611

原创 【C#】特性的基本操作

主函数:#define IsTestusing System;using System.Collections.Generic;using System.Linq;using System.Diagnostics;using System.Text;using System.Threading.Tasks;namespace 特性{ class Program

2015-12-11 14:12:09 363

原创 【C#】反射基本用法

主函数:using System;using System.Collections.Generic;using System.Linq;using System.Text;using System.Threading.Tasks;using System.Reflection;namespace 反射{ class Program { static

2015-12-11 14:05:37 443

原创 【Unity开发】简单的对象池实现

using UnityEngine;using System.Collections;using System.Collections.Generic;public class ObjectPool : MonoBehaviour{ //定义一个池子,里面存的是对象名字,以及游戏对象 Dictionary> pool = new Dictionary>(); /

2015-12-03 21:10:25 887

转载 【Unity开发】Unity实现英雄联盟选择皮肤效果

using UnityEngine;using System.Collections;/// /// 脚本位置:Card预制体身上/// 脚本功能:保存Card所有数据信息,用于更换图片/// public class CardInfo : MonoBehaviour { // 保存3张图片的深度信息 // 背景图片-》toggle激活图片-》人物图片 public UIWidg

2015-11-28 20:16:23 4315 2

原创 【C#】一个方法判断整数是否是2的N次方

private static bool GetFlag(int num) { if (num < 1) return false; //若是2N次方,则2N次方-1的2进制 & 上2N次方各位均为0 //例: 8:1000 7 :0111 & 的结果为0 return (num &

2015-11-27 20:38:58 1940

原创 【Unity开发】Unity5.x版本的AssetBundle打包

using UnityEngine;using System.Collections;using UnityEditor;/// /// 脚本位置:Editor文件夹下/// 脚本功能:打包/// public class CreateAssetBundle:Editor{ //打包预制体 [MenuItem ("Assets/Build AssetBundle poda")]

2015-11-25 15:43:26 3315

原创 【C#】校验IP地址的正则表达式

string regexStrIp4 = @"^(((2[0-4]\d|25[0-5]|[01]?\d\d?)\.){3}(2[0-4]\d|25[0-5]|[01]?\d\d?))$";Console.WriteLine("请输入一个IP4地址:");string inputStrIp4 = Console.ReadLine();Console.WriteLine(inputStrIp4

2015-11-25 09:50:33 1542

原创 【Unity常识】游戏对象及脚本的状态与Start等函数的调用关系

通常调用关系有以下4种:1.game object 为active 但是脚本为disabled此时当对象被创建时只有Awake函数会被立刻调用,OnEnable和 Start 会在Enabled脚本后调用。2.game object 为deactive但是脚本为enabled此时当对象被创建时不会有函数被调用,当active物体之后会按照Awake OnEnable Start 顺

2015-11-22 23:43:49 3604

原创 【Lua基础】Lua基本用法

----------------注释方式------------------------- 单行注释--[[多行注释]]---------------基本数据类型----------------------- nil 空值-- boolean bool类型-- number 数字类型-- string 字符串-- table 表-- function 函数----

2015-11-20 11:46:42 859

原创 【Unity开发】NGUI,UGUI按钮监听的动态添加与移除

Ugui:using UnityEngine;using System.Collections;using UnityEngine.UI;/// /// 脚本位置:UGUI的按钮身上/// 脚本功能:动态的添加按钮的点击事件/// public class ListenerTest : MonoBehaviour { private Button button ; void

2015-11-18 17:57:57 5757 3

转载 【Unity开发】Unity2D多分辨率屏幕适配方案(IOS露出天空盒解决办法)

此文将阐述一种简单有效的Unity2D多分辨率屏幕适配方案,该方案适用于基于原生开发的Unity2D游戏,即没有使用第三方2D插件,如Uni2D,2D toolkit等开发的游戏,NGUI插件不受这个方案影响,可以完美和此方案配合使用。---------------------------------------正式开始的分割线-------------------------------

2015-11-17 15:57:13 3368

原创 【Unity开发】A星算法(怪物终点反复改变的解决办法)

//定义格子的枚举类型public enum GridType{ Normal, Obstacle, Start, End}定义格子类public class Grid : IComparable{ public int x; public int y; public int f;//总消耗 G+H public int g;//到起点消

2015-11-14 11:04:15 2411 1

原创 【Unity实用小方法】开启游戏时播放一段动画

// 不显示任何视频控件,当点击屏幕发生输入之后会跳过动画的播放 // 一般游戏中的开场动画使用这种播放方式  Handheld.PlayFullScreenMovie("test.mp4", Color.black, FullScreenMovieControlMode.CancelOnInput); //视频文件放置在StreamingAssets 文件夹中

2015-11-13 21:28:53 2663 1

转载 【C#】Observer设计模式委托事件的使用(获取Subject多个属性)

using System;  using System.Collections.Generic;  using System.Text;  namespace Delegate {  // 热水器  public class Heater {  private int temperature;  public delegate void BoilHandler(int

2015-11-12 17:19:24 576

原创 【Unity实用小方法】随机生成不重复的数字

public int[] GetRandomSequence2(int total, int n) { //随机总数组 int[] sequence = new int[total]; //取到的不重复数字的数组长度 int[] output = new int[n]; for (int i = 0; i <

2015-11-12 09:09:02 13380 3

原创 【Unity实用小方法】鼠标双击的判断

using UnityEngine;using System.Collections;public class DoubleClick : MonoBehaviour { //计时器,在一定的时间内双击有效 private float time = 0f; //计数器 private int count = 0; // Use this for ini

2015-11-11 16:06:51 8833 2

原创 【Unity实用小方法】生成随机颜色

Color RandomColor()    {//随机颜色的RGB值。即刻得到一个随机的颜色        float r = Random.Range(0f, 1f);        float g = Random.Range(0f, 1f);        float b = Random.Range(0f, 1f);        Color color =

2015-11-11 13:37:25 11966 1

Head First 设计模式(中文版)

《Head First设计模式》(中文版)共有14章,每章都介绍了几个设计模式,完整地涵盖了四人组版本全部23个设计模式。前言先介绍这本书的用法;第1章到第11章陆续介绍的设计模式为Strategy、Observer、Decorator、Abstract Factory、Factory Method、Singleton,Command、Adapter、Facade、TemplateMethod、Iterator、Composite、State、Proxy。最后三章比较特别。第12章介绍如何将两个以上的设计模式结合起来成为新的设计模式(例如著名的MVC模式),作者称其为复合设计模式(这是作者自创

2016-02-04

微信公众平台开发DEMO整合

资源包括翻译功能,自动回复功能,自定义菜单功能,天气预报功能,聊天机器人功能等

2016-02-02

BestHTTP插件

BestHTTP是一个机遇RFC_2616的HTTP/1.1实现,这个支持几乎所有的unity移动端和pc平台。 我的目标是创建一个简单的使用方法,但是也很有用的插件,作为unity插件能够发挥HTTP/1.1的潜力。

2016-02-02

Unity Shaders and Effects Cookbook汉化

Unity Shaders and Effects Cookbook汉化版

2016-01-26

Wav文件压缩

对Wav文件进行简单的压缩,满足压缩后大小为原文件的一半。有兴趣的朋友可以写一个算法。让音质更好一点

2016-01-21

UnityAPI解析电子书

《Unity API解析》挑选了Unity引擎里一些核心API类,例如 Object、GameObject、Rigidbody、Transform、Camera、Quaternion、Vector3等进行了详细的功能注解,注解内容包括API的使用方法、算法分析、边界条件、参数间的制约关系及注意事项等,特别是对很多功能相近或使用方法相似的API进行了较为详细的比较说明。 《Unity API解析》适用于对Unity有一定了解的入门开发人员,也可作为Unity开发者的参考手册。

2015-12-28

空空如也

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

TA关注的人

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