- 浏览: 224445 次
- 性别:
- 来自: 上海
-
最新评论
文章列表
RudpSocket
- 博客分类:
- linux网络编程
RudpSocket:
using System;
using System.Collections.Generic;
using System.Linq;
using System.Net;
using System.Net.Sockets;
using System.Text;
namespace RGame.Rudp
{
/// <summary>
/// 可靠UDP的封装
/// 1.连接:客户端会持续发送包给服务器,服务器收到后发送一个conv过来,conv为客户端在服务器的唯一标识,5s内没有收到触发超时
// ...
KCP:
using System;
using System.Collections.Generic;
using System.IO;
using System.Linq;
using System.Text;
public class KCP
{
#region 常量
public const int IKCP_RTO_NDL = 30; // rto: 无延时模式下最小超时重传时间 no delay min rto
public const int IKCP_RTO_MIN = 100; // ...
U3D的navmesh寻路
- 博客分类:
- U3D
寻路大致分三种:A*(格子),waypoint(路点),navmesh(网格)寻路。这三种寻路各有优劣,这里要说的是navmesh,navmesh是比前面两种要新的寻路算法,同时也是U3D官方提供的算法。
http://www.unitymanual.com/thread-611-1-1.html
http://www. ...
Unity3D的uGUI系统的将UI可能触发的事件分为12个类型,即EventTriggerType枚举的12个值。如下图所示:
先以PointerClick为例。这个是用于某点点击事件。其他事件都可以根据相同的办法调用。
之所以使用PointerClick为例。 ...
CSLight 初探
- 博客分类:
- U3D
CSLight 是业内比较厉害的一个人(李剑英)写出来用于对U3D脚本进行热更新的开源项目,从他的一系列博客文章可以看出,他是一个很有想法的人,尤其是在U3D脚本热更新和资源热加载这块有自己的观点。相比ulua我个人还是倾向于CSLight毕竟一个项目里面存在好几种语法规则在维护上是一件很麻烦的事,这两种脚本有人做过测评效率上差不多。
1.脚本:
什么是脚本?它的体现形式是一段字符串,然后被一个宿主环境解释执行,例如js在v8里面解释执行,所以js对于v8来说就是脚本。广义上来说,所有的语言都是脚本,而它们的宿主环境就是计算机硬件。无论是解释执行还是编译执行,对于它们的宿主环境来说, ...
AssetBundles
- 博客分类:
- U3D
AssetBundles:可以说是U3D必须掌握的东西,它使动态管理资源成为可能,即可以在场景加载后动态的对场景中的资源进行加载,又可以版本的动态发布远程资源下载。
选择将Prefab导出而不是其它的组件对象,可以减少动态创建和绑定对象的过程,因为Prefab直接加载实例化就行了。服务器上提供每个场景的Assetbundle ,和公用模型的Assetbundle。
http://www.xuanyusong.com/archives/2373
http://www.xuanyusong.com/?p=2405&preview=true
1.AssetBundles资源 ...
MongoDB sql操作
- 博客分类:
- linux网络编程
来源自网络:
http://www.cnblogs.com/stephen-liu74/archive/2012/08/03/2553803.html
1. 基本查询: 构造查询数据。 > db.test.findOne() { "_id" : ObjectId("4fd58ecbb9ac507e96276f1a"), "name" : "stephen", "age" : 35, "g ...
Mongoose API使用
- 博客分类:
- linux网络编程
http://mongoosejs.com/docs/api.html
Schemas:可以理解为一个类,这个类是对数据库里面存储的结构的一个映射,除了描述以为你也可以为它定义操作。
1.创建:
var mongoose = require('mongoose');
var Schema = mongoose.Schema;
var blogSchema = new Schema({
title: String,
author: String,
body: String,
comments: [{ body: String, date: D ...
在wow lol 11平台等游戏中,都采用了一种排名算法,这种算法叫ELO,是一个叫ELO的人发明的,最开始用于国际象棋比赛计分。
R'a = Ra + K(Sa-Ea)
对于A来说,初始Rank值为Ra,一局结束后为 R'a。这里关键是K,Sa,Ea这三个参数。
...
node.js Buffer
- 博客分类:
- linux网络编程
在js中基础类型没有二进制byte类型,但是js提供了ArrayBuffer群来处理各种二进制的存储,而node.js也为我们封装了一个用于存储二进制的通用Buffer类,这里说说Buffer。
1.Buffer构造:
function Buffer(subject, encoding, offset) {
if (!(this instanceof Buffer)) {
return new Buffer(subject, encoding, offset);
}
var type;
// Are we slicing?
if (ty ...
Connection是数据库连接对象,专门负责连接的。node-mongodb-native是数据库驱动,
driver = global.MONGOOSE_DRIVER_PATH || './drivers/node-mongodb-native'
Collection = require(driver + '/collection')
如果没有设置全局的驱动路径,它是会提供一个自带的驱动的。Connection里面维护了一个驱动的连接,最终指向的是node.js里的一个mongodb模块,是它去真正跟mongodb数据库服务器建立联系的。
对于整个Connection类来说,主 ...
在node.js中有个专门处理与数据库连接操作的模块mongodb,由于这个模块只是对mongodb的操作做了一层浅封装,用起来不是很好用。如是出现了一个开源的第三方模块mongoose,mongoose是建立在mongodb基础之上的一个比mongodb更好用的模块。
Mongoose是mongoose模块的入口类,它做了以下几件事情:
1.暴露内部模块,其实就是把它内部的很多模块集中起来,而Mongoose类作为外部访问它内部模块的统一接口。
2.创建连接并把所有的连接都放到一个connections集合里面。
3.定义模型并放到models集合里面,模型是mongoose操作数据 ...
概述:
VMWare提供了三种工作模式,它们是bridged(桥接模式)、NAT(网络地址转换模式)和host-only(主机模式)。要想在网络管理和维护中合理应用它们,你就应该先了解一下这三种工作模式。
1.bridged(桥接模式)
在这种模式下,VM ...
mongodb 集群搭建
- 博客分类:
- linux网络编程
数据库集群应该能算的上是数据库服务器的终极解决方案,在降低一定的读取效率的同时,满足了负载和冗余和扩展等多方面的需求,也是当今服务器端的必修课。mongodb在这方面提供了很好的解决方案,简化了使用者的工作量 ...