自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

_Max

GameEngineDesigner

  • 博客(37)
  • 收藏
  • 关注

转载 c++ X STL - Traverse List and Delete Node , Error list iterator not incrementable

Container Traversefor(iterator it = begin(); it != end(); ++it)for(iterator it = begin(); it != end(); it++)两种方式iterator遍历的次数是相同

2011-09-24 06:48:56 3384 1

转载 MMORPG Server - API

StartServiceCtrlDispatcher在2000/XP等基于NT 的操作系统中,有一个服务管理器,它管理的后台进程被称为 service。服务是一种应用程序类型,它在后台运行,与 UNIX 后台应用程序类似。服务应用程序通常可以在本地和通过网络为用户提供

2011-09-23 17:07:30 686

转载 Computing - Proactor和Reactor模式_继续并发系统设计的扫盲

6.6.2008 Kevin Lynx Proactor和Reactor都是并发编程中的设计模式。在我看来,他们都是用于派发/分离IO操作事件的。这里所谓的IO事件也就是诸如read/write的IO操作。"派发/分离"就是将单独的IO事件通知到上层模块。两个模式不同

2011-09-21 09:22:50 483

转载 Computing - 半同步半异步模式以及Leader_Follwer模式

这里提到的两个设计模式都是用于高并发系统(例如一个高性能的网络服务器)的。这里我只是简单地提一下:1.半同步/半异步(half-sync/half-async):在网上一份资料中引用了一本貌似很经典的书里的比喻:” 许多餐厅使用 半同步/半异步 模式的变体

2011-09-21 09:20:50 497

转载 GUI - Desgin Architecture, 低耦合模块间的通信组件:两个模板

用途在一个UI与逻辑模块交互比较多的程序中,因为并不想让两个模块发生太大的耦合,基本目标是可以完全不改代码地换一个UI。逻辑模块需要在产生一些事件后通知到UI模块,并且在这个通知里携带足够多的信息(数据)给接收通知的模块,例如UI模块。逻辑模块还可能被放置于与UI模

2011-09-21 09:17:07 748

转载 WoW服务器模拟器Ascent网络模块分析

Ascent网络模块Author: Kevin Lynx Ascent是WoW的服务器模拟器,你可以从它的SVN上获取它的全部代码,并从它的WIKI页面获取架构起整个服务器的相关步骤。基本架构:Ascent网络模块核心的几个类关系如下图所示:T

2011-09-21 09:04:08 581

转载 Windows API - Timer Function , SetTimer和KillTimer函数

在前面介绍了一对定时器的API函数使用,现在又介绍另外一对API函数的使用。它使用起来比前的函数要简单一些,但它一般是使用到有窗口的程序里,并且它的精度也没有前面的API函数高,对于一些要求不高的场合还是非常合适的。它是采用消息通知的方式,每当定时到了就会收到一条消息。

2011-09-19 06:26:39 914

转载 Windows API - Timer Function

SetTimer()  什么时候我们需要用到SetTimer函数呢?当你需要每个一段时间执行一件事的的时候就需要使用SetTimer函数了。 使用定时器的方法比较简单,通常告诉WINDOWS一个时间间隔,然后WINDOWS以此时间间隔周期性触发程序。通常有

2011-09-19 06:23:42 1655

转载 windows api - socket 函数大全

对于socket编程,从原理来讲,我是比较熟悉的,但缺乏这方面的实际开发经验。不过,我认为要做好socket编程,理解好原理后,就应该研读这些函数。所以,转帖了http://shirley329.bokee.com/3524806.html搜集的资料如下,感谢【shirley的梦

2011-09-15 06:30:23 636

转载 网络游戏 - 分析 数据库服务器 安全性

网络游戏虽然不是一个以数据库为中心的系统,但是和其他的应用一样,数据库中保存着和玩家以及运营商密切相关的重要数据,比如帐号、装备等重要信息,以及游戏运营的数据。这些数据被盗取或者篡改将会严重影响到一个游戏的运营。    这里从游戏服务器端开发的角度来分析一下对于游戏的数据库来

2011-09-13 09:10:56 783

转载 MMORPG Server - 数据存储

在游戏中有很多的数据,有些数据可能会经常变换,有些数据就会一直不变。针对这些数据,可以简单的进行一个分类:永远不会改变的数据;经常进行读取和改变的数据;下面就对游戏中的数据进行一个分类。a) 永远不会进行改变的数据。 如策划填写的资源数据。这些数据在游戏中可能会涉及到数据的重

2011-09-12 07:16:35 923

转载 SoftwareModel - 避免耦合的设计原则

如果代码耦合太高,对于BUG修改,新功能增加,测试,都是一个噩梦。 我们公司还是有很多牛人的,知识我不知道而已,下面是我一同事的博客上的文章,关于解耦合手段,每读一篇,我会把他链接到这里。  解耦合手段之一:dry原则Don't Repeat Yourse

2011-09-07 12:19:06 1272

转载 SoftwareModel - Introduction面向对象耦合 与 解耦合策略

