第一节 创建项目
现在用cocos2dx3.11版本写一个小游戏,首先创建项目,在终端里输入如下指令:
cd/Users/xiaosong1531/Desktop/cocos2d-x-3.11.1/tools/cocos2d-console/bin
进入到bin目录之后,输入创建项目的指令:
cocos newCatchFishLua –p com.yuting.CatchFishLua –l lua –d ~/Desktop
然后在桌面上就创建了CatchFishLua这个项目。打开项目的文件在这个文件夹里的:
CatchFishLua/frameworks/runtime-src/proj.ios_mac/CatchFishLua.xcodeproj,双击这个文件,即可打开。
为了前期调试编译方便快捷,我们选择如下进行编译(先不选择ios,ios编译有点慢)
编译之后,运行,效果如下:
这样,一个项目就运行成功了。接下来,看一下项目的组成结构(如下如所示):
之后我们所用的资源全都放在res文件夹下,我们所创建的类基本上都存放在views文件夹下。
关于这个项目是怎样运行的,我大概说一下:从2.x版本转过的同学,一般都是找AppDelegate文件,从lua创建的这个项目中,也有AppDelegate文件,看下面代码:
这样我们找main.lua就好了。
第二行和第三行是添加资源搜索目录,所以我们可以直接把资源和文件添加到res和src目录下。
第十三行是执行main函数,所以就调用了require(“app.MyApp”):create():run()
在lua中,文件的路径使用”.”,而不使用”/”。在app文件夹下有MyApp.lua文件,这个文件返回MyApp,它是继承mvc文件下的AppBase文件,而AppBase文件只是一个普通的类,在默认的类里,有三个函数:
ctor(构造函数),new函数,create函数。世界上create函数里调用的就是new函数,而new函数里又调用了构造函数。之后,调用run()
在mvc下的ViewBase.lua文件中:
这样就运行了一个场景,而场景的内容就是MainScene.lua文件中设定的。
这是这个默认创建项目的运行流程。当然,在我们实际项目中,可能不按这个流程做,所以接下来,就直接在main函数里运行自定义的场景。
首先,在跟MainScene.lua同一级目录下,创建ClogonLayer.lua文件,并在这个文件中写入如下基本内容:
local size =cc.Director:getInstance():getVisibleSize()
local ClogonLayer =class(“ClogonLayer”,function()
return cc.Scene:create()
end)
localClogonLayer:create()
local scene = ClogonLayer:new()
scene:addChild(scene:createLayer())
return scene
end
localClogonLayer:createLayer()
local layer = cc.Layer:create()
local label =cc.Label:createWithSystemFont(“Hello Lua”,“Arial”,32)
label:setPosition(cc.p(size.width/2,size.height/2))
layer:addChild(label)
return layer
end
return ClogonLayer
写到这里,这个最基本的场景就写完了,接下来,在main函数中,我们不采用系统的require(“app.MyApp”):create():run()。
换成我们自定义的场景:
local clogonLayer =require(“app.views.ClogonLayer”)
local clogonScene =clogonLayer.create()
cc.Director:getInstance():runWithScene(clogonScene)
然后运行,我们就会看到运行在屏幕上就是我们自定义的场景。
下面我们来修改一下屏幕的大小,也就是分辨率。
在我的项目中,我的分辨率是固定不变的,也就是1280*720
在项目下的config.lua中,将width改为1280,height改为720,autoscale全部改为SHOW_ALL即可。
原文链接:https://www.f2er.com/cocos2dx/339416.html