cocos入门要多久,coco入职流程

http://www.itjxue.com  2023-01-09 12:14  来源:未知  点击次数: 

自学游戏开发需要学多久

半年。开发软件和开发游戏完全是两个不同的方向,就拿开发游戏来说,不同的游戏引擎所使用的编程语言也是有区别的,比如Unity用的是C#。

游戏开发需要学习的专业知识比较多。除了基础的Unity引擎知识,现在的游戏还会涉及一些VR技术等。除此以外,有些游戏公司还会要求游戏开发工程师具备一定的策划能力。

学习的先后顺序:

1、首先是C++语言。

2、只是做windows方面的游戏学习,可以学习下DirectX,这个很方便在windows下做游戏开发。

3、如果想制作跨平台游戏,建议学习下opengl/opengles,这是个很强大很专业的图形接口,因为很多平台支持所以适合跨平台游戏制作使用。

4、想学习 3d 游戏并迅速工作,建议学习 u3d 引擎、ue 引擎这些游戏引擎,有了以上的基础学习这些引擎也可以理解的更深入,u3d 还会用到 c# 与 js 语言。

cocos主程要多久

需要一个月。

双击main.fire文件,在层级管理器可以看到它的结构,根节点是一个Canvas,点击Canvas节点,在右边的属性面板可以看到Canvas组件有DesignResolution属性,作为屏幕适配的尺寸。例如设置为1334x750,那么美术出资源时一屏界面的大小就是这个尺寸。不同的手机屏幕引擎自动做等比例缩放,具体缩放倍数,当勾选FixWidth表示界面的宽缩放到跟实际屏幕一样,当勾选FixHeight表示界面的高缩放到跟实际屏幕一样。另外一边相应等比例缩放,可能小于屏幕大小而出现黑边,也可能大于屏幕而被裁剪,这些可能都不是我们自身想要的。

学Cocos2d-x,需要掌握多少C++知识?大概学多久可以做出一个游戏

其实cocos你可以选择c++,js,lua任意一种语言开发。

大多数公司都是lua,现在也有很多用的js因为可以出h5版本游戏。所以如果自己要做游戏的话先看看选择哪种语言。不过我自己写游戏用的c++,公司用的lua。从学习难度上说,我觉得c++是最难的,剩下的lua和js我觉得相对c++学习会容易一些。不过如果要从js和lua选择的话,我建议用js来开发,因为前端html页面很多也用到js。

如果你一定用c++开发,差不多半月学习c++基础(游戏一般语法基础就够了,游戏难点主要还是算法上)。然后1个月熟悉下引擎的环境和API,写写demo。

游戏引擎的控件掌握差不多了,你就可以根据自己需求写一些小游戏了。

CocosCreator教程(入门篇)

自动释放资源: 切换场景后,上一个场景中的资源,从内存中释放。

延迟加载资源: 意味着不用等待所有资源加载完毕,才显示场景。(快速切换场景,资源陆续在画面显示)

普通图,子层为一张spriteFrame。

创建方式:拖拽场景节点,到资源管理器。

精灵图,子层为多张spriteFrame。(精灵图合成软件:TexturePacker、Zwoptex)

打包时,将所在目录中的所有碎图,合成为图集。

数字为内容的图集。

动态字体:.ttf

位图字体:.fnt + .png(存在于同一目录)

小型动画

模式: web audio、dom audio

操作流程:

(1)导出:文件 = 资源导出,选择 .fire场景文件,输出assets目录的 .zip压缩包。

(2)导入:文件 = 资源导入,选择压缩包源路径、解压路径,输出assets目录内容。

基于size mode,尽量去除spriteFrame无像素的部分,减小图片尺寸。

作用: 用于变换、子节点定位基准。

对摄像机、渲染组件的了解。

对widget、layout等UI组件的了解。

(1)创建动画的基本流程

(2)时间曲线(双击动画线,进入编辑窗口)

(3)事件管理(双击游标、加减按钮控制参数个数)

(4)脚本控制

碰撞组件(普通碰撞)

(1)editing——是否为编辑模式

(2)regenerate points——计算图形边界,自定生成控制点,数值为控制点的生成密度 / 准确度

(3)ctrl + 点击——删除控制点

(4)组件类型:矩形、圆形、多边形

(5)设置碰撞组(项目 = 项目设置 = 分组设置):

制定分组 = 匹配分组 = 碰撞组件所在节点上,设置所属分组

(6)脚本控制

Box2D物理引擎(高级碰撞)

(1)audioSource组件

(2)脚本控制

(1)定义 CCClass

(2)实例化

(3)判断类型

(4)构造函数(ctor)

(5)实例方法

(6)继承(extends)

(7)父构造函数

(8)完整声明属性

properties常用参数

(1)获得组件所在的节点

(2)获得其它组件

(3)获得其它节点及其组件

(4)访问已有变量里的值(通过模块访问)

(1)节点状态和层级操作

(2)更改节点的变换(位置、旋转、缩放、尺寸)

(3)颜色和不透明度

(4)常用组件接口

cc.Component 是所有组件的基类,任何组件都包括如下的常见接口:

