美文网首页
DemoProject文档

DemoProject文档

作者: RainbowDesigner | 来源:发表于2016-06-11 17:22 被阅读0次

概述

        DemoProject项目基于cocos2d-x3.4, 集成RainbowDesigner的Runtime代码.

你可以基于DemoProject来快速创建自己的项目.

        DemoProject其实是一个精简的Lua游戏框架, UI全部用RainbowDesigner设计的VO文件. 

UI布局/动画 只需要美术使用RainbowDesigner设计成VO就可以了.

         RainbowDesiner设计的Lua框架,其实是一个经典的MVC框架:

                i.  视图层就是VO文件

                ii. 控制层就是Lua脚本Controller代码

               iii. Model层就是你有游戏数据管理器

如果对Cococs2d-x比较熟悉的话, 可以很快熟练使用.

如果打开工程?

使用vs2012打开项目

DemoProject\frameworks\runtime-src\proj.win32\xiaoxiaole.sln

目录结构:

目录结构

游戏入口在哪里?

Lua代码入口文件

如何在Vo文件中设置Controller?

VO文件中只要设置了Controller了,框架会自动调用Controller中的相关逻辑。

1. 把UI文件中的Node,自动映射到脚本中

2.自动执行脚本中的相关函数, 比如onEnter/onExit。。。等

设置Controller和membervar

如上图,设置了membervar, 那么可以在Lua中直接访问次变量:

    self.var_map:setPosition(100, 100)

是不是很方便呢

游戏UI方面抽象出2个基本的类, Window和Dialog:

     Window: 可以理解为全屏窗体,同一时刻只有一个Window可能被打开。

                Window的Controller需要继承BaseController,例如:

一个典型的Window Controller代码

    Dialog:对话框,在Window上层弹出式对话框,会屏蔽底层点击事件。

               Dialog的Controller请继承BaseDialog,例如:

一个典型的对话框Controller

如何打开一个Window?

     TheGame.inst():show_window('viewobjects/Logo.vo', {})

    会自动打开Logo.vo文件, 当Logo.vo文件被打开的时候,会自动加载Logo.vo文件的Controller代码。

    show_window 可以带参数传递给Controller哦, 次参数会映射为Controller中的entity变量,具体看下代码吧 。

如何打开一个Dialog?

     TheGame.inst():show_dialog('viewobjects/WidgetSetting.vo', {})

     会自动打开WidgetSetting.vo文件, 以对话框方式打开, 并且自动加载Dialog的Controller代码。

      show_dialog同样可以带参数传递给Controller。

相关文章

  • DemoProject文档

    概述 DemoProject项目基于cocos2d-x3.4, 集成RainbowDesigner的Run...

  • RN Android打包测试

    android 真机打包测试 项目的根路径是DemoProject 生成签名秘钥cd DemoProject &&...

  • path.resolve & path.join理解

    //当前项目地址是 /Users/zhangsan/Documents/demoProject//__dirnam...

  • iOS 创建本地私有pods

    1:创建DemoProject工程,用于后面测试生成本地私有库2:cd 进入需要创建私有库的目录(方便起见,切换至...

  • 2019-04-26

    测试文档测试文档测试文档测试文档测试文档测试文档测试文档测试文档测试文档测试文档测试文档测试文档测试文档测试文档测...

  • Elasticsearch(ES)文档的CRUD

    新增文档(不指定文档ID) 新增文档(指定文档ID) 通过文档ID获取文档 通过文档ID更新文档 通过文档ID删除...

  • elasticsearch cat api

    健康: 文档 count: 文档 索引:文档 节点:文档 cluster:文档 分片:文档(需要注意state字段)

  • 2020-09-22

    互联网/软件全套文档、产品文档、技术文档、测试文档、运维文档、项目文档 前言简约文档可提高团队沟通效率;详细文档体...

  • Elasticsearch 7.x 入门之restful请求(2

    使用restful操作 创建文档新建文档.png 查看文档文档信息.png 删除文档文档删除.png 新建文档自动...

  • Shape/GradientLayer

    参考文档1参考文档2参考文档3参考文档4参考文档5参考文档6 CAShapeLayer CAShapeLayer ...

网友评论

      本文标题:DemoProject文档

      本文链接:https://www.haomeiwen.com/subject/bvqedttx.html