自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

  • 博客(11)
  • 收藏
  • 关注

原创 纹理

纹理的D3D重要组成部分,因为太多地方要用到它,所以专门记录一下使用纹理的各种方法。 创建纹理的方法有很多,比如: HRESULT D3DXCreateTexture HRESULT D3DXCreateTextureFromFile HRESULT D3DXCreateTextureFromFileEx HRESULT D3DXCreateTextureFromFileInMemory

2012-02-12 21:29:39 437

原创 D3D x文件结构

X文件是DirectX中存放mesh数据的文件,尤其是包含动画和蒙皮信息的网格模型。 .x文件是由模板(template)驱动的,模板定义了如何存储一个数据对象,这样用户便可以自己定义具体的格式。 我们可以用编辑器打开一个动画mesh的X文件,它的基本架构: 网格中主要存储的是对物体的点采样信息,所以一般会有物体采样的顶点个数,顶点数据列表;面个数,面的数据列表的信息。然后,为了增加采样

2012-02-04 13:34:03 767

转载 C/C++网络编程中的TCP保活

在默认的情况下,TCP连接是没有保活的心跳的。这就是说,当一个TCP的socket,客户端与服务端谁也不发送数据,会一直保持着连接。这其中如果有一方异常掉线,另一端永远也不可能知道。这对于一些服务型的程序来说,将是灾难性的后果。   所以,必须对创建的socket,启用保活心跳,即Keepalive选项。 启用Keepalive   对于WIN32或者Linux平台来说,设置so

2012-02-04 12:53:23 679

原创 基本的排序算法

内排序算法基本上分为:选择排序,插入排序,交换排序,归并排序 1.选择排序 1.1基本选择排序 算法思想:每i趟通过n - i次关键码比较,在n-i + 1(1 //*********************************************************************************** //* Function: 交换函数 //* Para

2011-12-24 21:06:09 167

原创 矩阵Matrix

话说几何忘得可真快,想当初最爱解几何题了.....当初线性代数,全班挂了10几个,我还考了78,没想到这忘的差不多了。 言规正传,现在一边看3D的数学知识,一边学习怎么通过Matrix把物体在3D的世界进行漂亮的变换,以下记录自己的心得,以便加深记忆。 1、从简单的来了,Matrix的加法 加法满足的运算律: A + B =  B + A A + B + C =  A + ( B

2011-12-14 22:30:24 199

原创 Vector的各种算法

1.加法 D3DXVECTOR3 * D3DXVec3Add( D3DXVECTOR3 * pOut, CONST D3DXVECTOR3 * pV1, CONST D3DXVECTOR3 * pV2 ); 2.减法: D3DXVECTOR3 * D3DXVec3Subtract( D3DXVECTOR3 * pOut, CONST D3DXVECTOR3 *

2011-12-06 23:13:53 542

原创 ID3DXAllocateHierarchy 学习

这个接口可以用来创建或者销毁D3DXFRAME对象、mesh container对象,共有4个接口 1.创建D3DXFRAME对象 HRESULT CreateFrame( LPCSTR Name, LPD3DXFRAME * ppNewFrame ); 参数说明: 【in】Name:frame的名字 【out, retval】返回创建的frame对象 2.创建一个

2011-12-06 22:07:58 421

原创 X动画

typedef struct D3DXMESHCONTAINER {     LPSTR Name;       // 网格名     D3DXMESHDATA MeshData; // 网格数据     LPD3DXMATERIAL pMaterials; // 网格素材     LPD3DXEFFECTINSTANCE pEffects;   // 存储效果实例     DWORD

2011-12-05 23:51:26 76

原创 IDirect3D9学习

IDirect3D9接口共14个方法,分别是: 1.创建设备 HRESULT CreateDevice( UINT Adapter, D3DDEVTYPE DeviceType, HWND hFocusWindow, DWORD BehaviorFlags, D3DPRESENT_PARAMETERS * pPresentationParameters, IDi

2011-12-04 22:57:26 396

原创 鼠标选取Pick

在3D的世界中,如何选择一个物体并触发相应事件,需要用到选取; 学习选取之前,需要先弄清楚几个概念:客户区坐标系,投影坐标系,视图坐标系,世界坐标系。 我们知道,将3D场景转换为2D图像并显示在显示器上,这一系列操作叫做渲染管线,下图是过程: 物体-->世界-->视图->(拣选、灯光、裁剪)-->投影-->视口变换-->(光栅化) 选取的过程正好相反,可表示为:鼠标

2011-12-04 21:31:52 392

转载 智能指针shared_ptr

在加载X文件是,需要保存将模型中的每个subset的纹理指针,使用数据指针保存的话,不能确定数组的长度; 这时,想到使用vector管理这些指针,可是纹理的指针释放时不是delete,而是Release,想来想去,最终想到用shared_ptr替换IDirect3DTexture9*, 即std::vector m_Texture; --》std::vector> m_Texture;

2011-12-04 17:48:34 247

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除