惯性聚合 高效追踪和阅读你感兴趣的博客、新闻、科技资讯
阅读原文 在惯性聚合中打开

推荐订阅源

博客园_首页
量子位
D
DataBreaches.Net
博客园 - 司徒正美
J
Java Code Geeks
博客园 - 【当耐特】
OSCHINA 社区最新新闻
OSCHINA 社区最新新闻
aimingoo的专栏
aimingoo的专栏
B
Blog
The Cloudflare Blog
D
Docker
I
InfoQ
爱范儿
爱范儿
MongoDB | Blog
MongoDB | Blog
腾讯CDC
月光博客
月光博客
Hugging Face - Blog
Hugging Face - Blog
Microsoft Azure Blog
Microsoft Azure Blog
Vercel News
Vercel News
阮一峰的网络日志
阮一峰的网络日志
小众软件
小众软件
S
SegmentFault 最新的问题
GbyAI
GbyAI
有赞技术团队
有赞技术团队

博客园 - SeanLin

Cocos2d-html5资源预加载列表自动扫描脚本 JSDoc参考注释模板 [转]Git常用操作命令 Javascript API Document生成工具JSDoc HTML5游戏开发涉及到的安全问题 Javascript开发的HTML5游戏的知识产权保护 CCTextureCache的多线程加载原理和使用 引擎demo任务 引擎初始化过程 引擎开发数据记录 游戏引擎消息循环机制 渲染部分 几个需要思考的问题 【转】使用Jasob混淆javascript代码 【转】html5游戏开发引擎大全 【转】V8 Javascript 引擎设计理念 android 字体位置信息 【转】蓝牙协议中HCI层的研究与开发 【转】蓝牙协议的命令和事件
Cocos2d-html5 HelloWorld模板和引擎使用简介
SeanLin · 2012-05-24 · via 博客园 - SeanLin

本文主要介绍Cocos2d-html5如何快速的使用模板文件建立游戏项目,以及一些引擎的使用注意事项。

在代码仓中,已经集成Project的模板,位置在cocos2d-html5/HelloWorld目录下,包含的文件有:

  1. HelloWorld.html
  2. HelloWorld.js
  3. cocos2d.js
  4. ./Classes/AppDelegate.js

    其中,HelloWorld.html文件是网页的加载文件,里面主要定义了canvas和引导文件cocos2d.js。

    cocos2d.js文件用来加载所有的js文件,然后调用initLoader加载图片,声音等资源文件。加载完毕之后,创建出application,并开始运行。目前代码仓是分离的js文件,版本发布会将引擎文件进行打包和压缩,变为一个独立的文件。

    HelloWorld.js用来创建出运行环境的Scene,并将产生的scene返回给AppDelegate。在scene里面可以放置各种layer和sprite,并给layer或者sprite加上各种动作和效果。

    值得一提的是,logo展示背景层的创建方式有点特殊,是采用cc.LazyLayer()创建。采用这么做的好处是,canvas不需要实时对整个画面进行刷新,节省渲染时间,提高帧率。LazyLayer的方式,可以用来管理游戏的大背景,降低渲染消耗。

    AppDelegate初始化帧率和Director,调用runWithScene开始运行HelloWorld。至此,整个Demo就运行起来了。

    在cocos2d.js中,默认添加的是Canvas Menu,如果要Dom Menu,则替换对应的文件。涉及的文件有以下部分:

    Canvas Menu模式:

    cc.loadjs('menu_nodes/CCMenuItem.js');

    cc.loadjs('menu_nodes/CCMenu.js');

   Dom Menu模式:

   cc.loadjs('base_nodes/CCdomNode.js');

   cc.loadjs('menu_nodes/CCdomMenuItem.js');

   cc.loadjs('menu_nodes/CCdomMenu.js');

    在使用Dom Menu,浏览器原生支持,可以有更高的运行效率,但是用Dom Menu创建的Items和Menu只能在Canvas的上方。如果创建出来的菜单需要在Canvas Menu下方的话,需要选用Canvas Menu。

服务器搭建

     引擎使用到的特殊文件类型包括:.tmx .tsx .plist .fnt,需要在服务器中设置支持以上类型的文件。

Sean Lin,转载请注明: http://www.cnblogs.com/SeanLin/archive/2012/05/24/2516714.html