Quick Cocos2d x 捋一捋框架流程

2021-06-26 11:36:42 字數 3831 閱讀 9237

比如很多學習者甚至不知道enterscene("mainscene") 為什麼裡面可以是個字串?當然如果你已經很熟悉框架了,這篇文章就可以跳過了,呵呵。

下面開始吧!

一、前置準備

2、關於ide,我使用的ieda,配置匯出的api**提示,還是挺方便的。

二、新建乙個工程 1

require().new():run()

12

class(

return

mvc   

1

2

3

end

1

2

3

4

5

6

7

8

function cls.new(...)

local instance = cls.__create(...)

-- copy fields fromclassto native object

fork,v in pairs(cls)doinstance[k] = v end

instance.class= cls

instance:ctor(...)

returninstance

end

可以看到,在class的實現方法裡面,給每個建立的類宣告了乙個new()方法,方法裡面呼叫了ctor()構造方法(ctor只是個名字,所以不是有些人認為的new了之後,當然會呼叫構造方法,lua沒有類,只是我們模仿了類)

這時候呼叫了 1

2

3

4

ccfileutils:sharedfileutils():addsearchpath("res/")

self:enterscene("mainscene")

end

所以進到了mainscene.lua。 1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

20

21

22

23

24

25

26

27

28

29

30

31

-- 宣告類

class(

--- 類構造方法

--

end

--- 對應cpp版的staticcreate()方法

--

new()

end

--- 你自己的方法

-- @param self

--

local function launchmainscene(self)

ccfileutils:sharedfileutils():addsearchpath("res/")

self:enterscene("mainscene")

end

--- init 方法

--

-- add code here

launchmainscene(self)

end

1

修改為: 1

2

require()

這樣你是不是更容易理解了,哈哈。

三、mainscene.lua

enterscene("mainscene") 為什麼可以切換場景? 1

2

3

4

5

6

time, more)

local scenepackagename = self. packageroot ..".scenes.".. scenename

local sceneclass = require(scenepackagename)

local scene = sceneclass.new(unpack(totable(args)))

display.replacescene(scene, transitiontype,time, more)

end

1

好了,其他的應該按照上面的思路基本都能知道為什麼了。我就不一一枚舉了。

****:

QUICK COCOS2DX建立新專案

建立新專案之前,確保已經正確設定了quick cocos2dx root環境變數 啟動 終端 應用程式,然後進入需要放置新專案的目錄 cd desktop執行create project.sh命令,並指定專案的 package name quick cocos2dx root bin create ...

quick cocos2d x的Image使用方法

image的使用方法相對簡單。quick cocos2d x中可以指定該image是否使用9宮圖來進行渲染。不使用9宮格的image建立 local img cc.ui.uiimage.new test.png 使用9宮格的image建立 local img cc.ui.uiimage.new te...

Quick Cocos2d x 觸控機制詳解

cocos2d x 原本的觸控機制存在一些限制,在使用中需要開發者做不少額外的處理。而且 cocos2d x 的觸控事件是按照目標的優先順序來分派的,而不是按照目標的顯示層級來分派。針對這個問題,quick cocos2d x 提出了自己的一套觸控機制。本文詳細介紹了這套新機制的實現原理和用法。以下...