代码改变世界

随笔分类 -  C#

Unity 如何高效的解析数据

2018-10-01 00:15 by wuzhang, 2506 阅读, 收藏, 编辑
摘要: 昨天和朋友聊天时,他遇到这么一个问题:现在有按照一定格式的数据,例如:#code==text 此处是注释100==确定101==取消key==value 这么个格式的,说白了就是怎样解析这些固定格式字符串的Key和Value而已。他们项目已经做过了数据的解析,现在他在做项目优化,发现这一块数据解析部 阅读全文

如何简单的实现新手引导之UGUI篇

2017-07-01 22:37 by wuzhang, 3781 阅读, 收藏, 编辑
摘要: 一个完整的游戏项目肯定是要做新手引导的,而引导做的好坏可能会影响玩家的留存。那么怎么简单的实现个简有效的引导呢!先不说废话,先看看效果,这是一个基于UGUI做的一个简单的引导! 怎么样,看着是那么回事吧?看起来确实有点丑,如果给按钮边缘加上缩放或者流光特效,那么逼格瞬间就上去了,可惜,没找到资源。最 阅读全文

Unity用户自定义圆角头像

2016-11-20 05:03 by wuzhang, 3264 阅读, 收藏, 编辑
摘要: 前天朋友遇到一个这样的需求,而且比较棘手让我帮忙解决。需求就是棋牌类的游戏,玩家的个人资料中包括自己的头像而且可以浏览相册中的图片或者使用相机拍照设置。关于这个问题我也查阅一些资料,由于涉及安卓部分知识,首先要了解Unity和安卓是如何通信的。 首先看到的是雨松老师的博客:http://www.xu 阅读全文

Unity 对象池的使用

2016-08-07 02:09 by wuzhang, 6846 阅读, 收藏, 编辑
摘要: 在游戏开发过程中,我们经常会遇到游戏发布后,测试时玩着玩着明显的感觉到有卡顿现象。出现这种现象的有两个原因:一是游戏优化的不够好或者游戏逻辑本身设计的就有问题,二是手机硬件不行。好吧,对于作为程序员的我们只能从第一个原因着手了,那就开始对着Profiler看性能开销,接下来就开始做各种内存,特效,代 阅读全文

简明的观察者模式

2016-06-26 14:12 by wuzhang, 504 阅读, 收藏, 编辑
摘要: 什么是观察者模式? 观察者模式(有时又被称为发布(publish )-订阅(Subscribe)模式、模型-视图(View)模式、源-收听者(Listener)模式或从属者模式)是软件设计模式的一种。在此种模式中,一个目标物件管理所有相依于它的观察者物件,并且在它本身的状态改变时主动发出通知。这通常 阅读全文

C# 异步和委托学习

2016-03-13 20:36 by wuzhang, 1373 阅读, 收藏, 编辑
摘要: IAsyncResult是接口: IAsyncResult 异步设计模式通过名为 BeginOperationName 和 EndOperationName 的两个方法来实现原同步方法的异步调用,如 FileStream 类提供了 BeginRead 和 EndRead 方法来从文件异步读取字节,它 阅读全文

C# 初识Ref和Out

2016-03-13 17:50 by wuzhang, 508 阅读, 收藏, 编辑
摘要: 首先:两者都是按地址传递的,使用后都将改变原来参数的数值。 其次:ref可以把参数的数值传递进函数,但是out是要把参数清空,就是说你无法把一个数值从out传递进去的,out进去后,参数的数值为空,所以你必须初始化一次。这个就是两个的区别,或者说就像有的网友说的,ref是有进有出,out是只出不进。 阅读全文

Unity 3D 动画帧事件

2015-11-14 16:55 by wuzhang, 14699 阅读, 收藏, 编辑
摘要: 前几天在项目开发中碰到一个这样的需求,RPG游戏中,特效和动画播放不同步的。假如主角在攻击NPC时,先实例化特效,后播放动画。动画毕竟是有一个时间长度的。等到动画播放攻击挥刀的那一瞬间时,特效可能早就播放完了。于是就想着在动画播放到某一帧的时刻才实例化特效,这样就解决了动画与特效不同步的问题。首... 阅读全文

Unity 图片的灰度处理

2015-11-07 17:06 by wuzhang, 5110 阅读, 收藏, 编辑
摘要: 我们平时在做项目时,经常遇到按钮的点击而且还要区分悬浮,点击,禁用的状态,美术要针对一张图片做多个状态图片,资源图片的数量也就增大了,那么打出的包的大小也就跟着上去了,所以我们可以针对原始图片进行Shader处理,得到我们想要的效果!实现原理:Unity3d中所有的渲染都是基于Shader的,而... 阅读全文

Unity 定时开启/关闭外部应用

