自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

转载 kafka入门:简介、使用场景、设计原理、主要配置及集群搭建(转)

问题导读:1.zookeeper在kafka的作用是什么?2.kafka中几乎不允许对消息进行“随机读写”的原因是什么?3.kafka集群consumer和producer状态信息是如何保存的?4.partitions设计的目的的根本原因是什么?一、入门    1、简介    Kafka is a distributed,partitioned,replicated c...

2018-08-26 11:44:03 169

转载 Redis中7种集合类型应用场景

Redis中7种集合类型应用场景-----------------------------------------------------------------------------------------StringsStrings 数据结构是简单的key-value类型,value其实不仅是String,也可以是数字。使用Strings类型,你可以完全实现目前 Memcached 的功能,...

2018-07-03 18:57:32 1208

转载 Redis快速入门

Redis是一个开源,高级的键值存储和一个适用的解决方案,用于构建高性能,可扩展的Web应用程序。Redis有三个主要特点,使它优越于其它键值数据存储系统 -Redis将其数据库完全保存在内存中,仅使用磁盘进行持久化。与其它键值数据存储相比,Redis有一组相对丰富的数据类型。Redis可以将数据复制到任意数量的从机中。Redis官方网网站是:http://www.redis.io/ ,如下:Re...

2018-07-03 17:34:12 179

转载 kafka入门:简介、使用场景、设计原理、主要配置及集群搭建

问题导读:1.zookeeper在kafka的作用是什么?2.kafka中几乎不允许对消息进行“随机读写”的原因是什么?3.kafka集群consumer和producer状态信息是如何保存的?4.partitions设计的目的的根本原因是什么?一、入门    1、简介    Kafka is a distributed,partitioned,replicated commit logservi...

2018-07-02 16:08:29 140

转载 以太坊的工作原理, 干货

简介不管你们知不知道以太坊(Ethereum blockchain)是什么,但是你们大概都听说过以太坊。最近在新闻里出现过很多次,包括一些专业杂志的封面,但是如果你们对以太坊到底是什么没有一个基本的了解的话,看这些文章就会感觉跟看天书一样。 所以,什么是以太坊?本质上,就是一个保存数字交易永久记录的公共数据库。重要的是,这个数据库不需要任何中央权威机构来维持和保护它。相反的它以一个“无信任”的交易...

2018-05-17 07:11:33 336

转载 Socket/TCP粘包、多包和少包, 断包

为什么TCP 会粘包   前几天,调试mina的TCP通信, 第一个协议包解析正常,第二个数据包不完整。为什么会这样吗,我们用mina这样通信框架,还会出现这种问题? 带者问题,我们先分析一下问题。  提到通信, 我们面临都通信协议,数据协议的选择。 通信协议我们可选择TCP/UDP:TCP(transport control protocol,传输控制协议)是面向连接的,面向流的,提供高可靠性服...

2018-05-09 09:59:21 715

转载 TCP和UDP的区别

TCP UDPTCP与UDP基本区别  1.基于连接与无连接  2.TCP要求系统资源较多,UDP较少;   3.UDP程序结构较简单   4.流模式(TCP)与数据报模式(UDP);   5.TCP保证数据正确性,UDP可能丢包   6.TCP保证数据顺序,UDP不保证   UDP应用场景:  1.面向数据报方式  2.网络数据大多为短消息   3.拥有大量Client  4.对数据安全性无特殊...

2018-05-09 09:38:32 201

转载 HTTP与TCP的区别和联系

   相信不少初学手机联网开发的朋友都想知道Http与Socket连接究竟有什么区别,希望通过自己的浅显理解能对初学者有所帮助。一、基本概念1、TCP连接      手机能够使用联网功能是因为手机底层实现了TCP/IP协议,可以使手机终端通过无线网络建立TCP连接。TCP协议可以对上层网络提供接口,使上层网络数据的传输建立在“无差别”的网络之上。     建立起一个TCP连接需要经过“三次握手”:...

2018-05-09 09:19:19 248

转载 关联、组合、聚合、依赖关系比较

类之间的关系1. 种类: Generalization(泛化),Dependency(依赖关系)、Association(关联关系)、Aggregation(聚合关系)、Composition(合成关系)。2.  其中Aggregation(聚合关系)、Composition(合成关系)属于Association(关联关系),是特殊的Association关联关系。3.  Genera

2017-11-10 11:10:56 364

转载 NGUI之UIRoot屏幕分辨率自适应

NGUI在Unity3D游戏开发中非常常用,而NGUI对于每一个UI场景,都是以一个UIRoot为UI游戏对象树的根的,那么这个UIRoot是起什么作用的呢?先简单看一下UIRoot中的基本属性UIRoot游戏对象的属性只有4个,分别是缩放规则,手动高度,最小高度和最大高度而正是这4个属性,将影响整个UI场景中整体的缩放比例,当设置好这4个属性之后,UIRoot游戏

