十年网站开发经验 + 多家企业客户 + 靠谱的建站团队
量身定制 + 运营维护+专业推广+无忧售后,网站问题一站解决
目前针对3D游戏移动端的开发,Unity3D引擎几乎占领了大部分份额,Unity的特点就是入手快而且市面上的插件比较多,这也说明它的架构设计还是非常不错的,有这么多人参与也使引擎的应用获得了空前的提升。但对于游戏公司的初级程序员或者说刚入门的程序员来说,在实际项目开发中,都是写写基本逻辑,对于底层架构设计并不是很清楚。这样对于自身发展非常不利,在这里给大家介绍几种游戏开发中常用的架构设计,也是告诉大家该如何学习。
成都创新互联公司自成立以来,一直致力于为企业提供从网站策划、网站设计、成都做网站、成都网站制作、电子商务、网站推广、网站优化到为企业提供个性化软件开发等基于互联网的全面整合营销服务。公司拥有丰富的网站建设和互联网应用系统开发管理经验、成熟的应用系统解决方案、优秀的网站开发工程师团队及专业的网站设计师团队。大家学习的过程中,对设计模式中的几个经典模式要熟练掌握:单例模式,工厂模式,抽象工厂模式,状态模式。接下来我们就以游戏客户端为例告诉大家该如何设计一款游戏架构。
在客户端开发中首先设计的是UI,游戏的UI开发逻辑非常多。为了能够满足游戏的需求变换,这就要求我们必须做一个架构。架构的目的是方便程序员扩展,还有就是模块之间的藕合性降低。
先说UI设计,UI主要功能是界面之间的切换以及界面的数据显示,这刚好满足了MVC架构模式,Model表示的是数据变换,View表示的界面的显示,Control表示的是控制。
这样界面的基本逻辑在View中编写,Control表示的是控制View的显示,Model表示的数据变化。它们之间可以通过消息的监听和分发链接。具体可以查看笔者编写的《Unity3D实战核心技术详解》电子工业出版社出版的书籍,里面有关于MVC架构设计的详细讲解和代码案例。
再说进入游戏后的角色设计,角色有很多动作和技能。不同的动作之间可以互相切换,技能也是一样的,动作的数量是有限的,技能也是有限的,这个非常符合FSM有限状态机的设计。代码的设计可以采用首先设计一个状态变换的基类,不同的动作或者技能都可以继承这个基类。它们之间的变换可以采用State去切换,非常适用。笔者在《Unity3D实战核心技术详解》一书中专门有一章内容对其进行详细讲解。
这两部分是最重要的,其他的涉及各个管理类的封装管理了。相对来说都是孤立的模块设计,这些模块设计可以采用单例的方式进行。最后告诉读者一个非常重要的事情就是先进行模块设计再编码,根据策划需求先整框架。避免拿过需求文档就开始写,后面修改非常频繁,把自己坑死。
目前个人也开通了个人主页网站:www.vr3d-edu.com 欢迎大家访问。
顶
0
另外有需要云服务器可以了解下创新互联cdcxhl.cn,海内外云服务器15元起步,三天无理由+7*72小时售后在线,公司持有idc许可证,提供“云服务器、裸金属服务器、高防服务器、香港服务器、美国服务器、虚拟主机、免备案服务器”等云主机租用服务以及企业上云的综合解决方案,具有“安全稳定、简单易用、服务可用性高、性价比高”等特点与优势,专为企业上云打造定制,能够满足用户丰富、多元化的应用场景需求。