1 Introduction随着人们对软件质量要求的提高,软件的设计和维护工作也受到了巨大的挑战。其中与软件质量相关的一个内部属性是耦合性。低耦合是软件设计的一个重要原则,而耦合性解耦策略的研究是保证软件低耦合的一个重要方面。The Concept ofCou

2011-09-07 11:47:28 1770

转载 SocketProgram - IOCP Program

至此整个IOCP的基础知识算是介绍完了,作为总结,可以回顾下几个关键步骤:1、 用CreateIoCompletionPort创建完成端口;2、 定义IOCP线程池函数,类似消息循环那样写一个“死循环”调用GetQueuedCompletionStatus函数,并

2011-09-06 10:57:33 514

转载 SocketProgram - Introduction IOCP

欢迎阅读此篇IOCP教程。我将先给出IOCP的定义然后给出它的实现方法,最后剖析一个Echo程序来为您拨开IOCP的谜云,除去你心中对IOCP的烦恼。OK,但我不能保证你明白IOCP的一切,但我会尽我最大的努力。以下是我会在这篇文章中提到的相关技术:  I/O端口  同步

2011-09-06 10:19:18 568

转载 服务器心跳机制 - 两种实现策略

大部分CS的应用需要心跳机制。心跳机制一般在Server和Client都要实现,两者实现原理基本一样。Client不关心性能,怎么做都行。如果应用是基于TCP的,可以简单地通过SO_KEEPALIVE实现心跳。TCP在设置的KeepAlive定时器到达时向对端发一个检测TCP

2011-09-06 10:14:15 1793 1

转载 SocketProgram - Introduction

端口号常识:    端口号被从1 开始分配。    通常端口号超出255 的部分被本地主机保留为私有用途。    1到255 之间的号码被用于远程应用程序所请求的进程和网络服务。    每个网络通信循环地进出主计算机的TCP 应用层。它被两个所连接的号码唯一地识别

2011-09-06 04:55:06 648

转载 3ds max - sdk学习心得(一)

最近在学习3ds max sdk,主要用于3ds max插件开发一开始装了3ds max9,发现里面并没有sdk,后来网上查了才知道只有完整版的才有,于是到网上找了个2009版的,以为有sdk,结果装了之后又没有。。。后来就找单独的3ds max sdk,终于找到sdk里

2011-09-05 06:48:22 1928

转载 3ds max - maxscript调试器使用指南

标题:教你如何使用maxscript调试器 作者:李英江 日期:2007年2月6日 网站: http://www.cgsir.com转载本文:请保留作者信息 谢谢!   就我个人来说3ds max 8脚本调试器用得不多,在这里我讲一下脚本调试器的原理和

2011-09-05 06:14:28 4565

转载 3ds max - 浅谈MaxScript与Max SDK的区别

标题: 浅谈MaxScript与Max SDK的区别作者:李英江 日期: 2007-04-21 16:12:12 作者网站: http://www.cgsir.com转载请保留作者内容!  3ds Max 脚本编程与3ds Max SDK编程有很大的区别,

2011-09-05 06:09:04 2170

转载 3ds max - 浅析脚本

我的网站:http://www.cgsir.com 转载时请保持原文完整,谢谢!1.概述: 3ds max脚本功能强大,方便。本文是介绍3ds max脚本技术,运用一个实例来说明如何编写3ds max脚本,以及程序设计的基本思想。我尽量做到让没有看过和写过任何

2011-09-05 06:03:17 1949

转载 vc2005 - 编译时应注意的几点

1       LNK2005错误——重复定义错误声明全局变量要注意以下3点:(1)声明必须使用extern关键字;(2)不能给变量赋初值 (3)     全局变量重复定义否则就会出现 LNK2005错误2.头文件的包含重复。往往需要包含的头文件中含有变量、函数、

2011-09-05 04:35:21 513

转载 vmware - 调整虚拟机硬盘空间的方法

VMware默认的系统硬盘8GB大小,实际上远不够用,安一个redhat就快满了。如何调整硬盘大小?在VMware安装目录下就有一个vmware-vdiskmanager.exe程序,它是一个命令行工具,可用来修改虚拟机硬盘的大小。方法如下: 第一步:按Win+R键调出运

2011-09-04 20:39:32 942

转载 WinDbg - 配置和使用基础

WinDbg是微软发布的一款相当优秀的源码级(source-level)调试工具,可以用于Kernel模式调试和用户模式调试,还可以调试Dump文件。1. WinDbg介绍:Debugging Tools and Symbols: Getting Startedhtt

2011-09-04 20:12:45 601

转载 WRK- 搭建调试环境

以前设置调试过,那时候是在windows 2003 Enterprise系统上,一直没有成功。今天下载了win 2003 sp1补丁,重新编译、设置,果然就成功了。看来,WRK一定是要在windows 2003 sp1上才可以(在xp amd64上也可以);下面是操作步骤和所遇到的问题:工具: vmware 6.50,windbg 6.11,wrk 1.2