2017-07-19 10:13:35 679

转载 NGUI内核大剖析(一) UIRect

UIRect是UIPanel和UIWidget的基类,研究好前者,才能更方便的研究后两者,所以我将它做为本系列的第一篇。(注:本系列讨论的NGUI版本为3.10.0)首先要知道的一点是,UIRect是一个abstract class,也就是抽象类,它不能被实例化。它为UIPanel和UIWidget提供了一些公用的方法,这些方法通过AnchorPoint设置后两者的矩形区域。

2017-06-19 17:40:20 601

转载 unity 资源加载框架设计

本篇文章主要介绍了"unity 资源加载框架设计",主要涉及到unity 资源加载框架设计方面的内容,对于unity 资源加载框架设计感兴趣的同学可以参考一下。目的便于增量更新功能的实现降低安装包大小,unity不支持过滤掉Resources目录中不用的文件。用AB包的方式加快资源文件的读取速度生成asset bundle文件基本流程如下图所

2017-05-09 10:57:38 1663

转载 使用SOCKET实现TCP/IP协议的通讯

一、原理:     首先要理解基本的原理,2台电脑间实现TCP通讯,首先要建立起连接,在这里要提到服务器端与客户端,两个的区别通俗讲就是主动与被动的关系,两个人对话,肯定是先有人先发起会话,要不然谁都不讲,谈什么话题,呵呵!一样,TCPIP下建立连接首先要有一个服务器,它是被动的,它只能等待别人跟它建立连接,自己不会去主动连接,那客户端如何去连接它呢,这里提到2个东西,IP地址和端口号,通

2017-05-06 17:01:55 944

转载 socket通信简介

游戏一般是基于强联网的,服务端与客户端时时都在进行信息的交互,故多采用socket进行服务端与客户端的通信,今天我们了解一下C# 的socket知识。1、什么是Socketsocket 实际上是网络通信端点的一种抽象,它提供了一种发送和接收数据的机制。网络通信,归根结底是网络端点间的通信,通过socket,用户所开发的应用程序可以通过网络与其他socket应用程序通信。从技术观点看,也

2017-05-06 17:00:58 817

转载 Unity3D —— protobuf网络框架

前言:        protobuf是google的一个开源项目,主要的用途是:1.数据存储(序列化和反序列化),这个功能类似xml和json等;2.制作网络通信协议;一、资源下载:1.github源码地址:https://github.com/mgravell/protobuf-net2.google项目源码下载地址(访问需翻墙):h

2017-05-06 16:59:45 1903

转载 C#常用IO流与读写文件

C# 常用 IO 流与读写文件1. 文件系统 .................................................................................... 2(1) 文件系统类的介绍 ............................................................ 2(2)

2017-04-01 11:17:06 4379

转载 文件与IO

在.NET框架中进行的所有IO操作都要用到流(Stream)。System.IO命名空间中包含许多IO相关的类,C#文件读写的类几乎都在其中,下面对其进行详细介绍。主要类列表:类说明BinaryReader用特定编码将基元数据读作二进制值。BinaryWriter以二进制形式将基元类型写入流,并支持用特

2017-03-31 20:19:24 451

转载 NGUI的事件通知架构和源码剖析--UICamera

NGUI的事件通知架构和源码剖析作者:leoleocsNGUI的事件通知其实是由一个脚本UICamera来实现的,脚本的命名不是太好,其基本的原理很简单,在Update函数中检测用户输入,然后根据自己的策略分发到具体的物体。其定义了一些基本的通知回调函数,你可以查看具体的注释:/// * OnHover (isOver) is sent when the mouse hov

2017-03-24 19:26:31 694

转载 UIEventListener是如何工作的及其他

开篇闲谈关于标题里为什么带了个其他。因为UIEventListener的功能实现离不开其他功能的支持,然后这篇博客会通过UIEventListener来讲讲NGUI和Unity里的一些东西,东西比较杂就叫做其他吧 ,本篇使用的NGUI版本是3.7.5,老版的未知,新版的应该原理类似。关于UIEventListener首先UIEventListener是什么,以及是干嘛用的,

2017-03-24 15:12:11 473

转载 Unity iOS打开AppStore评星页面,浅谈Application.OpenURL()方法。

Unity iOS打开AppStore评星页面,浅谈Application.OpenURL()方法。Posted in  Unity on August 6, 2013Comments: 暂无评论太简单了。我们知道iOS里有个URL Scheme的东西(这个我还没深究,希望有大神帮我贴个教程,十分感谢~另外Android也有),可以通过打开一个URL来进入iOS的某些应用。比如

2017-03-22 13:41:49 1726

转载 app跳转到app store评分界面

ios-app跳转到appStore评分app跳转到app store评分界面        最近应用中要添加app评分功能,在网上查了一下应用怎么直接跳转到app store评分地址,发现大部分文章说的都是以前的方式,评分地址已经被苹果修改了,因此记录一下现在的方式,防止自己以后又忘了。跳转到AppStore评分,有两种方法:一种是跳出应用,跳转到

2017-03-22 13:40:26 2077

转载 全面理解Unity加载和内存管理机制之二:进一步深入和细节

Unity几种动态加载Prefab方式的差异:其实存在3种加载prefab的方式:一是静态引用,建一个public的变量,在Inspector里把prefab拉上去,用的时候instantiate二是Resource.Load,Load以后instantiate三是AssetBundle.Load,Load以后instantiate三种方式有细节差异,前两种方式,引用对象tex

2017-03-01 09:18:58 455

转载 全面理解Unity加载和内存管理

最近一直在和这些内容纠缠,把心得和大家共享一下:Unity里有两种动态加载机制:一是Resources.Load,一是通过AssetBundle,其实两者本质上我理解没有什么区别。Resources.Load就是从一个缺省打进程序包里的AssetBundle里加载资源,而一般AssetBundle文件需要你自己创建,运行时动态加载,可以指定路径和来源的。其实场景里所有静态的对象也有

2017-02-28 14:21:21 321

转载 Unity3D使用经验总结 编辑器扩展篇

一个引擎,最重要的就是工具,工具除了提升开发速度,提供可视化操作环境以外,还带了容错功能。 它使得大家的工作局限在一定的范围内,比如一个变量的配置,或者是一些类型的选择。 使用编辑器,使得既使不太明白的人,也能快速找到方法。如果是采用手工配置的话,那每一个东西需具备相当完善的文档,文件加载时,得提供高强度的错误效验和错误提示功能。 否则很容易陷入困境。UNITY3D的IDE本身的强大,除了

2017-02-27 11:49:20 391 1

转载 Unity教程之-Unity Attribute的使用总结

举两个例子,在变量上使用[SerializeFiled]属性,可以强制让变量进行序列化,可以在Unity的Editor上进行赋值。在Class上使用[RequireComponent]属性,就会在Class的GameObject上自动追加所需的Component。以下是Unity官网文档中找到的所有Attribute,下面将按照顺序,逐个对这些Attribute进行说明和小的测试。

2017-02-27 11:38:34 688

转载 NGUI 渲染流程深入研究 (UIDrawCall UIGeometry UIPanel UIWidget)

NGUI 渲染流程深入研究 (UIDrawCall UIGeometry UIPanel UIWidget) 上图是一个简要的NGUI的图形工作流程,UIGeometry被UIWidget实例化之后,通过UIWidget的子类,也就是UISprit,UILabel等,在OnFill()函数里算出所需的Geometry缓存(顶点数,UV,Color,法线,切线)。PS:之所以要生成这

2017-02-22 17:11:16 610

转载 Unity中的dataPath,streamingAssetsPath,persistentDataPath,temporaryCachePath在不同平台下的路径

dataPath :返回程序的数据文件所在的文件夹的路径(只读)。返回路径为相对路径,一般是相对于程序安装目录的位置。不同游戏平台的数据文件保存路径不同。StreamingAssetsPath: 此属性用于返回数据流的缓存目录,返回路径为相对路径,适合设置一些外部数据文件的路径。(只读)PersistentDataPath:返回一个持久化数据存储目录的路径(只读),可以在此路径下存储一

2017-02-21 19:35:47 2210

转载 Unity资源热更之AssetBundle(3)———新版本AssetBundle

————尊重原创,转载请注明出处,谢谢!!!!http://blog.csdn.net/y1196645376/article/details/52602002之前我们介绍了老版本的AssetBundle,在文章最后我们提到了在生成AB包的时候同时生成依赖关系信息文件。这样加载的时候就能够自动加载所有依赖项。而新版的AssetBundle正是采用的这样的方式。下面我来介

2017-02-21 14:26:52 561

转载 Unity资源热更之AssetBundle(2)———旧版本AssetBundle

尊重原创,转载请注明出处,谢谢! http://blog.csdn.net/y1196645376/article/details/52567171这篇文章主要讲的是旧版的AssetBundle打包一系列方案。1.API介绍:a.BuildPipeline.BuildAssetBundle :打包常规资源生成AssetBundle.

2017-02-21 14:25:59 628

转载 Unity资源热更之AssetBundle(1)———基本介绍

1.AssetBundle是什么呢?AssetBundles 是有 Unity 编辑器在编辑环境中(enit-time)创建的一些列的文件,这些文件可以被用在项目的运行环境中(run-time)。 AssetBundles 可以包括的资源文件有模型文件(models)、材质(materials)、纹理(textures)和场景(scenes)。AssetBundles

