StickEngine-架构9-引入C#混合编程-服务端概述

梦想游戏人
目录:
游戏开发

整体概述是    http://dreamyouxi.com:7129/blog/1203

引入C#是为了降低开发难度,特别是战斗服部分,相比使用lua具有高性能,双端开发等优势。

引擎主体还是C/C++实现。这一点和Unity就很像了。引入后服务端支持C/C++ Lua C#混合编程。

引入C#主要应用场景是游戏逻辑开发(主要是战斗部分)。

C#和C/C++混合运行机制在该篇进行了基础概述     Http服务器-第十步加入基于Mono平台的C#脚本支持   http://dreamyouxi.com:7129/blog/1277

这里阐述在StickEngine中的机制和概念及实现。

设计主体思路是C/C++实现引擎部分和大部分GamePlay框架(网络同步等)。C#实现部分逻辑编写,实现难度降低和双端开发的可能性。在API理念设计上靠向于Unity,这样开发人员上手就比较快了。C#在这里扮演的角色更像是脚本语言了。

在组织结构上有2个dll,一个是引擎层StickEngine.dll,另外一个是游戏逻辑Scripting.dll。

引擎层dll是随着C/C++版本紧密贴合的。GamePlay开发人员只需要编写Scripting.dll即可。

引擎层dll基本模式

逻辑层dll示例。

TODO

下篇案例讲解  MatchServer的匹配机制    http://dreamyouxi.com:7129/blog/1299

Scroll Up