劍孤寒的小站
人生的價值不是用時間,而是用深度去衡量的!
posts - 75, comments - 290, trackbacks - 0, articles - 0
導航
C++博客
首頁
新隨筆
聯系
聚合
管理
<
2010年5月
>
日
一
二
三
四
五
六
25
26
27
28
29
30
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
1
2
3
4
5
留言簿
(15)
給我留言
查看公開留言
查看私人留言
隨筆分類
Galaxy2D 游戲引擎發布(40)
Galaxy2D 游戲引擎教程(7)
Galaxy2D 游戲引擎擴展(8)
Lua(5)
游戲編程(20)
隨筆檔案
2017年3月 (1)
2017年1月 (1)
2016年11月 (1)
2016年3月 (1)
2015年11月 (1)
2015年8月 (1)
2015年7月 (1)
2015年6月 (1)
2014年9月 (1)
2014年8月 (1)
2014年3月 (1)
2014年1月 (1)
2013年9月 (1)
2013年7月 (2)
2013年6月 (3)
2013年5月 (1)
2013年4月 (2)
2012年12月 (2)
2012年10月 (1)
2012年9月 (2)
2012年7月 (1)
2011年12月 (1)
2011年10月 (3)
2011年9月 (4)
2011年7月 (1)
2011年6月 (1)
2011年5月 (2)
2011年4月 (1)
2010年9月 (1)
2010年5月 (3)
2010年4月 (2)
2010年3月 (1)
2010年2月 (2)
2010年1月 (11)
2009年9月 (3)
2009年5月 (2)
2009年4月 (1)
2009年1月 (1)
2008年12月 (1)
2008年11月 (1)
2008年10月 (6)
鏈接
搜索
最新評論
1.?re: Galaxy2D Game Engine 4.2 開發版 發布
評論內容較長,點擊標題查看
--劍孤寒
2.?re: Galaxy2D Game Engine 4.2 開發版 發布
Update:
◆隨機數添加創建生成器函數
◆隨機數添加Mersenne Twister算法隨機數生成函數
◆修改獲得/失去焦點偶爾收不到回調的bug
--劍孤寒
3.?re: Galaxy2D Game Engine 4.2 開發版 發布
評論內容較長,點擊標題查看
--wwdd
4.?re: Galaxy2D Game Engine 4.2 開發版 發布
Update (2016-8-1)
◆RichText超鏈接修改為抬起時才觸發事件
◆Shader添加讀取已編譯的二進制文件支持,并添加相關數據設置接口
--劍孤寒
5.?re: Galaxy2D Game Engine 4.2 開發版 發布
@baidwwy
你是一直都這樣還是用了上面那個dll才這樣
--劍孤寒
閱讀排行榜
1.?在Lua中使用枚舉型變量 (15653)
2.?Galaxy2D游戲引擎教程1 - Hello World(8054)
3.?在Lua中使用List (6806)
4.?Galaxy2D Game Engine 4.2 開發版 發布 (6397)
5.?Win7下ATI顯卡更新驅動程序打不開Catalyst Control Center的解決辦法(5938)
寫了個用shared_ptr管理游戲資源的幫助類
Posted on 2013-06-28 16:15
劍孤寒
閱讀(809)
評論(0)
編輯
收藏
引用
所屬分類:
Galaxy2D 游戲引擎擴展
用這個東東可以簡化一些引用計數方面的管理,不過從Get*()接口獲取的資源還是要先自己調一下AddRef()函數
class
CRefCountHelper
{
public
:
template
<
typename T
>
static
shared_ptr
<
T
>
Create(T
*
p)
{
shared_ptr
<
T
>
ptr(p, RefReleaseFunc());
return
ptr;
}
private
:
struct
RefReleaseFunc
{
void
operator
()(gge::ggeRefCounter
*
p)
{
if (p) p->Release();
}
}
;
}
;
用法如下:
//
假設以前有一段代碼是要載入一個texture到一個sprite上,例如下面這段代碼:
ggeTexture
*
tex
=
Texture_Load(
"
image.png
"
);
if
(
!
tex)
return
false
;
ggeSprite
*
spr
=
Sprite_Create(tex);
if
(
!
spr)
{
GGE_RELEASE(tex);
return
false
;
}
//
現在的寫法可以改成下面這樣,不用再去人肉Release了
shared_ptr
<
ggeTexture
>
tex
=
CRefCountHelper::Create( Texture_Load(
"
image.png
"
) );
if
(
!
tex)
return
false
;
shared_ptr
<
ggeSprite
>
spr
=
CRefCountHelper::Create( Sprite_Create(tex.
get
()) );
if
(
!
spr)
return
false
;
只有注冊用戶
登錄
后才能發表評論。
【推薦】100%開源!大型工業跨平臺軟件C++源碼提供,建模,組態!
相關文章:
寫了個用shared_ptr管理游戲資源的幫助類
2D骨骼動畫 Spine Render For Galaxy2D [Demo + 代碼]
Galaxy2D Game Engine 4.0 開發版 發布
TexturePacker 1.1 發布
寫了一個xls2xml轉換工具
Irrlicht For Galaxy2D
CEGUI Render For Galaxy2D
Galaxy2D 導出類到Lua模塊源代碼
網站導航:
博客園
IT新聞
BlogJava
博問
Chat2DB
管理
Powered by:
C++博客
Copyright © 劍孤寒
亚洲人成网站999久久久综合
|
久久久精品国产Sm最大网站
|
99久久99久久精品国产片
|
久久久久久a亚洲欧洲aⅴ
|
国产精品欧美久久久久无广告
|
亚洲欧美日韩精品久久亚洲区
|
午夜精品久久久久久99热
|
久久久精品午夜免费不卡
|
久久综合亚洲色HEZYO社区
|
中文字幕成人精品久久不卡
|
久久精品99无色码中文字幕
|
狠狠色婷婷久久综合频道日韩
|
狠狠色丁香久久婷婷综
|
伊人久久大香线蕉精品不卡
|
91精品国产综合久久久久久
|
色偷偷88欧美精品久久久
|
国产精品久久久亚洲
|
伊人久久大香线蕉综合热线
|
久久国产乱子精品免费女
|
中文字幕精品无码久久久久久3D日动漫
|
久久天天躁夜夜躁狠狠
|
99久久精品免费看国产免费
|
亚洲AV无码久久精品成人
|
久久综合伊人77777
|
久久久综合九色合综国产
|
浪潮AV色综合久久天堂
|
国产成人精品综合久久久久
|
久久久久综合国产欧美一区二区
|
国产精品免费福利久久
|
国产精品久久久久AV福利动漫
|
老男人久久青草av高清
|
久久香蕉国产线看观看猫咪?v
|
热99re久久国超精品首页
|
久久久久久亚洲精品成人
|
亚洲国产精品无码久久一线
|
国产精品美女久久福利网站
|
一本久久精品一区二区
|
超级97碰碰碰碰久久久久最新
|
国产精品成人久久久
|
久久天天躁狠狠躁夜夜avapp
|
日产精品久久久久久久
|