您的位置:首页 > 其它

学习笔记----如何从零打造一个手游客户端

2016-07-13 22:33 471 查看
1、技术选型。这个很重要。第一步错了,后面就是在错误的道路上渐行渐远。 如果要做2D游戏那就用cocos2d-x,如果要做3D那就用Unity。本来我是不想提这种一刀切的观点的,这样显得很没有水平,因为真正的高手是拿什么都可以做的很好的。 但是很多人就是无法正确的选择客户端引擎,后果就是浪费时间,甚至项目失败。

            现在用Unity做的成功的2D游戏也比较多了,所以如果你熟悉Unity的话,那就都用Unity好了,这样可以更好的做团队的技术积累。 而如果没有什么经验的话,那么cocos2d-x+lua是最好的选择,因为简单易上手,招人也容易。 但是要注意,确定了cocos2d-x那就专心做2D的东西,如果美术和策划认为用3D元素才能表现出一个酷炫的游戏的话,那Unity是不二选择。

        2、领会选择的引擎的开发流程和开发思路。 比如cocos2d-x中如何处理人物移动、技能播放、UI;Unity中如何处理人物攻击判定、物理效果、组件通信等等。 我刚开始接触Unity的时候花了很长时间去思考这些问题,虽然浪费了一些时间,但是换来的是清晰的思路,当明白了这些问题,才能写出Unity Style的代码。 如果游戏中的基础功能都能够实现出来,那么一个Demo就成型了。

        3、游戏最核心的玩法。  大多数情况下就是战斗系统。 这里可能涉及到一些相对困难的东西,比如ARPG中的技能系统设计、三消游戏中的转珠算法、卡牌游戏中的战斗流程设计等等。 这个花一个月甚至更长的时间来做都是合情合理的。 基本上这个东西实现完了,游戏中最重头的部分就结束了,剩下的就是纯逻辑的功能了。而纯逻辑功能虽然耗时间,但是没有什么难度,而且可以靠添人来加快开发进度。

        4、数据结构设计。 这个主要是数值策划相关的东西,比如人物有哪些属性,装备有哪些属性,用什么结构来存储人物信息,装备信息存放在哪里。程序的主要工作就是理清楚这些属性该如何配置,如何加载、如何同步。

        5、网络通信和UI模块设计。虽然这两个是完全不同的东西,但是解决思路是一样的。选择一个技术方案(比如protobuf,cocostudio),进行合理的封装,使得写这些功能独立而简单。 这个是后面开发的重头内容,客户端一大半代码都是在处理网络消息和ui逻辑。

        6、具体功能模块的实现。基于上面提到的客户端架构,“添加一个功能就是添加一个管理类,以及一些列的消息和界面”。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: