C++
文章平均质量分 52
昵称90天可以改一次
2D动作游戏开发
展开
-
ifstream获取文件大小
gFile.open(sTest.c_str(), ios_base::binary ); //获取文件大小 gFile.seekg(0, ios_base::end); int nFileLen = gFile.tellg();原创 2009-07-08 18:05:00 · 18013 阅读 · 0 评论 -
Coco2dx 图文混排 (二) 文字缓存
我们使用CCRenderTexture来缓存文字,这样文字的渲染效率要高一些 这里就需要用到CCSpriteBatchNode来绘制大量的CCSprite这样的绘制有个人好处就是不用切换纹理,众所周知切换纹理是很非常耗时的一个显卡操作,那么当我们使用CCSpriteBatchNode时 只需要一个drawcall就可以绘制全部的字体效率是非常高的1. 创建RenderT原创 2014-01-11 14:11:06 · 1477 阅读 · 0 评论 -
Coco2dx 图文混排 (一)
如果要图文混排的话 我们不能使用CCTTFLabel由于CCTTFLabel的字体总是在渲染时先渲染到一个Image上面 如果我们要渲染一个同样的字很多次的话 就效率太低了那么我们选择CCSpriteBatchNode来渲染字体 并用CCRenderTexture把要渲染的字体缓存到一张大的纹理上面对于图片来说 CCSprite可以很好的满足我们需求,那么我们吧这些东西都混排到原创 2014-01-09 17:13:43 · 1418 阅读 · 0 评论 -
如何使用 Cocos2dx 来绘制异形精灵
方法1: 使用stencil buffer 可惜我ogl不太熟悉 方法2: 使用rendertexutre CCSize maskSize = spMask->getContentSize(); CCRenderTexture* renderTex = CCRenderTexture::create( maskSize.width, maskSize.height, kCCTextu原创 2013-10-30 17:15:35 · 896 阅读 · 0 评论 -
cl.exe 这个要下载VCTOOlKIT 蛋疼无比
蛋疼无比原创 2013-04-16 15:45:09 · 1012 阅读 · 0 评论 -
Ogre的粒子
花了点时间研究了一下Ogre的粒子系统particle_system tsss{//普通属性 cull_each true emit_emitter_quota 3 iteration_interval 0 local_space false material DefaultMaterial nonvisible_update_timeout 0原创 2013-02-05 16:11:11 · 718 阅读 · 0 评论 -
获取位图属性(大小什么的
BITMAP bm; HBITMAP hBitmap; GetObject(hBitmap, sizeof(BITMAP), (LPBYTE)&bm);原创 2012-10-23 14:43:42 · 492 阅读 · 0 评论 -
What is the difference between '/n' and '/r/n'? /n /r/n的区别是什么
<br />原帖来自http://www.codeguru.com/forum/showthread.php?t=253826<br /> <br />背景<br /><br />There are a few characters which can indicate a new line. The usual ones are these two:<br />这里有几种表示新行开始的符号'/n' or '0x0A' (10 in decimal) -> This character is call翻译 2011-01-21 17:29:00 · 618 阅读 · 0 评论 -
myGUi的内存泄漏
<br />3.00版有大量的内存泄漏 这个应该和作者本人的代码习惯有关<br /> <br />比如:<br /> void ResourceSkin::deserialization(xml::ElementPtr _node, Version _version)<br />作者new出 IObject* object = FactoryManager::getInstance().createObject("BasisSkin/State",原创 2010-12-22 16:26:00 · 916 阅读 · 0 评论 -
重载类中的new/delete
#define TRY_COUNT 4; #define ENGINE_NEW new #define ENGINE_DELETE delete class CHeapAlloc { public: CHeapAlloc() { } virtual ~CHeapAlloc(){} void * operator new( size_t size ) throw ( std::bad_alloc ) {原创 2010-06-13 14:23:00 · 734 阅读 · 0 评论 -
inline 函数的奇怪事件
inline 一般在使用的时候就被我们当做#define的替代品 或者为了提高程序的速度而在函数前面加上inline 今天写代码的时候发现一个奇怪的事情 加入我们有2个类 class CInlineTest1 { public: CInlineTest1(void); ~CInlineTest1(void); public: inline void DoSth(void); }; void CInlineTest1::DoSth原创 2010-06-03 15:57:00 · 641 阅读 · 0 评论 -
Windows IME APIs
Normal 0 7.8 磅 0 2 false false false EN-US ZH-CN X-NONE原创 2010-02-25 13:37:00 · 709 阅读 · 0 评论 -
cocos2dx图文混排(三)
有了文字渲染 那么图片渲染是很简单的(是个人都知道拉 CCSprite* S = CCSprite::createWidthSpriteFrame(FrameName) );那么我们只要创建一个 CCNode* N然后把 CCSprite和写满字体的CCSpriteBatchNode都加到N的子节点就可以了撒相信是比较简单的 但是为了给外界一个方便的接口 我们还是是用Set原创 2014-01-11 14:29:07 · 2137 阅读 · 0 评论