(1)创建新节点

(2)克隆已有节点

(3)创建预制节点

(4)销毁节点

(1)加载和切换

(2)通过常驻节点,进行场景资源管理和参数传递

(3)场景加载回调

(4)预加载场景

(1)资源属性的声明

(2)静态加载(在属性检查器里设置资源)

(3)动态加载

(4)加载远程资源和设备资源

(5)资源的依赖和释放

(1)监听事件

(2)关闭监听

(3)发射事件

(4)派送事件

(5)事件对象(回调参数的event对象)

(1)鼠标事件类型和事件对象

(2)触摸事件类型和事件对象

(3)其它事件

(1)动作控制

(2)容器动作

(3)即时动作

(4)时间间隔动作

(5)动作回调

(6)缓动动作

(1)XMLHttpRequest——短连接

(2)WebSocket——长连接

对象池的概念

在同一场景中,需要多次进行节点的生成、消失时,假如直接进行创建、销毁的操作,就会很浪费性能。因此,使用对象池,存储需要消失的节点,释放需要生成的节点,达到节点回收利用的目的。

工作流程

(1)初始化对象池

(2)从对象池请求对象

(3)将对象返回对象池

清除对象池

Unity和Cocos到底存在着怎样的区别

前者叫简单粗暴,会ppt就能很快精通,没有关于代码整理的文献,有也不是中文,如果想快速做国产卡牌类,梦幻西游(大家都用它)什么的可以选他,不需要会编程,用起来就像maya什么的。

后者学算法,只用VS2017RC(17G)可以巩固CPP,也不难,不过比unity多一点东西,那就是连编程时什么都不知道的新人需要花几小时看完最新基于VS2015平台的CPP入门的书籍。当然他也有cocosCreator,界面看起来和unity差不多。

因为3D算法很早就成熟了,所以cocos也支持3D,不过他的cocosCreator不好弄,主要依靠代码,然而代码相当的简单(unity的编程过程更简单)。然而unity有很多插件,太多了,还是你懂的,所以unity的傻瓜式简单游戏生成时相当的速度。

对于行业来说直接用unity是不可能学到好多算法的,如果是在校大学生,推荐马上搞定cocos,在上unity,你会比现在行业就业人员强很多倍,直接上手unity的话(呵呵,各大平台讲的都是“点几下就够了”,上市书籍也是讲“再点一下就够了”),你要深入全靠你的英语和翻墙堆起来,因为大局域网的限制,很难找到适合你unity进阶的平台,你可能会没有继续深入的欲望。不是说cocos在国内有很多资料,因为国内哪来资料啊,因为他入门就需要接触很多,所以不需要刻意去找。

区别啊,不要想太多了,都可以用JS(阅读性很低),UnityC#,cocosCPP其实这两个差不多的,与其说,会cocos就能马上上手unity,再说简单点,能用cocos写游戏=精通U3D,因为U3D精简了很多不需要写的代码和众多插件。

接下来是对行情,不难说,U3D和尖叫寒霜比渲染就是勒色,不管什么方面都别去比了,所以国内的人很清楚自己的实力,不和国外大牛比3D,就在国内做点渣渣,不过这些渣渣很快就难以生存了,如果要另辟蹊径,就做lowPloy风格或者其他艺术风格,仿油画,水粉,流体,可以很快突破重围,因为世界大多都那个水平,牛逼冲天的拖出来也就是一小堆。PS:尖叫寒霜很像U3D的界面了,都不难,但是没有文献,不过各大引擎有各子的专场渲染,渲染节省了很多时间,你想开发什么样的游戏,就选你需要的引擎就够了。

就业分析,可以选择一个人做独立游戏,可以选择进入公司。独立游戏需要高水准,编程必须会,会配音,懂剧本,会艺术,这些很多但是都不难,因为网络时代,资料难找么。学就入手cocos,如果去普通公司,会ppt再随便报个垃圾培训班就可以找到,度日简简单单轻松写意。想去暴雪,也不是不可以,但是大公司都有一个尿性——团队合作,这和比较C和U没关系了不说了。

基层的区别:cocos擅长2D,unity擅长动画风格3D,尖叫适合仿真,

难度系数:C入门中,U入门简单,C进阶中,U进阶难,C精通难,U精通上青天。

面对像:国产,入门即可。独立游戏,自己看着办。

说点不关于问题的回答,纯新人(不会编程,游戏一点都不懂的人)的学习过程,

unity入门(点一下就够了,接触游戏引擎原理)-processing(面向新人学习编程的语言(冷门,国内艺术生再用),可视化,基本上看完了=会游戏引擎的基础)-cocos入门-unity进阶-unity精通-cocos精通,做到unity精通那一步就让你可以进暴雪,跳过了cocos,那时候转unreal和cry也是简单的,上面都是互通的。

不想说了,因为会编程就不会问这个问题了,买本编程的书吧。

回答问题的时候我在吃饭,因为肠胃不好需要吃得慢。

自学cocos2d js游戏开发应该按什么步骤进行

跟你简要说一下我的自学路,以免你走弯路

背景:

