自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

游戏开发者

游戏研发技术分享,交流,学习

  • 博客(53)
  • 资源 (8)
  • 收藏
  • 关注

转载 王者荣耀和同步策略

王者荣耀和同步策略参数GC Alloc:每帧 1k左右,最好控制在200b unity版本:4.6 服务器同步帧频:15fps buffer缓存:0 不支持代码热更状态同步和帧同步:状态同步游戏:dota2,LoL, Fps游戏帧同步游戏:dota,王者荣耀, 星际争霸无帧同步buffer机制。buffer大小直接影响延迟和卡顿。tcp换成udp(分发顺序,丢包

2017-05-22 10:46:35 1184

转载 Eclipse开启代码自动提示功能

1、Eclipse  -> Window -> Perferences2、Java -> Editor -> Content Assist3、在右边最下面一栏找到 auto-Activation4、下面有三个选项,找到第二个“Auto activation triggers for Java:”选项 在其后的文本框中会看到一个“.”存在。这表示:只有

2017-02-07 11:18:51 494

转载 eclipse远程调试两种模式:

原文地址:http://blog.csdn.net/lishengc/article/details/6615826 eclipse远程调试两种模式:一、服务端监听(1)服务器端需执行程序前加参数  -Xdebug -Xrunjdwp:transport=dt_socket,server=y,suspend=y,address=8000   说明:server=

2017-02-07 11:10:52 367

转载 viPlugin是一个eclipse 针对vi的插件

viPlugin是一个eclipse 针对vi的插件,使用此插件可以让你在使用eclipse进行编码时使用几乎所有vi命令,可以极大的提高开发编码效率。 安装 点击你的eclipse中的 help --> Install New Software... --> Add..  --> 添加网址 http://www.viplugin.com 点击OK后,将搜索出的vi插件选项

2017-01-22 17:23:22 270

原创 Jni使用javah导出h文件,以及native函数不能导出的bug

2017-01-06 14:36:10 318

转载 ViSimulator for Notepad++

ViSimulator for Notepad++

2016-06-22 16:24:02 1077

原创 sizeof和_countof

sizeof() :返回所查询目标所占用字节数_countof() :返回所查询目标所含有元素个数int aryInt[10];size_t n = _countof(aryInt);结果n=10

2016-05-23 16:35:45 348

原创 MTU值会导致服务器往客户端发送消息包发送不过去,不断重发。然后客户端一直不接受任何数据。

外网linux服务器测试游戏过程中,点击排行榜,返回排行榜数据,偶发出现没有返回数据,之后一直不再返回数据。后来使用抓包工具,发现,服务器返回客户端的数据过大,会拆成最大1414的消息包,当前MUT=1454。这个时候很容易出现网络消息重发。然后一直发送不到客户端。出现上面的问题,客户端可以发送消息包到服务器,服务器处理后回发消息包,全部正常。但是客户端就是没有收到消息包的情况。后修改MT

2015-09-21 10:55:54 1299

原创 Q-Dir 文件夹工具

2015-06-03 11:22:29 750

转载 mysql 用户管理和权限设置

用户管理mysql>use mysql;查看mysql> select host,user,password from user ;创建mysql> create user  zx_root   IDENTIFIED by 'xxxxx';   //identified by 会将纯文本密码加密作为散列值存储修改mysql>rename  

2015-06-03 11:13:17 375

原创 编写c++服务

//服务程序主函数。#include "stdafx.h"#include "Windows.h"#include #include #define SZAPPNAME "serverSample" //服务程序名#define SZSERVICENAME "serviceSample" //标识服务的内部名//内部变量bool

2014-09-26 00:01:41 220

原创 _USE_32BIT_TIME_T 注意此宏

#define _USE_32BIT_TIME_T后,64位也会

2014-05-20 09:05:56 3512

转载 vs2010 使用STLport-5.2.1

下载后解压,假设目录为:D:\STLport,接下来就该编译它了:1.在开始菜单中找到VC 命令行工具,接下来切换到D:\STLport\STLport-5.2.1目录。2.可以运行configure –help看看编译选项,用MSVC编译器编译的话,输入以下命令:configure msvc9(configure msvc10 会显示 Unknown compiler:

2014-04-01 22:10:06 1084

原创 查看lib的导出函数列表

查看lib的导出函数列表dumpbin /all XXX.lib > a.txt导出lib的函数到a.txtdumpbin /all XXX.lib

2014-03-28 22:19:59 4690

转载 LNMP(linux+nginx+mysql+php)服务器环境配置

一、简介  Nginx是俄罗斯人编写的十分轻量级的HTTP服务器,Nginx,它的发音为 “engine X”, 是一个高性能的HTTP和反向代理服务器,同时也是一个IMAP/POP3/SMTP 代理服务器.Nginx是由俄罗斯人 Igor Sysoev为俄罗斯访问量第二的 Rambler.ru站点开发的,它已经在该站点运行超过三年了。Igor Sysoev在建立的项目时,使用基于BSD许可。

2014-03-07 14:37:52 912

原创 ansi、Unicode、Utf-8之间的转化

wstring ANSIToUnicode( const string& str ){ int len = 0; len = str.length(); int unicodeLen = ::MultiByteToWideChar( CP_ACP, 0, str.c_str(), -1, NULL, 0 ); wchar_t * pUnicode; pUnico

2014-02-12 21:30:22 852

原创 centos 下 boost1.55 编译和安装

解压tar zxvf ./boost_1_55_0.tar.bz2    进入目录后,执行./bootstrap.sh --with-libraries=system,filesystem,log,thread --with-toolset=gcc ./b2 toolset=gcc cxxflags="-std=c++11"  备注:上面红色字体的你

2014-01-31 17:23:33 9527 1

转载 linux 用yum安装软件和卸载软件

1.使用yum安装和卸载软件,有个前提是yum安装的软件包都是rpm格式的。    安装的命令是,yum install ~,yum会查询数据库,有无这一软件包,如果有,则检查其依赖冲突关系,如果没有依赖冲突,那么最好,下载安装;如果有,则会给出提示,询问是否要同时安装依赖,或删除冲突的包,你可以自己作出判断;        删除的命令是,yum remove ~,同安装一样,yum也会查

2014-01-28 19:43:43 691

转载 linux下使用yum安装mysql

linux下使用yum安装mysql 1、安装查看有没有安装过:          yum list installed mysql*          rpm -qa | grep mysql* 查看有没有安装包:          yum list mysql* 安装mysql客户端:          yum install mysql 安

2014-01-27 22:27:09 603

转载 linux下使用yum安装gcc的几点心得

如果服务器是自己的,并且机器就在身边,那什么都不用说了,缺少gcc顶多就是重新放入安装盘,把开发工具包安装上。但是如果是租的服务器,托管服务 方那帮人又搞不懂你说的啥子gcc,要安装gcc实在是太麻烦了。你得去找gcc相关的包,版本号还得必须对应上,否则不兼容。最近给一个朋友装gcc, 着实头疼了一把。后来发现yum这个好东西,只需要执行一个命令,所有的烦恼都解除了。      朋友的系统是C

2014-01-27 21:21:01 878

转载 使用 yum 命令安装本地安装QQ

有很多种情况适合进行本地安装,比如为了节省下载时间使用光盘中的软件包,或者以前已经下载好了某个 RPM 包……不过使用 yum 进行安装的最大优点还是 —— yum 会在自动检测并尽可能地为你解决软件包依赖性这个麻烦事 (讲到手动解决依赖性的时候,你就会知道它真的很麻烦了 :D)  这一节就以 QQ 为例,学习 yum 的本地安装功能吧。  首先到腾讯官方网站下载 QQ Linux 版的

2014-01-27 21:07:20 1242

转载 centos 6.2用yum安装中文输入法

centos 6.2用yum安装中文输入法 1.su root 2.yum install "@Chinese Support" 3.exit  www.2cto.com  4.回到桌面,system->preferences->input method 5.如果没有,先注销一下。 6.按照提示添加输入法。

2014-01-27 20:37:23 539

原创 1>Please define _WIN32_WINNT or _WIN32_WINDOWS appropriately. For example: 1>- add -D_WIN32_WINNT=0x

1>Please define _WIN32_WINNT or _WIN32_WINDOWS appropriately. For example:1>- add -D_WIN32_WINNT=0x0501 to the compiler command line; or1>- add _WIN32_WINNT=0x0501 to your project's Preprocessor Definitions.1>Assuming _WIN32_WINNT=0x0501 (i.e. Windows X

2014-01-25 12:15:00 5719

转载 ini更改文件夹图标

desktop.ini文件格式:[.ShellClassInfo]InfoTip=我的软件宝库IconFile=egg.icoIconIndex=0步骤:1.如我欲设置“软件备份”文件夹的图标,则将desktop.ini文件存放到该文件夹内;2.设置该文件夹的属性为"系统属性",修改后的效果会立即显示.

2013-12-30 14:52:42 1370

转载 C++笔记(1)explicit构造函数

按照默认规定,只有一个参数的构造函数也定义了一个隐式转换,将该构造函数对应数据类型的数据转换为该类对象,如下面所示:class String {String ( const char* p ); // 用C风格的字符串p作为初始化值//…}String s1 = “hello”; //OK 隐式转换,等价于String s1 = String(“hello”

2013-12-09 11:37:34 511

原创 c++内存池(简单)

简要说明基本原理:对申请的小块内存进行内存管理,每个管理队列仅管理当前打小的内存块。如果当前大小内存块不足,就访问进程堆分块一块大内存,默认4K,然后初始化完毕后,供申请者使用。本人将小内存块划分为16字节,32字节,48字节,64字节,80字节,96字节,112字节,128字节,144字节,160字节,176字节,192字节,208字节,224字节,240字节,256字节,如果分配以上大小的内存块,将从对应的管理类CMemoryPool分配内存块。大于256的内存块直接

2013-12-07 11:37:23 2331 1

转载 IOCP编程注意事项

http://blog.csdn.net/only_/article/details/85535281、每个连接同时最好只有一个待决的WSARecv。IOCP不保证多个待决WSARecv情况下先投递的WSARecv就一定会先得到完成通知。因此,多个待决WSARecv可能导致数据乱序,无谓增加代码复杂性。       2、投递0长度缓冲区的WSARecv可以不

2013-05-14 10:46:13 753

原创 谷歌协议google protobuf 内存泄露

c++中使用google protobuf在关闭应用程序之前需要调用google::protobuf::ShutdownProtobufLibrary();要不然会有内存泄露。

2013-04-08 09:00:12 4361 1

转载 返回模板类型

templateT D(unsigned int wD) { return D(wD); }// 获取数据 inttemplate{return *(int*)(m_pMemHead+wD);}// 获取数据 floattemplate{return *(float*)(m_pMemHead+wD);}// 获取数据 const char*

2013-03-30 23:52:27 289

转载 使用HSV比较RGB颜色相同 c++

HSV是指Hue(色相)、Saturation(饱和度)和Value(值或明度)。   HSV模型的三维表示从RGB立方体演化而来。设想从RGB沿立方体对角线的白色顶点向黑色顶点观察,就可以看到立方体的六边形外形。六边形边界表示色彩,水平轴表示纯度,明度沿垂直轴测量。 HSV六棱锥  H参数表示色彩信息,即所处的光谱颜色的位置。该参数用一角度量来表示,红、绿、蓝分别相隔120度

2013-03-28 22:16:39 868

原创 new 的运算符重载新用法

博客地址:http://www.52iocp.com本文地址:http://blog.csdn.net/hzdiy/article/details/8707924#include #include using namespace std;class A{public: A() { m_a = 1; m_b = 2; } A(int a, int b) {

2013-03-22 20:28:14 1197

原创 游戏服务器开发-- 角色数据进程间切换

这个周再游戏服务器中添加副本功能,但我们的服务器是多进程的服务器,玩家根据当前处于的地图不同,可能处于不同的地图服务器中,这个就面临一个问题是玩家再切换地图时可能要面临将玩家数据转移到其他的地图服务器中。之前对于跳转地图已经实现玩家数据的转移,实现思路如下:客户端请求跳转地图,将消息通过网关直接发送到对应的地图服务器,地图服务器判定玩家是否达到跳转地图的条件,可以跳转:判定跳转的目

2013-03-21 21:02:47 2545

原创 最快线程间数据交换算法,有效避免锁竞争 -- TwoQueues

请转帖本人文章时加入原文地址,谢谢。http://blog.csdn.net/hzdiy/article/details/8694642处理多线程数据共享问题注意的几个要点:1、锁竞争:尽量减少锁竞争的时间和次数。2、内存:尽量是使用已分配内存,减少内存分配和释放的次数。尽量是用连续内存,减少共享占用的内存量。多线程数据交换简单方案A:定义一个list,再所有操作l

2013-03-20 01:18:06 2404 2

原创 获取当前目录下的文件,目录 (封装)

本人正在开发一个简单的游戏服务器引擎,期间遇到载入文件夹下的所有lua文件,需要遍历目录和子目录获取所有的lua文件,运用到的是windows函数获取目录下的文件和目录,由于windows提供的函数为获取目录下的制定类型的文件,但不能获取子目录中的文件。本人进行一次函数封装,共提供3个基本函数:// 查找当前目录下的所有目录(不包括当前目录)void FindAllDir(const

2013-03-19 11:15:26 1670

原创 3D寻路算法,出现频繁拉回问题

角色行走频繁点击地面进行行走,会频繁出现客户端被拉回。拉回的原因是客户端的位置和服务器的位置出现偏差。服务器强制拉回客户端。经过持续半个月间断性的查找,终于找到原因是,因为int CCoordinatePath::GetCompletePath( DWORD dwNowTime ){// 无变速的移动距离计算DWORD dwMoveTime = dw

2013-03-18 09:05:36 1860 1

原创 3D服务器端以向量计算为主的角色位置的算法

3D服务器端玩家行走处理是服务器端根据客户端行走路径、玩家行走时间以及速度(包括变化速度)计算得出玩家的当前位置。由于客户端行走是一条路径,不使用2D中的格子计算算法,未能高效的获取角色的当前位置,运用玩家行走路径,行走速度,行走时间这些已量,进行计算玩家的当前精确位置。由于3D游戏中的点为xyz的空间点,所以牵连的计算为3维向量计算。空间两点距离计算公式为:

2013-03-18 09:03:42 2773 1

转载 vs2008中配置lua开发环境 (编译lua动态库,调用程序无法使用)

11.1 在http://www.lua.org/ftp/中下载lua-5.1.4.tar.gz1.2 新建静态库,不要勾选“Pre-Compiled Header”和“MFC Support”选项.1.3 将所有src中的所有 .c (lua.c除外)和 .h 文件加入到工程中1.4 点击“属性-c/c++-高级-编译为”,选择“编译为C++代码(/TP)”(这样才能是CPP调用

2012-09-25 16:43:39 2773

原创 游戏服务器之Timer计时器(定时器)动态链接库【超联网】

对于游戏服务器而言,计时器(每个多长时间触发一次)和定时器(定点触发)是不可或缺的一个组件。而计时器和定时器的做法又有很多种,我大致将其分成3中:1,非线程实现计时器和定时器;2,单线程实现计时器和定时器;3,多线程实现计时器和定时器;三种计时器的实现基本原理大致相同,运用时间戳GetTickCount()比较,Sleep等待,WaitForSingleObject等待。

2012-03-21 11:11:50 3881 2

转载 乔布斯教你如何面对恶评

“Your product sucks. (你的产品简直糟透了)”这是网络媒体创业者TristanLouis在1995年听完乔布斯介绍NeXT的新产品之后,对乔布斯说的话——没错,一天到晚说人家产品是“shit”的那位乔布斯。更重要的是乔布斯的反应。他不但没有生气,并且非常冷静的把这个对话转为一个互相学习的过程。首先,乔布斯陪着Louis一步步分析他为什么不满,

2012-03-15 11:50:26 518

原创 游戏服务器地图读取类

<br />内存对于服务器来说是一项重要的指标。重复地图读取对于服务器来说是一项严重的内存消耗。<br /> <br />优化处理:<br />1、地图数据类CMapData(具有MapID唯一标识),读取服务器会用到的每一张地图。用map进行管理。<br />2、地图数据管理类,对地图数据类进行管理。<br />3、地图对象类CMap(具有ID唯一标识),包含CMapData*指针,访问地图数据。坐标绑定或者地图分区管理放在此类。<br />4、地图管理类,对地图对象类进行管理。<br />5、玩家战斗与

2011-03-28 21:07:00 1044

visimulator for notepad++ 插件

visimulator for notepad++ 插件

2016-06-22

VanDyke.SecureCRT

VanDyke.SecureCRT, 远程linux的很棒的工具。很好用。很方便。

2015-06-04

Q-Dir 软件工具

Q-Dir 软件工具, 好用啊

2015-06-03

FileAndDirFinder 获取当前目录中的文件和目录(类的封装)

获取当前目录中的文件和目录(类的封装) 提供函数: // 查找当前目录下的所有目录(不包括当前目录) void FindAllDir(const char* pCurDir, vector<string>& vtDirs); // 查找当前目录下的所有文件(不包括子目录),制定查找文件类型,如:*.txt,*.lua,*.* void FindAllFile&#40;const char* pCurDir, const char* pFileType, vector<string>& vtFiles&#41;; // 查找当前目录下的所有文件(包括子目录),制定查找文件类型,如:*.txt,*.lua,*.* void FindAllFileE(const char* pCurDir, const char* pFileType, vector<string>& vtFiles);

2013-03-19

Windows 2003的SNMP服务独立安装包

此安装包不是EXE安装,是在控制面板里-添加删除程序-Windows组件向导--简单网络管理协议 的安装时,提示插入光盘时,将其指向此目录

2012-08-31

游戏服务器之Timer计时器(定时器)动态链接库

游戏服务器之Timer计时器(定时器)动态链接库

2012-03-21

爱护眼睛屏保(运用.net2003编辑)

长时间的在电脑前工作,不免会使眼睛疲劳。 《爱护眼睛》这个屏保程序可以缓解您眼睛的疲劳。 希望编程爱好者,在努力编程的同时也要保护好自己的眼睛喔!!! 运用.net编辑的一个屏保程序,保护视力。 长时间的在电脑前工作时间长了对眼睛有很大的损害。 每隔一段时间,看看这个屏保对你的眼睛有很大的好处喔。

2008-12-24

滚球屏保(VB6.0).rar

滚球屏保的源代码,此程序时用Visual Basic 6.0编写,你可以修改源代码制作一个属于自己的程序。

2008-12-10

空空如也

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

TA关注的人

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