2.1创建第一个项目
从本节开始我们将详细的来开始学习Cocos Creator的开发基础与操作。我们先来创建一个项目,打开CocosDashboard, 选择”新建”, 选3D游戏模板”Empty(3D)”, 输入项目的名字(classGame)与路径(D:\Home\workspace),(注意项目的名字不要用中文与空格,要用英文缩写,同时项目的路径不要太深,否者打包发布的时候可能会报错), 点击”创建”,创建生成一个标准的3D空项目出来。
对啦!这里有个游戏开发交流小组里面聚集了一帮热爱学习游戏的零基础小白,也有一些正在从事游戏开发的技术大佬,欢迎你来交流学习。
创建完成以后, Cocos Creator会打开我们刚才创建的项目,这样我们就可以基于Cocos Creator做游戏开发了。首先我们要分以下项目开发的文件夹,将游戏开发中的文件与资源进行分类,一般的我们会分成3类: 游戏资源,游戏场景,游戏代码。通常我们会用一些约定俗成的名字,比如游戏资源用AssetsPackage, 游戏场景Scenes, 游戏代码用Scripts, 当然你可以更具自己的习惯来命名,但是这里一定不要用中文+空格。如下图,我们先把Assets文件夹进行分类:
AssetsPackage:用来存放游戏资源;
Scripts: 用来存放游戏的业务逻辑代码;
Scenes: 用来存放游戏的场景;
创建完成后我们来看项目的变化,打开项目所在的文件夹,在”asset”上右键,选择”在资源管理器中显示”, 层级管理器中的”assets”对应工程项目文件夹assets。
刚才在层级管理器中创建的AssetsPackage, Scrtips, Scenes, 也在asset文件夹下,如图:
层级管理器中的internal是引擎内部的资源与文件,在” internal”上右键选择”在资源管理器中显示”, 就会打开引擎内部所带的资源文件夹路径,如图:
2.2 创建游戏场景
Assets文件夹分好以后,我们先创建一个场景, 什么是游戏场景呢?我们可以理解为是一个容器,所有要被游戏引擎渲染的物体,都要放到这个容器当中,所以我们要创建一个或多个这样的容器来放游戏物体。所以游戏场景就是存放游戏物体的容器。我们开发游戏时要显示一个物体,就是将一个物体创建到游戏场景中。创建物体到游戏场景中我们可以通过编辑器直接拖入,也可以通过代码来进行创建,后面我们还会更加深入的讲解,现在先通过编辑器来拖动一些物体放游戏场景里面。
如果当前打开的场景,没有保存对应的场景文件(就像打开word一样,当前没有保存为对应的word文件)我们直接ctrl+s保存,就会提示我们保存场景文件,我们输入场景的名字,就可以创建一个场景出来。步骤如下:
Ctrl+s保存以下当前没有保存的场景,
这样main场景就创建出来了。如果当前的编辑的场景已经有对应的场景文件,我们要新建一个场景,可以通过菜单”文件/新建场景”来创建一个场景, 然后再重复上面的步骤ctrl+s保存当前场景到一个文件,这样,又创建了一个新的创景,每次打开的项目时,上一次编辑的场景内容由于保存到场景文件中了,所以下次打开还在。
创建一个场景后,场景中默认有两个物体,一个是平行光源Main Light,一个是摄像机Main Camera,平行光源可以给游戏世界提供光源,摄像机用来拍摄游戏画面,我们看到的游戏画面,都是从摄像机的角度”拍摄”出来,然后显示到屏幕上,所以如果没有摄像机,我们是无法显示画面的。
2.3 创建与显示第一个3D物体
场景创建完成以后,我们创建一个3D物体到游戏场景中,游戏引擎内置了一些标准的几何体,比如立方体(Cube), 球体(Sphere)等,所以我们先创建几何体放场景中显示出来,我们来创建一个Cube吧,在场景编辑器中,鼠标右键”创建/3D对象/Cube立方体”,场景中会创建一个Cube的节点出来,ctrl + s保存以下当前的场景改变,双击以下当前的的”Cube”节点,这样编辑器中央就会对准 刚才创建出来的Cube物体,如下图所示。
点击场景中的摄像机节点,在编辑器的右下角会有一个小窗口的摄像机效果预览,表示这个摄像机拍摄出来的画面的效果,这个效果会显示到屏幕设备中。如下图所示:
2.4游戏预览运行
开发了一些项目与功能后,我们要运行一下效果,调试一下程序,我们可以使用cocos creator 直接来预览运行项目。
(1) 选择预览模式,有”浏览器预览,编辑器预览,模拟器预览”三种模式,一般我选浏览器预览, 如图:
(2) 选择预览运行的游戏场景, 点击下拉框,会显示“当前场景”与目前项目中有的场景, 你要预览哪一个,你就选择就可以了,一般我们选”当前场景”,这样你编辑的是哪个场景,预览运行的就是哪个场景。
(3) 点击运行, 点击运行按钮可以预览运行。效果,
(4) 手机预览运行,Cocos Creator会基于局域网假设一个webserver, 然后生成一个http的连接条码,使用手机扫码,就可以在手机上预览运行游戏效果,但是前提是手机与电脑使用同一个局域网络。如下图所示
今天的分享就到这里,关注我们学习更多的游戏开发教程。