劍孤寒的小站
人生的價值不是用時間,而是用深度去衡量的!
posts - 75, comments - 290, trackbacks - 0, articles - 0
導航
C++博客
首頁
新隨筆
聯系
聚合
管理
<
2010年1月
>
日
一
二
三
四
五
六
27
28
29
30
31
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
6
留言簿
(16)
給我留言
查看公開留言
查看私人留言
隨筆分類
Galaxy2D 游戲引擎發(fā)布(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 開發(fā)版 發(fā)布
評論內容較長,點擊標題查看
--劍孤寒
2.?re: Galaxy2D Game Engine 4.2 開發(fā)版 發(fā)布
Update:
◆隨機數添加創(chuàng)建生成器函數
◆隨機數添加Mersenne Twister算法隨機數生成函數
◆修改獲得/失去焦點偶爾收不到回調的bug
--劍孤寒
3.?re: Galaxy2D Game Engine 4.2 開發(fā)版 發(fā)布
評論內容較長,點擊標題查看
--wwdd
4.?re: Galaxy2D Game Engine 4.2 開發(fā)版 發(fā)布
Update (2016-8-1)
◆RichText超鏈接修改為抬起時才觸發(fā)事件
◆Shader添加讀取已編譯的二進制文件支持,并添加相關數據設置接口
--劍孤寒
5.?re: Galaxy2D Game Engine 4.2 開發(fā)版 發(fā)布
@baidwwy
你是一直都這樣還是用了上面那個dll才這樣
--劍孤寒
閱讀排行榜
1.?在Lua中使用枚舉型變量 (15667)
2.?Galaxy2D游戲引擎教程1 - Hello World(8125)
3.?在Lua中使用List (6820)
4.?Galaxy2D Game Engine 4.2 開發(fā)版 發(fā)布 (6646)
5.?Win7下ATI顯卡更新驅動程序打不開Catalyst Control Center的解決辦法(5952)
寫了個用shared_ptr管理游戲資源的幫助類
Posted on 2013-06-28 16:15
劍孤寒
閱讀(816)
評論(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
;
只有注冊用戶
登錄
后才能發(fā)表評論。
【推薦】100%開源!大型工業(yè)跨平臺軟件C++源碼提供,建模,組態(tài)!
相關文章:
寫了個用shared_ptr管理游戲資源的幫助類
2D骨骼動畫 Spine Render For Galaxy2D [Demo + 代碼]
Galaxy2D Game Engine 4.0 開發(fā)版 發(fā)布
TexturePacker 1.1 發(fā)布
寫了一個xls2xml轉換工具
Irrlicht For Galaxy2D
CEGUI Render For Galaxy2D
Galaxy2D 導出類到Lua模塊源代碼
網站導航:
博客園
IT新聞
BlogJava
博問
Chat2DB
管理
Powered by:
C++博客
Copyright © 劍孤寒
AAA级久久久精品无码区
|
无码任你躁久久久久久
|
国产99久久精品一区二区
|
久久国产乱子伦精品免费强
|
欧洲性大片xxxxx久久久
|
亚洲香蕉网久久综合影视
|
91精品国产高清久久久久久国产嫩草
|
中文字幕久久亚洲一区
|
久久99精品久久久久久久久久
|
国产高潮久久免费观看
|
97精品依人久久久大香线蕉97
|
国产毛片久久久久久国产毛片
|
国产成人无码久久久精品一
|
久久精品夜色噜噜亚洲A∨
|
欧洲精品久久久av无码电影
|
国产亚洲美女精品久久久
|
少妇精品久久久一区二区三区
|
美女久久久久久
|
99精品久久久久久久婷婷
|
亚洲AV无码久久精品蜜桃
|
伊人久久国产免费观看视频
|
精品久久人人做人人爽综合
|
婷婷久久综合九色综合绿巨人
|
久久亚洲国产中v天仙www
|
国产精品一久久香蕉国产线看观看
|
激情综合色综合久久综合
|
亚洲国产精品热久久
|
精品国产乱码久久久久久郑州公司
|
精品久久人人爽天天玩人人妻
|
亚洲欧美一区二区三区久久
|
青青久久精品国产免费看
|
久久精品无码av
|
亚洲一区精品伊人久久伊人
|
欧美成a人片免费看久久
|
久久久久国产成人精品亚洲午夜
|
a级毛片无码兔费真人久久
|
久久久精品午夜免费不卡
|
99久久国产主播综合精品
|
久久99精品国产麻豆不卡
|
久久久久久极精品久久久
|
久久精品女人天堂AV麻
|