COCOS2D-JS入门-web端项目部署
下载cocos2d-js文件,建议上官网下载(外国官网或者中国官网都可以)
外国官网:http://cocos2d-x.org/download(选择最新版即可,我下载时为3.9版本,大概300多M)
国内官网:http://www.cocos.com/download/cocos2d-x/
因为只写web版本:所以解压后我们只要里面的web文件夹即可,别的可以删掉了,而web文件夹才11多M(如果想写跨平台,还需要学习其他人的教程才可,本随笔不记录跨平台教程)

之后我们要跑起个hello World (想必新学一门编程语言或者框架都要干这个事吧)
打开web目录我们可以看到有个template文件夹,这个就是cocos官网给我们写好的hello案例,打开index.html即可

此时你会打开发现一直在loading对吧?是就对了,因为什么呢,因为官网给的代码有问题,一个很简单的问题:

要想看到这个例子的庐山真面目,需要修改index.html才可以,也就是把js文件的加载位置放到body的最后边,如下:

此时我们在运行这个文件,就可以在浏览器中看到效果了,并且官方的例子还做了移动端自适应:

其实我们也可以不用下载这个完整的包,毕竟对于前端来说还是习惯了引入一个库文件即可的开发习惯。
所以官网也给了我们下载精简版Lite版本和完整版版本以及定制版版本的下载地址页面:http://cocos2d-x.org/filecenter/jsbuilder
并且下载下来的是一个压缩文件,里面带有你选择的js文件以及一个cocos2d-js开发的模板。
只要根据自己喜好去下载即可,但这里有个坑,就是官网的300多M里面自带的demo用lite版本会报错,原因是缺少必要模块。所以只能用完整版,或者自己根据需要用一些自动化构建工具合并压缩你需要的模块,这样也会减少js文件的体积,提高游戏资源的加载速度,毕竟完整版的压缩版本已经达到了1.8M(网站下载大小)的大小了。
在这里发布下我目前合并的版本。压缩完是500多kb:
var fileLiteArr = [
'./web/Base64Images.js',
'./web/CCBoot.js',
'./web/cocos2d/core/event-manager/CCEventHelper.js',
'./web/CCDebugger.js',
'./web/cocos2d/core/utils/BinaryLoader.js',
'./web/cocos2d/core/platform/CCClass.js',
'./web/cocos2d/core/platform/CCCommon.js',
'./web/cocos2d/core/cocoa/CCGeometry.js',
'./web/cocos2d/core/platform/CCTypesPropertyDefine.js',
'./web/cocos2d/core/platform/CCSAXParser.js',
'./web/cocos2d/core/platform/CCLoaders.js',
'./web/cocos2d/core/platform/CCConfig.js',
'./web/cocos2d/core/platform/miniFramework.js',
'./web/cocos2d/core/platform/CCMacro.js',
'./web/cocos2d/core/platform/CCTypesWebGL.js',
'./web/cocos2d/core/platform/CCTypes.js',
'./web/cocos2d/core/platform/CCEGLView.js',
'./web/cocos2d/core/platform/CCScreen.js',
'./web/cocos2d/core/platform/CCVisibleRect.js',
'./web/cocos2d/core/platform/CCInputManager.js',
'./web/cocos2d/core/platform/CCInputExtension.js',
'./web/cocos2d/core/cocoa/CCAffineTransform.js',
'./web/cocos2d/core/support/CCPointExtension.js',
'./web/cocos2d/core/support/CCVertex.js',
'./web/cocos2d/core/support/TransformUtils.js',
'./web/cocos2d/core/event-manager/CCTouch.js',
'./web/cocos2d/core/event-manager/CCEvent.js',
'./web/cocos2d/core/event-manager/CCEventListener.js',
'./web/cocos2d/core/event-manager/CCEventManager.js',
'./web/cocos2d/core/event-manager/CCEventExtension.js',
'./web/cocos2d/core/base-nodes/BaseNodesPropertyDefine.js',
'./web/cocos2d/core/renderer/RendererCanvas.js',
'./web/cocos2d/core/renderer/RendererWebGL.js',
'./web/cocos2d/core/base-nodes/CCNode.js',
'./web/cocos2d/core/base-nodes/CCNodeCanvasRenderCmd.js',
'./web/cocos2d/core/base-nodes/CCNodeWebGLRenderCmd.js','./web/cocos2d/core/base-nodes/CCAtlasNode.js',
'./web/cocos2d/core/base-nodes/CCAtlasNodeCanvasRenderCmd.js',
'./web/cocos2d/core/base-nodes/CCAtlasNodeWebGLRenderCmd.js',
'./web/cocos2d/core/textures/TexturesWebGL.js',
'./web/cocos2d/core/textures/TexturesPropertyDefine.js',
'./web/cocos2d/core/textures/CCTexture2D.js',
'./web/cocos2d/core/textures/CCTextureCache.js',
'./web/cocos2d/core/textures/CCTextureAtlas.js',
'./web/cocos2d/core/scenes/CCScene.js',
'./web/cocos2d/core/scenes/CCLoaderScene.js',
'./web/cocos2d/core/layers/CCLayer.js',
'./web/cocos2d/core/layers/CCLayerCanvasRenderCmd.js',
'./web/cocos2d/core/layers/CCLayerWebGLRenderCmd.js',
'./web/cocos2d/core/sprites/SpritesPropertyDefine.js',
'./web/cocos2d/core/sprites/CCSprite.js',
'./web/cocos2d/core/sprites/CCSpriteCanvasRenderCmd.js',
'./web/cocos2d/core/sprites/CCSpriteWebGLRenderCmd.js',
'./web/cocos2d/core/sprites/CCBakeSprite.js',
'./web/cocos2d/core/sprites/CCAnimation.js',
'./web/cocos2d/core/sprites/CCAnimationCache.js',
'./web/cocos2d/core/sprites/CCSpriteFrame.js',
'./web/cocos2d/core/sprites/CCSpriteFrameCache.js',
'./web/cocos2d/core/sprites/CCSpriteBatchNode.js',
'./web/cocos2d/core/sprites/CCSpriteBatchNodeCanvasRenderCmd.js',
'./web/cocos2d/core/sprites/CCSpriteBatchNodeWebGLRenderCmd.js',
'./web/cocos2d/core/CCConfiguration.js',
'./web/cocos2d/core/CCDirector.js',
'./web/cocos2d/core/CCDirectorCanvas.js',
'./web/cocos2d/core/CCDirectorWebGL.js',
'./web/cocos2d/core/CCCamera.js',
'./web/cocos2d/core/CCScheduler.js',
'./web/cocos2d/core/utils/CCProfiler.js',
'./web/cocos2d/core/CCDrawingPrimitivesCanvas.js',
'./web/cocos2d/core/CCDrawingPrimitivesWebGL.js',
'./web/cocos2d/core/labelttf/LabelTTFPropertyDefine.js',
'./web/cocos2d/core/labelttf/CCLabelTTF.js',
'./web/cocos2d/core/labelttf/CCLabelTTFCanvasRenderCmd.js',
'./web/cocos2d/core/labelttf/CCLabelTTFWebGLRenderCmd.js',
'./web/cocos2d/core/CCActionManager.js',
'./web/cocos2d/kazmath/utility.js',
'./web/cocos2d/kazmath/vec2.js',
'./web/cocos2d/kazmath/vec3.js',
'./web/cocos2d/kazmath/vec4.js',
'./web/cocos2d/kazmath/ray2.js',
'./web/cocos2d/kazmath/mat3.js',
'./web/cocos2d/kazmath/mat4.js',
'./web/cocos2d/kazmath/plane.js',
'./web/cocos2d/kazmath/quaternion.js',
'./web/cocos2d/kazmath/aabb.js',
'./web/cocos2d/kazmath/gl/mat4stack.js',
'./web/cocos2d/kazmath/gl/matrix.js',
'./web/cocos2d/shaders/CCShaders.js',
'./web/cocos2d/shaders/CCShaderCache.js',
'./web/cocos2d/shaders/CCGLProgram.js',
'./web/cocos2d/shaders/CCGLStateCache.js',
'./web/cocos2d/shape-nodes/CCDrawNode.js',
'./web/cocos2d/shape-nodes/CCDrawNodeCanvasRenderCmd.js',
'./web/cocos2d/shape-nodes/CCDrawNodeWebGLRenderCmd.js',
'./web/cocos2d/actions/CCAction.js',
'./web/cocos2d/actions/CCActionInterval.js',
'./web/cocos2d/actions/CCActionInstant.js',
'./web/cocos2d/actions/CCActionCamera.js',
'./web/cocos2d/actions/CCActionEase.js',
'./web/cocos2d/actions/CCActionCatmullRom.js',
'./web/cocos2d/actions/CCActionTween.js',
'./web/cocos2d/menus/CCMenuItem.js',
'./web/cocos2d/menus/CCMenu.js',
'./web/cocos2d/audio/CCAudio.js'
];
以上就是我目前压缩的版本,用这个跑官方的的demo就不会报错了,至于工具可以选择grunt,gulp或者webpack等前端构建工具进行合并压缩。
好了,这样我们的COCOS2D-html5的开发环境就部署好了,也算是学习web游戏的第一步就迈出去了,接下来就要看你自己找学习资料或者书籍努力了!
COCOS2D-JS入门-web端项目部署的更多相关文章
- 怎样将本地web数据库项目部署到腾讯云服务器上?
怎样将本地web数据库项目 部署到腾讯云服务器上? 1.本地计算机的工作: 1.1用eclipse或者myeclipse做好一个web项目,可以只做一个数据库的增删改查,本地部署到Tomcat服务器, ...
- 用js实现web端录屏
用js实现web端录屏 原创2021-11-14 09:30·无意义的路过 随着互联网技术飞速发展,网页录屏技术已趋于成熟.例如可将录屏技术运用到在线考试中,实现远程监考.屏幕共享以及录屏等:而在我们 ...
- linux--后端项目部署
nginx + uwsgi + crm + mysql + virtualenv + supervisor项目部署 1.后端整起,用uwsgi启动crm 2.创建一个新的虚拟环境,用于运行crm新业务 ...
- 百度网盘web端项目总结
项目背景 网盘作为一个在线备份存储,共享文件的工具类产品,给人们的工作和生活带来了很大的帮助和便利.百度网盘是目前国内使用量最大的网盘产品,至今发展已有4年,总用户数超4亿,为了让用户有着更好的使用体 ...
- 【零售小程序】—— webview嵌套web端项目(原生开发支付功能)
index → index.wxml 套webwiew // url 活动url bindmessage 接收信息 <web-view src='{{url}}' bindmessage='m ...
- clipboard.js 实现web端---> 复制到剪切板功能
package.json 中: 添加clipboard 依赖 "dependencies": { "vue": "^2.2.2", &quo ...
- web端项目如何测试
1.是否支持各种网络 2.网络如果演示能否正常加载 3.加载时断网还能加载出来么 4.浏览时断网页面是否保持 5.是否兼容各种不同的浏览器 6.不同的浏览器加载出的页面是否一致 7.页面效果如何 8. ...
- 关于 Eclipse中的Web项目 部署的文件位置 查看jsp源码的部署位置
使用 eclipse 开发web项目 会默认 部署在 工作目录下: .metadata\.plugins\org.eclipse.wst.server.core\tmp0\wtpwebapps 在这里 ...
- next.js、nuxt.js等服务端渲染框架构建的项目部署到服务器,并用PM2守护程序
前端渲染:vue.react等单页面项目应该这样子部署到服务器 貌似从前几年,前后端分离逐渐就开始流行起来,把一些渲染计算的工作抛向前端以便减轻服务端的压力,但为啥现在又开始流行在服务端渲染了呢?如v ...
随机推荐
- 大数据和Hadoop生态圈
大数据和Hadoop生态圈 一.前言: 非常感谢Hadoop专业解决方案群:313702010,兄弟们的大力支持,在此说一声辛苦了,经过两周的努力,已经有啦初步的成果,目前第1章 大数据和Hadoop ...
- 程序媛也话Android 之 自定义控件(垂直方向滑动条)
Android里已经有足够多的控件供开发者使用,但有时候我们还是会想要一些不一样的东西,比如一些UI特效,比如一些3D动画,今天就讲讲比较basic的东西:自定义控件. 1.效果图 如果项目里需要一个 ...
- 10-18 noip提高组模拟赛(codecomb)T2贪心
T2:找min:一直找最小的那个,直到a[i]-x+1小于0,就找次小的,以此类推: 求max,也是一样的,一直到最大的那个,直到次大的比之前最大的大,就找次大的: 这个模拟,可以用上priority ...
- Restful?
为什么要Restful?为什么不Restful? 本随笔不说为什么要Restful,只说为什么不Restful.首先Http是超文本转移协议而不是控制协议.通常文档中也会使用“资源”来指代超文本. ...
- WCF MSMQ
基于WCF MSMQ 的企业应用解决方案 最近研究了一下基于MSMQ的WCF应用,从书上.网上查了很多资料,但始终没能彻底理解WCF-MSMQ的工作原理,也没能得到一个合理的应用解决方案.索性还是 ...
- Power Designer导出实体类和NHibernate xml文件
Power Designer导出实体类和NHibernate xml文件 今天研究了一下通过PowerDesigner生成实体类和NHibernate所需要的xml文件,方法是通过Power Desi ...
- vm_write
#include <stdio.h> #include <stdlib.h> #include <unistd.h> #include <sys/types. ...
- 对类sizeof的时候
sizeof一个类的时候,都什么会被计算?静态成员会被计算进来么?如果这是一个子类,它的父类成员会被计算么? #include<stdio.h> #include<string.h& ...
- javascript闭包1
javascript闭包 在学习javascript闭包之前,需要先了解一下"作用域链". 每一段javascript代码都有一个与之关联的作用域链(scope chain),这个 ...
- IIS日志分析的作用
站长都知道有ISS日志,可是有很少人去关注它,也许你觉得在一些站长工具里面我们就能找到我们想要的工具,哪你就错了,我们的网站被收入靠的是蜘蛛,想要真正了解蜘蛛,就一定要好好重视iss日志分析,为什么这 ...