2017-02-21 14:25:15 609

转载 Unity内存优化

1.代码层面1.foreachMono下的foreach使用需谨慎,频繁调用容易触及堆上限,导致GC过早触发,出现卡顿现象。特别注意的是在Update中如果非必要,不要使用foreach。尽量可能用for代替foreach.会产生GC Alloc,说明foreach调用GetEnumerator()时候会有堆内存上的操作,new 和dispose。2

2017-02-21 14:23:56 383

转载 NGUI所见即所得之UIRoot

NGUI所见即所得之UIRoot                UIRoot是NGUI最根本和最重要的脚本,在实际UI开发过程中都是以UIRoot为根的GameObject树,那他的作用到底是什么,先看下UIRoot的Inspection选项:看到这个,大致可以猜到是跟UI界面缩放有关的,而且是基于高度放缩的。 Scaling Style参数 

2017-02-06 17:42:31 369

转载 NGUI所见即所得之UIWidget , UIGeometry & UIDrawCall

NGUI所见即所得之UIWidget , UIGeometry & UIDrawCall        UIWidget是所有UI组件的抽象基类,作为基类当然定义了必须的成员变量和函数,接触过MFC或其他UI组件开发,想必都知道有一堆参数设置,尤其是Visual Studio的可视化界面,简直太丰富了,UIWidget要当UI组件的爹就必须得具备这些,下面就一一介绍: 

2017-02-06 17:41:54 600

转载 NGUI所见即所得之UIAtlasMaker , UIAtlas

NGUI所见即所得之UIAtlasMaker , UIAtlas         本文的重点就是要将NGUI把多张图片打成一个图集(Atlas)的原理和过程研究下,学习下Unity提供的api和NGUI写的功能以及设计思想。 UIAtlas       在介绍UIAtlasMaker之前先看下,先看下UIAtlasMaker的产物——UIAtlas,在创建S

2017-02-06 17:41:09 598

转载 NGUI所见即所得之UIFont , UIFontMaker

NGUI所见即所得之UIFont , UIFontMaker        在上一篇博客介绍了UIAtlas的结构和UIAtlasMaker生成Atlas的原理(NGUI所见即所得之UIAtlasMaker , UIAtlas),按照介绍UIAtlas的行为脉络,应该先对UIFont进行介绍,但是发现UIFont这个脚本特别长有点被吓到了,这主要是因为之前都没有怎么用过UIFontMake

2017-02-06 17:40:22 786

转载 NGUI所见即所得之UISprite & UILabel

NGUI所见即所得之UISprite & UILabel        UISprite UILabel是NGUI最基础的组件,是UIWidget的子类,之前写过NGUI所见即所得之UIWidget , UIGeometry & UIDrawCall UIWidget,UIGeometry & UIDrawCall是NGUI的UI组件绘制的底层实现,UISprite,UILabel就把要绘

2017-02-06 17:39:13 558

转载 NGUI所见即所得之UICamera

NGUI所见即所得之UICamera        UI,除了界面的显示,还有一个重要的元素:事件响应。MoneBehaviour提供一些事件提供了一些函数接口(OnMouseUp,OnMouseDown等),只要MonBehaviour的子类实现这相应的方法以及方法执行的条件达到,Unity底层就会分发调用执行这个函数。一般地,UI事件响应处理机制会有4个基本元素: 

2017-02-06 17:38:02 640

转载 NGUI所见即所得之UIPanel

NGUI所见即所得之UIPanel              之前在NGUI所见即所得之UIWidget , UIGeometry & UIDrawCall 文中就这样用过这样的一个例子:                 UIGeometry好比为煮菜准备食材,UIDrawCall好比是煮菜的工具(锅,炉子等),UIPanel就是大厨了决定着什么时候该煮菜,UIWi

2017-02-06 17:36:35 514

转载 NGUI所见即所得之UIAnchor & UIStretch

NGUI所见即所得之UIAnchor & UIStretch       NGUI的Example/Scenes/Example1介绍的主要就是UIRoot,UIAnchor和UIStretch这三个脚本,当然UIRoot是每个UI都会有的(挂在根节点),之前D.S.Qiu也写过博客介绍过UIRoot(猛点查看)。一直都对NGUI把Unity的单位和像素的转换和统一都很有疑惑,因之手游项目

2017-02-06 17:34:19 738

转载 TextFx——Ease Function(缓动函数)

TextFx——Ease Function(缓动函数)         By D.S.Qiu尊重他人的劳动,支持原创,转载请注明出处:http://dsqiu.iteye.com              之前有介绍过UITweener(点击前往),NGUI用了一个目录“收集”Tween脚本,集成的功能还是很丰富的,只提供了6种缓动函

2017-02-06 17:23:58 1317

空空如也

空空如也

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

TA关注的人

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