2015-10-31 15:09 by wuzhang, 3850 阅读, 收藏, 编辑
摘要: 自从加入工作的队伍里,博客都荒废了,今天周末,难得清静,写篇博客!刚才看到了Process类,随手写了个小demo.给大家分享下!首先大家要对Process类有一些简单的了解,参考资料:https://msdn.microsoft.com/zh-cn/library/system.diagnos... 阅读全文

C# 事件

2015-08-15 17:07 by wuzhang, 368 阅读, 收藏, 编辑
摘要: 事件和委托极为的相似。其实,事件就好像被简化的针对特殊用途的委托。1,发布者定义时间成员。2,订阅者注册在事件成员被触发时要调用的方法。3,当发布者触发事件时,所有列表注册的事件都将被调用。下面我们来看一个简单的例子:EventHandler是.Net BCL使用预定义的用于标准时间的委托,publ... 阅读全文

Unity 启动画面淡入淡出

2015-05-24 14:35 by wuzhang, 9196 阅读, 收藏, 编辑
摘要: 前几天在玩我叫MT 2游戏的时候发现打开他们应用的时候发现他们Logo淡入淡出的效果做的挺好的,例如第一张是运营商腾讯的logo第二张是他们公司的游戏logo。我们也来模仿一下:第一张图片:运营商的这是第二张图片,游戏公司自己的。1,新建测试工程。 脚本文件SplashScreen.cs u... 阅读全文

Unity 切割导出精灵

2015-05-15 17:18 by wuzhang, 1286 阅读, 收藏, 编辑
摘要: Unity中经常使用到精灵,尤其是2D游戏中制作动画等!今天我们就学习下精灵的切割和导出吧!废话不多说,先建议空的工程。1,打开Unity建工程。2 导入素材进行资源分类,工程不在于大小,这是我们对待它的态度!3.开始分割精灵,三步走!编辑精灵.开始分割精灵Apply一下,看下分割的精灵,0-9... 阅读全文

Unity 读取CSV与Excel

2015-05-11 16:54 by wuzhang, 16183 阅读, 收藏, 编辑
摘要: unity csv Excel 阅读全文

Unity 之圆环算法

2015-04-10 19:57 by wuzhang, 9091 阅读, 收藏, 编辑
摘要: 首先我们要明白圆环生成的原理,其实说白了并不是圆环,而是圆。因为我们使用的预制物体时Cube(物体本身是有大小的)难免会有发生实物的折叠看起来给人的感觉是圆环而已。1.1 几何中我们要画一个圆,因为圆的标准表达式是 圆心为(a,b),半径为r。那么我们只要知道圆心和半径就可以了。 2.1 我们... 阅读全文

Unity 梯子生成算法

2015-04-09 19:09 by wuzhang, 1432 阅读, 收藏, 编辑
摘要: Unity之生成梯子算法的实现。1.通过预制物体动态生成角度可设置的梯子形状。 1.1 主要涉及到的数学知识点,角度与弧度的转化。 弧度=角度乘以π后再除以180 角度=弧度除以π再乘以180 1.2 三角函数 在这里只使用正切函数tan,简单的推理逻辑如下: ... 阅读全文

Unity之极光推送

2015-04-01 17:38 by wuzhang, 4992 阅读, 收藏, 编辑
摘要: Android应用中大多数应用使用了推送,游戏中当然也可以使用推送!下面在Unity3D做个测试!(下面是客套话,大家可以忽略)1.1 什么是推送技术? 推送技术,又名反向AJAX,指的是一种基于Internet,将由中心或发布者发出消息传输给用户的技术。与之相对的是拉取,这种情况下请求是由用... 阅读全文

Unity uGUI 登录及注册功能

2014-12-04 21:17 by wuzhang, 16041 阅读, 收藏, 编辑
摘要: 上次我们已经完成了登录界面的模拟功能,今天咱们把上次没做完的继续完善下!那么废话少说直接开始吧!PS:本次完善的功能有: 1,增加对数据库的操作。 2,使用了MD5Key值加密 3,完善登录和组测功能 4,环境Win8.1+Unity4.6+mysql1,咱们就接着上次的工程继续吧,所以就不再... 阅读全文

Unity 4.6 uGUI的点击事件

2014-12-01 17:46 by wuzhang, 6271 阅读, 收藏, 编辑
摘要: Unity uGUI 点击事件 阅读全文

C# 数据的序列化存取

2014-11-22 14:58 by wuzhang, 3820 阅读, 收藏, 编辑
摘要: 1,什么是序列化? 序列化 (Serialization)将对象的状态信息转换为可以存储或传输的形式的过程。在序列化期间,对象将其当前状态写入到临时或持久性存储区。以后,可以通过从存储区中读取或反序列化对象的状态,重新创建该对象。序列化使其他代码可以查看或修改那些不序列化便无法访问的对象实例数据。... 阅读全文