2011-09-04 20:04:26 2056

转载 Linux Kernel - A Developer's Guide (如何成为一个Linux内核开发者)

你想成知道如何成为一个Linux内核开发者么?或者你的老板告诉你,“去为这个设备写一个Linux驱动。“这篇文档的目的,就是通过描述你需要经历的过程和提示你如何和社区一起工作,来教给你为达到这些目的所需要知道的所有知识。本文也尝试解释社区为什么这样工作的一些原因。内核几乎全是

2011-09-04 19:23:55 1083

转载 Linux Kernel - Debug Guide (Linux内核调试指南 )

linux内核调试指南一些前言作者前言知识从哪里来为什么撰写本文档为什么需要汇编级调试***第一部分:基础知识***总纲:内核世界的陷阱源码阅读的陷阱代码调试的陷阱原理理解的陷阱

2011-09-04 19:00:00 23490

转载 SocketProgram - Program With Windows Socket IO Model

Introduction如果你想在Windows平台上构建服务器应用,那么Socket I/O模型是你必须考虑的。Windows操作系统提供了blocking (阻塞) 选择(Select)、异步选择(WSAAsyncSelect)、事件选择(WSAEventSelect

2011-09-02 04:21:53 711

转载 SocketProgram - Introduction Socket IOCP

IOCP(I/O Completion Port,I/O完成端口)是性能最好的一种I/O模型。它是应用程序使用线程池处理异步I/O请求的一种机制。在处理多个并发的异步I/O请求时,以往的模型都是在接收请求是创建一个线程来应答请求。这样就有很多的线程并行地运行在系统中。而这些线程都

2011-09-02 03:42:33 520

转载 MMO服务器端 - 实现 MultiThead Socket

想要实现的功能:在服务器端有一个控制台程序(或者Windows服务),与多个客户端程序通讯,其中主线程有一个socket绑定在一个固定端口上,负责监听客户端的Socket信息。每当启动一个客户端程序,客户端发送来一个socket连接请求,server端就新开启一个线程,并在其中创

2011-09-01 17:33:06 923

转载 MMORPG - 技能系统,3

记录时间:2009年11月24日 早期的技能系统设计在实现过程中首先发现了子弹模块的设计问题。 从技能系统的实现角度来看,子弹应该只是技能执行的一种扩展,本身不应该单独存在。否则加大了技能系统的制作难度,让逻辑变得分散。 当初考虑的原则是基于状态机。根据技能的表现,认

2011-09-01 14:54:12 880

转载 MMORPG - 技能系统,2

记录时间: 2009年11月23日 对前期技能系统设计和实现的总结 技能系统根据目前的需求和设计,经历了几次设计变动。 最早期设计将技能系统拆分为3个部分:技能   子弹   状态。 以下是前期设计文档

2011-09-01 14:50:42 902

转载 MMORPG - 技能系统,1

记录时间:2009年11月23日 该笔记记录《侠客行》项目的技能系统设计思路和重构过程。主要目的是记录技能系统的设计过程和修改过程,并作为后期功能扩展的参考和指导。 技能系统预计从开始设计到最终版本会经历3个阶段 初期设计和实现阶段      包括前期整理需求

2011-09-01 14:49:06 1170

转载 MMORPG - 战斗系统,计算攻击

第3章 攻击    前一章详细讲述了伤害形式和伤害的过程,攻击是用来造成伤害的必要条件,在本章中我们来详细分析攻击的发动形式和发动过程。  3.1 攻击的定义    战斗中进攻主体通过进攻媒介对客体造成伤害的过程称为攻击。3.2 攻击主体、攻击客体和攻击媒介

2011-09-01 14:46:16 2288

转载 MMORPG - 战斗系统,计算伤害

第2章 伤害    既然大多数战斗系统以属性做为其核心要素,那么我们为何要从伤害设计讲起呢?这是因为与战斗系统相关的属性最终要应用于攻击者发动攻击和被攻击者受到伤害的过程,而不同类型的攻击形式和不同类型的的伤害形式都有着各自的数学模型。只有在研究清楚不同形式的攻击过程和不同形

2011-09-01 14:44:27 3281

转载 MMORPG - 战斗系统,概述设计

大家好,小弟garfieldmc初到本论坛,发一篇自己正在写的文章《MMORPG战斗系统设计》。本文尚未写完,目前发表出来时为了对战斗系统设计做一种理论方面的探讨,即不是特指某款游戏的战斗系统设定,也不包括任何文化内涵,而且目前此文缺乏对系统开销的估算过程,因此很多环节的技术可行

2011-09-01 14:42:37 1466

转载 WOW - Terrain

《魔兽世界》地形研究         《魔兽世界》地形的惊艳之处,主要在于无缝连接的世界和精细的渲染效果,借助WoWmapview源码及能以线框模式查看D3D程序的分析工具,可以对其实现略窥一二。 组织方式         《魔兽世界》采用分块的地形,这是它实现无

2011-09-01 02:20:15 854

空空如也

空空如也

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

TA关注的人

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