下载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端项目部署的更多相关文章

  1. 怎样将本地web数据库项目部署到腾讯云服务器上?

    怎样将本地web数据库项目 部署到腾讯云服务器上? 1.本地计算机的工作: 1.1用eclipse或者myeclipse做好一个web项目,可以只做一个数据库的增删改查,本地部署到Tomcat服务器, ...

  2. 用js实现web端录屏

    用js实现web端录屏 原创2021-11-14 09:30·无意义的路过 随着互联网技术飞速发展,网页录屏技术已趋于成熟.例如可将录屏技术运用到在线考试中,实现远程监考.屏幕共享以及录屏等:而在我们 ...

  3. linux--后端项目部署

    nginx + uwsgi + crm + mysql + virtualenv + supervisor项目部署 1.后端整起,用uwsgi启动crm 2.创建一个新的虚拟环境,用于运行crm新业务 ...

  4. 百度网盘web端项目总结

    项目背景 网盘作为一个在线备份存储,共享文件的工具类产品,给人们的工作和生活带来了很大的帮助和便利.百度网盘是目前国内使用量最大的网盘产品,至今发展已有4年,总用户数超4亿,为了让用户有着更好的使用体 ...

  5. 【零售小程序】—— webview嵌套web端项目(原生开发支付功能)

    index → index.wxml  套webwiew // url 活动url bindmessage 接收信息 <web-view src='{{url}}' bindmessage='m ...

  6. clipboard.js 实现web端---> 复制到剪切板功能

    package.json 中: 添加clipboard 依赖 "dependencies": { "vue": "^2.2.2", &quo ...

  7. web端项目如何测试

    1.是否支持各种网络 2.网络如果演示能否正常加载 3.加载时断网还能加载出来么 4.浏览时断网页面是否保持 5.是否兼容各种不同的浏览器 6.不同的浏览器加载出的页面是否一致 7.页面效果如何 8. ...

  8. 关于 Eclipse中的Web项目 部署的文件位置 查看jsp源码的部署位置

    使用 eclipse 开发web项目 会默认 部署在 工作目录下: .metadata\.plugins\org.eclipse.wst.server.core\tmp0\wtpwebapps 在这里 ...

  9. next.js、nuxt.js等服务端渲染框架构建的项目部署到服务器,并用PM2守护程序

    前端渲染:vue.react等单页面项目应该这样子部署到服务器 貌似从前几年,前后端分离逐渐就开始流行起来,把一些渲染计算的工作抛向前端以便减轻服务端的压力,但为啥现在又开始流行在服务端渲染了呢?如v ...

随机推荐

  1. Markdown的使用

    原文:http://wowubuntu.com/markdown/ git:https://gitcafe.com/riku/Markdown-Syntax-CN/ 记录一下Markdown的使用,I ...

  2. TreeMap与TreeSet

    TreeMap与TreeSet TreeSet底层则采用一个NavigableMap来保存TreeSet集合的元素.实际上,由于NavigableMap只是一个接口,因此底层依然是使用TreeMap来 ...

  3. C#使用文件监控对象FileSystemWatcher 实现数据同步

    在C#使用文件监控对象FileSystemWatcher 实现数据同步 2013-12-12 18:24 by 幕三少, 352 阅读, 3 评论, 收藏, 编辑 最近在项目中有这么个需求,就是得去实 ...

  4. [Usaco2007 Dec]穿越泥地[bfs][水]

    Description 清早6:00,Farmer John就离开了他的屋子,开始了他的例行工作:为贝茜挤奶.前一天晚上,整个农场刚经受过一场瓢泼大雨的洗礼,于是不难想见,FJ 现在面对的是一大片泥泞 ...

  5. seajs代码

    打包并压缩seajs代码 背景 seajs是一款优秀的模块开发插件,但是当我们使用它来进行模块化开发的时候,由于它的每个模块的加载都会进行一次http请求,那么当模块数量倍增的时候,会拖慢页面的加载速 ...

  6. Please Send Me a Card

    Please Send Me a Card 发现身边很多程序员都能看懂英文技术文章的60%-80%内容,但大家都有一个毛病,就是不会说,不会写作,在逛英文技术社区的时候,想发表点什么评论,总担心自己写 ...

  7. c语言:快速排序

    练手代码(分治实现): input: int input[] = {12,6,3,9,10,6,2}; output: ======================= len = 7 input[0] ...

  8. jQuery Colorbox是一款弹出层

    jQuery Colorbox使用教程 jQuery Colorbox是一款弹出层,内容播放插件,效果极佳,最关键的是大小只有10KB,当然我主要是用来弹出图片啦,(之前介绍过jquery Fancy ...

  9. CNN for Visual Recognition (02)

    图像分类 参考:http://cs231n.github.io/classification/ 图像分类(Image Classification),是给输入图像赋予一个已知类别标签.图像分类是计算机 ...

  10. SVN中Branch的创建于合并

    SVN中Branch的创建于合并 在使用源代码版本控制工具时,最佳实践是一直保持一个主干版本.但是为了应付实际开发中的各种情况,适时的开辟一些分支也是很有必要的.比如在持续开发新功能的同时,需要发布一 ...