11 2009 档案
摘要:3. 类模板的写法定义一个类模板:Template < class或者也可以用typename T >class类名{//类定义......};说明:其中,template是声明各模板的关键字,表示声明一个模板,模板参数可以是一个,也可以是多个。例如:定义一个类模板:// ClassTemplate.h#ifndef ClassTemplate_HH#define ClassTempl...
阅读全文
摘要:1. 模板的概念。我们已经学过重载(Overloading),对重载函数而言,C++的检查机制能通过函数参数的不同及所属类的不同。正确的调用重载函数。例如,为求两个数的最大值,我们定义MAX()函数需要对不同的数据类型分别定义不同重载(Overload)版本。//函数1.int max(int x,int y);{return(x>y)?x:y ;}//函数2.float max( floa...
阅读全文
摘要:四. 怎样绘制显示动画?DrawFrame()用来绘制整个X框架。它遍历各个框架,找到Mesh不为空的进行绘制。(其实整个.x中通常只有一个不为空,见上文所述)DrawMeshContainer()是绘制函数。4.1 怎样开启顶点混合?注意应用有关的Vertex Blending技术。如在索引方式的绘制中,m_pd3dDevice->SetRenderState(D3DRS_VERTEXBL...
阅读全文
摘要:这是一篇比较不错的文章.关于骨骼动画及微软示例Skinned Mesh的解析骨骼动画是D3D的一个重要应用。尽管微软DXSDK提供了示例Skinned Mesh,但由于涉及众多概念和技术细节,示例相对于初学者非常复杂,难以看懂。在此,提供一些重要问题评论,以使初学者走出迷局,顺利上手。文中所述都是参照各种资料加上自己的理解,也有可能出些偏差,有则回贴拍砖,无则权当一笑。一 骨骼动画原理原理方面在网...
阅读全文
摘要:png和bmp的优缺点这里就不多说了,有的时候并不一定是为了png的透明通道才去使用它,但是至少它的体积比bmp会小些.操作bmp的方法有很多gdi gdi+ alt 这里用下alt#include <atlimage.h>HBITMAP PngToBmp(const TCHAR* szTPngPicName){CImage pngimage;pngimage.Load(szTPngP...
阅读全文
摘要:2D Game中为了提高帧速,往往需要用到双缓冲,双缓冲的实现这里就不多叙述了,资料很多。今天在用到GDI+实现png图像的使用的时候遇到一个小的问题, 如果是双缓冲的话往往需要用Bitbit来复制bufferDC的内容到DC中去,但是如果没有初始化GDI+的函数库就会出现一些问题,Bitbit的内容显现不出来。也许是BeginPaint EndPaint里可以忽略? 这点只是猜测.之前试过Str...
阅读全文
摘要:GDI+实际上是一组类的定义,封装了gdi+的几乎所有API,当然使用方法就要从这些“例子”里边寻找了:)本文正是尝试用GDI+写一个纯SDK的程序,语言自然是我最喜欢的语言WIN32ASM.这个程序很简单,就是用GDI+画了一条直线。算是抛砖引玉吧,感兴趣的可以自己探索其他函数的用法。 使用GDI+ API之前,必须先调用GdiplusStartup这个函数,作用是初始化...
阅读全文
摘要:今天在一个小的2D Game Demo中遇到一个小的问题,那就是播放视频的时候屏幕会不断闪烁。经过检查排除了WM_ERASEBKGND 和双缓冲相关出现问题的可能。检查整体时发现把视频播放写在了渲染处理中。可能是因为屏幕是即时刷新的,读取视频流的时候每次读取然后刷新。并且当游戏再次经过循环后会停住。解决:把视频处理放在了单独的循环环节,或者写在逻辑里。在渲染中检查如果已播放完毕再次播放则retur...
阅读全文
摘要:当我们需要依据所需客户矩形的大小,计算需要的窗口矩形的大小的时候会用到AdjustWindowRect。也许是以前没有碰到, AdjustWindowRect 的第二个参数也就是creatwindow的窗口风格参数,不能是WS_SYSTEMMENU , 当这个风格的时候AdjustWindowRect输出的矩形会起不到应有效果 , 其他风格情况未曾查看.目前是这样指定的: SetRect( &am...
阅读全文
摘要:在文档的框架类中添加WM_SIZE消息响应代码:void CMainFrame::OnSize(UINT nType, int cx, int cy){CRgn m_rgn;CRect rc;GetWindowRect(&rc); //获得窗口矩形rc -= rc.TopLeft();m_rgn.CreateRoundRectRgn(rc.left, rc.top, rc.right, r...
阅读全文
摘要:1.准备工作。(1)得到文件夹中的位图句柄:首先要准备相应图片。HBITMAP bitmap;bitmap=(HBITMAP)::LoadImage(AfxGetInstanceHandle(),"skin//Test.bmp",IMAGE_BITMAP,0,0,LR_DEFAULTSIZE|LR_LOADFROMFILE);CBitmap cbmp;cbmp.Attach(bitmap);其中,...
阅读全文
摘要:warning C4996: '_vsnprintf': This function or variable may be unsafe. ......warning C4996: strcpy was declared deprecated出现这样的警告,是因为VC2005之后的版本中认为CRT中的一组函数如果使用不当,可能会产生诸如内存泄露、缓冲区溢出、非法访问等安全问题。这些函数如:strc...
阅读全文
摘要:error LNK2019: 无法解析的外部符号 _WinMain@16,该符号在函数 ___tmainCRTStartup 中被引用一,问题描述MSVCRTD.lib(crtexew.obj) : error LNK2019: 无法解析的外部符号 _WinMain@16,该符号在函数 ___tmainCRTStartup 中被引用 Debug\jk.exe : fatal error LNK11...
阅读全文
摘要:在vs2008(05没注意), 自动生成的win32窗口框架中 :添加:#include <gdiplus.h>using namespace Gdiplus;#pragma comment (lib,"gdiplus.lib")编译会出现gdi+的一些源文件无法编译通过的情况. MFC框架中没有问题.出现此问题的原因:#define WIN32_LEAN_AND_MEAN// 从 W...
阅读全文
摘要:1.5或者之前的版本的引擎想要实现这个问题需要借助一个日本达人的方法 IrrlichtML + freetype的方法来解决问题, 配置起来是相当不方便, 配置完毕出现一些问题 ..而1.6版目前用的还比较少, 至少看到的资料是这样...也或许是大家习惯性的用了过去的方法.也或许那个日本人的方法更好.,但是我更愿意相信引擎的原作者.终于算是解决了这个问题,当然了, 可以看出还是有问题的 , 但是算...
阅读全文

浙公网安备 33010602011771号