Quick Cocos2dx MVC初步
今天看到了自己之前两年前写的一个地图编辑器,
写了不到一半就放弃了,
但是还是github上的小伙伴fork了,
真的感觉对不起那位伙计,
同时也鄙视一下一直以来懒得要死的自己,
希望这个demo不要太监了,为了自己,也为了家人。
吐槽完毕,正题来了。
昨晚回家难得写了几行代码,真的是只有几行,每天上午都在游戏中度过,游戏公司,你懂的。
下午又开始继续Quick-x的编码了。
上次把官方的sample/mvc的代码照着敲了一边,顺便入门了一下状态机,关于quick状态机,可以参考以下的帖子:
http://cn.cocos2d-x.org/tutorial/show?id=824
Model是存放数据,操作数据的,官方的Model包里面就放了几个DO,数据的存放与操作反而是放在了MyApp.lua下面。
个人感觉这个有点混乱,也许人家这样写是因为有别的原因吧,所以暂时将就用着。
之前我写过一个GameDataCenter的单例类本来是用来保存数据的,接口的啥的都写好了,后来被我手贱之下给删掉了,额,不堪回首。
再来说说Controller这个,官方的例子里面PlayerDualController.lua,这个类也是个大杂烩来的。
它继承自Node,添加了一些UIPushButton到,控制层不需要做显示相关的东西的,他只需要通知View层去如何显示而已,毕竟程序里面的控制器不是游戏手柄那样的控制器,
这个累不过也确实是一些Controller的正业,可以借鉴一下的。
View没啥好说的。
以上是自己学习官方的mvc例子的想法,可能官方只是想做个比较简单的sample说明一下而已。
如果做大项目,需要多人协作的话,其实这个结构需要优化一下的。
如果小玩意儿,为了性能和开发效率着想的话,倒是可以随自己的喜好去组建项目的。
毕竟各种臃肿的结构会增加项目尺寸,跨类访问需要消耗一定的性能的。
Quick Cocos2dx MVC初步的更多相关文章
- Quick Cocos2dx Http通讯
服务端:Python 通讯协议:Http 参考文章: 1 用python实现一个基本的http server服务器 http://blog.sina.com.cn/s/blog_416e3063010 ...
- quick cocos2d-x 入门---井字棋
学习quick cocos2d-x 第二天 ,使用quick-x 做了一个井字棋游戏 . 我假设读者已经 http://wiki.quick-x.com/doku.php?id=zh_cn阅读了这个链 ...
- Mac下搭建quick cocos2d-x编译环境
一. 我知道在你的电脑中一定已经安装好了Xcode(没有自己下载去吧),打开Xcode,开启"偏好设置"对话框(commond + ,).假设打开之后出现的是这种一个对话框,那么直 ...
- 用Quick Cocos2dx做一个连连看(一)
呵呵,不知道能不能坚持下来,先写着吧. 预备知识:Quick Cocos2dx 2.2.5基本知识 或者 Cocos2dx基本知识, lua入门 开发工具:Sublime Text 2.0/3.0 原 ...
- quick cocos2dx 3.x 配置win32工程
公司项目主体部分用c++,而ui部分用lua写,所以选择了用quick框架.项目先开发了ios/mac版,这两天试着配置其win32工程,遇到一些问题,记录一下(纯c++版本cocos2dx配置方法应 ...
- quick cocos2d-x 2.2.4 window环境调试
BabeLua简介 BabeLua是一款基于VS2012/2013(简称VS)的免费开源的Lua集成开发环境,在Lua编辑和调试方面,具有如下功能和特性: ●Lua语法高亮 ●语法检查 ●自动补全 ● ...
- Quick Cocos2dx controller的初步实现
很久没有记笔记了,今天记一下,最近都在瞎忙活,都不知道自己干了些啥. 我的Controller是在官方的mvc sample的里面的PlayerDualController上更改的,所以很多地方还没来 ...
- Quick Cocos2dx 初步战斗
呵呵,图片先来一发: 最近懒,很懒,连我自己都觉得有点可耻了. 但是实在没有什么东西啊,温水煮青蛙的什么的. 吐槽完成,以上. 目前完成了简单的战斗部分,AI还需要抽出来. 然后突然之间想到手游的帧频 ...
- quick cocos2dx lua 内存释放
前言 对于内存的优化,网上有很多例子和教程.总体来说,就那么几种解决方案,在最后我会简单提下,这里先说下在quick中,对于图片的处理. 1.查看内存调试信息 对于quick框架的了解,我们可以参考\ ...
随机推荐
- 用For Each语句对Session.Contents树组进行遍历
<%@ LANGUAGE=VBScript codepage ="936" %> <% Option Explicit %> 您的sessionID号是:& ...
- iOS 10推送通知开发
原文地址:Developing Push Notifications for iOS 10,译者:李剑飞 虽然通知经常被过度使用,但是通知确实是一种获得用户关注和通知他们需要更新或行动的有效方式.iO ...
- 这几个linux 命令
原文: linux性能分析 http://www.cnblogs.com/peida/tag/linux%E6%80%A7%E8%83%BD%E5%88%86%E6%9E%90/ du -sh /da ...
- java中的类修饰符、成员变量修饰符、方法修饰符
类修饰符: public(访问控制符),将一个类声明为公共类,他可以被任何对象访问,一个程序的主类必须是公共类. abstract,将一个类声明为抽象类,没有实现的方法,需要子类提供方法实现. fi ...
- HTML+CSS Day05 基本CSS选择器、复合CSS选择器与CSS继承性
1.基本CSS选择器 (1)标记选择器 <style> h1{ color:red; font-size:25px;} &l ...
- js设置全局变量ajax中赋值
js设置全局变量,在ajax中给予赋值赋值不上问题解决方案 方案一. //在全局或某个需要的函数内设置Ajax异步为false,也就是同步. $.ajaxSetup({async : false}); ...
- 删除正在登录的SQL账号
exec sp_who '用户名' kill @spid sp_droplogin 用户名
- Json.net对数据的解析
在官网下载Json.net文件后,解压完将Net20下面的DLL复制到Assets目录下. using UnityEngine; using System.Collections; using New ...
- 移动端h5页面的设计稿尺寸
当我们在做手机端H5网页设计稿时(当然包含微信端的H5网页设计),如果没有做过类似的移动端的设计,UI设计师和前端工程师肯定会纠结的.如果是app设计师,就不会那么纠结啦. 延伸阅读: 2015年度最 ...
- 剑指offer 连续子序列和
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 class Solution { public: int FindGreatestSumOfSu ...