egret物件池使用

2021-08-02 18:31:50 字數 733 閱讀 9545

/** 物件池*/

class displayobjectpool

/*** 作為物件池的詞典dict

*/private objpooldict:any = {};

// singleton

private static instance:displayobjectpool;

public static getinstance():displayobjectpool

return this.instance;

} /**

* 向物件池中放入物件,以便重複利用

*/public push(oldobj:object):void

if((this.objpooldict[objname]).indexof(oldobj) == -1)

} /**

* 從物件池中取出需要的物件

* @param targetobj 需要的物件類類名,沒必要必須是類例項名 類名就可以

* @return 取出的相應物件

* */

public pop(targetobj:object):any

let objclass:any = egret.getdefinitionbyname(objname);

let obj:object = new objclass as object;

return obj;

}}

Egret物件的顯示

前面我們已經整理了egret 結構,接下來我們就一起學習一下在egret中如何把物件展示在場景中。要在場景中展示物件元素,離不開座標資訊。所以第一部分我們首先需要掌握座標系的概念。一般來說,在遊戲中分為世界座標系和相對座標系。所謂世界座標系,就是我們在新增乙個元素到場景中時,這個元素相對stage的...

物件池的使用

1 乙個模板類的物件池,template class objpool objpool void bool init int nmaxcount 10 t newobj void 取得pos的物件 同時在obj中記錄在pool中的index pool unlock return pobj void d...

Cocos Create中使用物件池

1.先宣告乙個預製體 cc.class 2.建立乙個管理節點物件的物件快取池,並且將物件存入物件快取池中,暫設數量為5 cc.class onload 3.寫乙個建立物件的方法,首先判斷物件池中是否存有空閒物件,如是則直接取出物件,沒有則需要建立。creatplane parentnode,pos ...