有工作,而且很忙;在不影响工作基础上用业余时间鼓捣(经常会因为工作耽搁学习进度);基本没技术背景(初中qbasic、高中pascal半吊子),大学文科,工作也不是搞代码。因此我感觉我的自学路跟你还是挺契合的。

1

两年前的一天,决定要做独立游戏制作人。选定引擎cocos2d,开始学习objective-c语言;(如果你打算只在iOS平台开发可以学obj-c配合cocos2d或者sprite kit;如果打算跨平台就要用cocos2d-x和c++了;当然unity什么的也不错但是我还没尝试过,一直很向往)

2

我跳过了iOS程序开发(似懂非懂看完了斯坦福那一系列的教学视频),结合当时情况直接选择了cocos2d引擎,这时开始接触 @吴一刀 推荐的博客;我主要看的是子龙山人子龙山人 - 博客园、Ray WenderlichRay Wenderlich、Himi黑米GameDev街区这些博客里最基本的例子,知易那个以我当时的水平还看不懂。

3

尝试开始设计自己的简单游戏,我做打地鼠!当然比教学例子里的打地鼠复杂多了

4

这个过程中发现自己懂的实在是不够,所以又开啃这本书:Learn cocos2d 2 by Steffen Itterheim Andreas Low

5

慢慢的发现需要一些趁手的工具和编辑器,并发展出一套自己构建于cocos2d之上的游戏设计架构。我目前的情况是这样:

关卡编辑我使用plist文件配合自己写的类;

sprite sheet使用TexturePackerTexturePacker;

动画/UI编辑最初自己手写太累,后来选择了cocosbuilder,请注意现在这个软件已经停止维护,转而引导用户使用SpriteBuilderSpriteBuilder(域名都做了自动跳转;SpriteBuilder我木有研究过,建议你研究一下)。

粒子编辑我自己还没实际用到,如果真正需要我感觉cocosbuilder的够我用的。//更新:后来用到了ParticleDesigner和cocosbuilder两个软件的粒子编辑混搭

我当时遇到的一个大麻烦是如何让cocosbuilder、cocos2d版本互相兼容且cocosbuilder无问题。大概情况是这样:cocosbuilder2.1和cocos2d-iphone2.0及2.1版本都不协调怎么办?;What version of Cocosbuilder and Cocos2d-iphone should I choose?

目前我使用的cocosbuilder 2.1版本(渐变层有bug、并且很可惜动画播放完没有触发消息的机制,我只好把每个动画时长都手动记录一下自己处理)

======3月12日更新======

在 @GarfieldKwong 指点下发现这个版本动画播放完是可以触发消息机制的,更高级版本3.x支持的效果应该是在动画中就加入callback的关键帧

新技能get√

具体代码可见下面学习案例的第一个例子里Explosion部分

=====================

cocosbuider的学习可以看两个例子Creating a Game with CocosBuilder;Introduction to CocosBuilder;然后就是多用多尝试。

6

整个学习过程要学会查资料、学会寻求帮助,我主要用的stackoverflow(话说刚刚发现stackoverflow的reputation喜过15,终于可以投票了:)

在学习过程中得到了子龙山人(我认为本尊是这位 @屈光辉 )、LearnCocos2d作者Steffen、 @kubisoft 以及众多网上朋友的帮助,再次表示感谢。

7

硬件及开发者资格:看完c++开始看obj-c,这个过程一直是使用的vmware虚拟机安装的mac系统写程序;然后入手一个最便宜的mac pro、以及iPhone,尝试玩各种游戏;从看c++开始大约过了1年半(已经有非常简陋的游戏demo)才真正购入iOS开发者资格并开始真机测试。

8

尝试过的一些其他工具、各种弯路和坑、以及发散内容:

可以拖拽方式写代码的stencyl Stencyl: Make iPhone, iPad, Android Flash Games without code;

最初学的不是ojc-c而是谭浩强老师的c++程序设计(虽然有人不喜谭老师,但那书是中文的让我对面对对象程序设计有一些初步的概念,再看英文的obj-c不至于太摸不着头脑,反正手头正好有这么一本买了6年没看的c++。。。);

尝试过Tiled Map Editor但自己目前的坑没有用到;

尝试过一点物理引擎和粒子,但自己目前的坑没有用到;现在粒子用到了,做了火焰等效果,也挺美的;但是一定要注意CPU占用优化,内存方面我最低支持4S没遇到大问题

学习音乐制作,这个我小时候学琴一直也喜欢音乐所以有一点点底子,如果没有基础可能上手有门槛;开始用的软件LMMS,但是音源插件在64位系统的问题我一直没解决掉时间精力也不多,所以是暂时停滞了;最近发现Garage Band可能也可以写歌;另外还试过一个很有历史的微软的音乐自动编辑器,很好玩,用来做背景音乐也不错。

入手手绘板学画画(这中间纠结了好久才决定用位图不用矢量图),如果你能找到热爱游戏的美术同学一起搞那最好不过。但是我一直对画画心痒难搔。。。所以入了这个深坑,晒一晒:

转载

z

(责任编辑:IT教学网)

更多