
游戏开发漫淡
文章平均质量分 94
以游戏开发、游戏设计为中心,叙述相关经验及原理的一个专业博客专栏
老友小明哥
星星之火,照亮你路
展开
-
游戏中的随机--转换思维
文章中的标题是“游戏中的随机--转换思维”,有一个关键词是“随机”;但是随机这个说法过于笼统,因此我主要说一个具体化实例:随机坐标。随机坐标在游戏中相当常见,例如掉落、怪物生成、采集生成或者是一些活动中的藏宝地点。随机出一个坐标不难。那随机出一个不重复的坐标呢?其实也不难!还能好好说话吗?就是要讲述如何做出一个高效及简洁的随机坐标模块!我知道相当一部分人设计随机坐标模块的思原创 2015-04-15 13:30:44 · 1920 阅读 · 1 评论 -
序列化的作用
前言:本文以C++语言作为讲解序列化的作用。序列化是什么?一般说到序列化,其实是包含了反序列化。以C++为例,序列化就是将结构体(或者是类)等复杂的数据结构的各个属性有序地保存到字符数组。而反序列化就是将有序的字符数组还原回结构体(或者是类)等复杂的数据结构。序列化作用1、方便网络传输我们都知道,socket的数据都是以字符串进行传输,而序列化的作用就是原创 2015-03-12 09:16:15 · 8690 阅读 · 3 评论 -
游戏服务端之C++网络库对外接口
大多数的情况下,游戏的服务端都是在Linux下运行,但是Linux下做开发C/C++的开发相对来说是比较困难的。所以一般来说,游戏的服务端都是做成可移植的,这样方便在Windows下做开发。也就是说,服务端既可在Windows下运行,也可以在Linux下运行。说了这么多,看似与网络链接半毛钱关系都没有。其实不是这样的,就像Lua一样,既可以在Windows下调用它,也可以在Linux调用它,关原创 2013-12-15 00:01:41 · 4665 阅读 · 0 评论 -
游戏服务端之C++游戏服务端防崩溃
在游戏开发当中,不用我多说了,游戏的稳定性是相当重要的。为了追求游戏的稳定性,很多开发者都会选择脚本语言作为游戏的主要开发语言。因为使用脚本语言,即使游戏出现重大的bug,由于脚本支持热更的天然优势,使开发者更迅速地解决问题;而且脚本的良好容错性,也会使游戏系统不会轻易崩溃。但是,一些即时性游戏需要更高性能的,开发者可能会选择C/C++作为开发语言,但是怎样来保证游戏的稳定性呢?关键词是原创 2013-12-07 00:03:41 · 6122 阅读 · 4 评论 -
游戏服务端之内存池
内存池(Memory Pool)一、前言1、操作系统的内存分配方式1.1、连续分配方式顾名思义,这种分配方式,会将进程分配在连续的空间。连续分配方式一般可以分为固定分配方式、动态分配方式和伙伴系统(固定分配方式与动态分配方式的折衷方案)。1.2、基本分页存储管理方式1.3、基本分段存储管理方式注:以上说的分配方式,自个可以到网上去搜索一下,方便理解以下内容。原创 2014-01-05 00:03:23 · 6258 阅读 · 15 评论 -
游戏服务端之AOI概述
AOI(Area Of Interest),中文就是感兴趣区域。通俗一点说,感兴趣区域就是玩家在场景实时看到的区域;也就是AOI会随着英雄的移动改变而改变。一般在游戏的中,游戏的世界都是由各种场景组成,场景中有着各种各样的Obj(英雄、怪物、NPC和掉落物品等等)。当英雄在移动的时候,玩家需要看到其它在自己视野内玩家的英雄;需要看到在自己视野内的怪物;需要看到打BOSS掉落的物品;……。有原创 2013-12-29 00:27:53 · 13197 阅读 · 2 评论 -
游戏服务端为什么需要登录服?!
注:这篇文章不仅会说登录服,还会说一些其它游戏相关的事哦!我们都知道,很多游戏在上线时,都会大肆宣传,最近宣传比较多的就是《激战2》了。(当然我不是《激战2》的水军)很多玩家都会提前坐在电脑前,等候游戏官方给出的开服时间,抢点进入游戏,因为这样能占据时间的红利,可以在游戏中占个好排名原创 2014-05-31 00:03:27 · 3981 阅读 · 4 评论 -
用gdb调试游戏服务端
前言说说gdb的重要性一般来说,提到gdb,都是用命令来调试。“命令”,这个对于用户来说几乎等同于繁杂的词语。尽管事实确实如此,但实际的开发调试必须用到gdb。现在,大多数Linux系统是存在于服务器当中。我们想操作这些系统时,一般是通过Terminal来操作。也就是说这些Linux系统不具有图形界面。而调试一般分两部分,开发时调试和运行时调试。当我们的程序部署到Linux上时,那就需要忘原创 2014-11-17 00:15:00 · 4092 阅读 · 0 评论