
DX
文章平均质量分 55
human_cn
这个作者很懒,什么都没留下…
展开
-
灵活顶点格式
灵活顶点格式--Flexible Vertex Format, FVF 灵活顶点格式(Flexible Vertex Format, FVF)用来描述在顶点缓冲区中的顶点存储格式中包含了哪些属性。Direct3D应用程序可以用几种不同的方式定义灵活顶点格式。灵活顶点格式使应用程序只使用它需要的顶点数据,排除那些它不需要的组成成分。这样,应用程序可以节省内存空间,减少系统带转载 2012-05-06 22:55:28 · 1057 阅读 · 0 评论 -
坐标系与变换矩阵
1.世界坐标系和模型几何变换SetTransform(D3DTS_WORLD,&world) 物体在图形学中通常通过一个4X4矩阵来表示三围物体的空间几何变换,表示三围物体在世界空间中集合变换的矩阵称为世界变换矩阵,简称世界矩阵,在Direct3D中通过为Direct3D设备接口设置世界矩阵完成其模型几何变换。模型集合变换有三种基本类型:平移(Translate),旋转(Rotae)转载 2012-05-09 13:28:50 · 1760 阅读 · 0 评论 -
网格1
10.1 几何信息 ID3DXMesh接口对象包含了一个用于保存网格中顶点数据的顶点缓冲区,和一个用于记录三角形顶点在顶点缓冲区中索引信息的索引缓冲区。 可以通过下面方法获得指向这些缓冲区的指针 ID3DXMesh::GetVertexBuffer(LPDIRECT3DVERTEXBUFF9 *ppVB); ID3DXMesh::GetIndexBuffer转载 2012-06-13 17:10:31 · 1399 阅读 · 0 评论 -
模板缓存1
模板缓存是一个离屏缓存,我们能够用它来完成一些特效。模板缓存与后台缓存和深度缓存有相同的定义,因此在模板缓存中的像素与后台缓存和深度缓存中的像素 是相协调的。就象名字所说,模板缓存就象一个模板它允许我们刷新渲染后缓存的某个部分。 举例,当要实现一个镜子时,我们只需要简单地反射一个物体细节到镜子平面上;然而,我们仅仅想只绘制镜子里的反射结果。我们能用模板缓存来渲染它,图 8.1清楚的转载 2012-06-07 21:40:54 · 1541 阅读 · 0 评论 -
模版缓存2
当实现一个镜面,一个物体假如在一面镜子前那么它就会被反射。然而,我们不想测试空间一个物体是否在一面镜子前,要做它是非常复杂的。因此,为了简化事 情,我们总是反射物体并且无限制地渲染它。但是这样就有一个象本章开头的图8.1一样的问题。即,物体反射被渲染到了没有镜子的表面。我们能够用模板缓存 来解决这个问题,因为模板缓存允许我们阻止渲染在后缓存中的特定区域。因此,我们使用模板缓存来阻止渲染被反射的不在转载 2012-06-07 21:48:33 · 1329 阅读 · 0 评论 -
DX融合技术
融合处理的步骤:1。设置融合因子D3DRS_SRCBLEND和D3DRS_DESTBLEND Device->SetRenderState(D3DRS_SRCBLEND,D3DBLEND_SRCCOLOR);Device->SetRenderState(D3DRS_DESTBLEND,D3DBLEND_INVSRCALPHA);2。如果使用alpha分量,还需指定其来转载 2012-05-29 10:34:22 · 1498 阅读 · 0 评论 -
DX纹理映射
总结为场景添加纹理映射的步骤1。构造组成物体的顶点,并为其指定纹理坐标。2。用函数D3DXCreateTextureFromFile为IDirect3DTexture9接口加载一种纹理。3。设置缩小过滤器和放大过滤器及多级渐进纹理过滤器4。绘制物体前,用函数IDirect3DDevice9::SetTexture来设定与该物体关联的纹理。注意:关闭灯光,Device->Se转载 2012-05-28 14:05:40 · 1680 阅读 · 0 评论 -
sin cos tan cot sec csc
直角三角形有 对边 邻边 斜边锐角和 钝角三角形有对边 邻边正弦(sin):角α的对边比上斜边 余弦(cos):角α的邻边比上斜边 正切(tan):角α的对边比上邻边 余切(cot):角α的邻边比上对边 正割(sec):角α的斜边比上邻边 余割(csc):角α的斜边比上对边转载 2012-05-12 21:55:54 · 3504 阅读 · 0 评论 -
Direct3D几何流水线由世界变换、观察变换、投影变换和视口变换几个部分组成。
Direct3D几何流水线由世界变换、观察变换、投影变换和视口变换几个部分组成。一、坐标空间1.1 局部坐标系用于描述物体自身属性的独立坐标系,它相对于物体中心位置构成一个模型空间。在该模型空间,描述了物体的方向和构成物体的元素相对于物体中心的位置。1.2 世界坐标系用于建立一个描述其他坐标系所需要的参考框架,以便指定物体在该坐标系中的位置、方向及大小。其描转载 2012-05-11 23:25:01 · 1130 阅读 · 0 评论 -
DX光照
为一个场景添加光照的步骤如下。1,启用光照Device->SetRenderState(D3DRS_LIGHTING,true);2,为每个物体创建一种材质,并在绘制相应物体前应用(设置)该材质D3DMATERIAL9 mtrl;Device->SetMaterial(&mtrl);3,创建一种或多种光源,设置并启用。D3DLIGHT9 dir;De转载 2012-05-28 14:00:41 · 1325 阅读 · 0 评论 -
DX着色
着色步骤1。为顶点缓存增加color属性2。设置着色模式,Device->SetRenderState(D3DRS_SHADEMODE,D3DSHADE_FLAT)DX颜色小结1。 颜色可用红色,绿色和蓝色的光强来描述,这三种分量可按不同的亮度进行加性混合,在D3D中可用D3DCOLOR,D3DCOLORVALUE或D3DXCOLOR类型进行对颜色进行描述。2。我们可将转载 2012-05-28 17:09:48 · 1258 阅读 · 0 评论 -
[转]Direct3D入门-向量和距阵变换
向量(也叫矢量,英文叫vector) 向量就是包含大小(长度)和方向的一个量。向量有2维的,也有3维甚至4维的。在DX的所有结构体中,有一个结构体是用来表示3维向量的,它就是D3DVECTOR,这个结构体很简单,只有三个成员:x、y、z。一般来说,如果不涉及到向量运算的话,用这个结构体来定义一个向量就可以了。我们可以它来表示方向以及顶点在3D世界中的位置等。如转载 2012-05-07 23:25:57 · 641 阅读 · 0 评论 -
D3D数学基础(初级篇)
Direct3D游戏开发学习笔记3——D3D数学基础(初级篇) (转)一、数学工具在虚拟3D世界中的作用、D3D与D3DX的关系:1、数学的作用:数学是搭建虚拟3D世界的基础,角色控制、动画、关照计算、阴影计算、特效显示等等,数学在里面都起着支柱作用;2、D3D与D3DX的关系:D3D是基本库的函数,任何跟基本渲染包括和硬件打交道的底层操作都在这里,它是必需。D3DX是扩展库函数,是做转载 2012-05-08 00:12:27 · 672 阅读 · 0 评论 -
改变D3D中的渲染状态
改变D3D中的渲染状态1). 设置着色模式: SetRenderState(D3DRS_SHADEMODE, D3DSHADE_FLAT) //设置平面着色模式SetRenderState(D3DRS_SHADEMODE, D3DSHADE_GOURAUD) //转载 2012-05-07 17:52:58 · 401 阅读 · 0 评论 -
D3DFVF_XYZ和D3DFVF_XYZRHW的区别
今天,做了个实验得知,在顶点结构体中没有RHW时,Direct3D将执行视、投影、世界等变换以及进行光线计算,之后你才能在窗口中得到你所绘制的物体。当顶点结构体中有RHW时,就像上面那段英文所述,告知Direct3D使用的顶点已经在屏幕坐标系中了,不再执行视图、投影、世界等变换和光线计算,因为D3DFVF_XYZRHW标志告诉它顶点已经经过了这些处理,并直接将顶点进行光栅操作,任何用SetTran转载 2012-05-07 16:41:12 · 409 阅读 · 0 评论 -
DX配置
一个DirectX程序要想正确的编译和链接,需要下面三个主要前提一 安装DirectX SDK二 正确配置.h文件路径和.lib文件路径三 正确链接所需.lib文件详细步骤如下:一.安装DirectX SDKhttp://msdn.microsoft.com/zh-cn/directx/aa937788.aspx这是微转载 2012-05-07 10:25:52 · 821 阅读 · 0 评论 -
齐次坐标 (Homogeneous Coordinate)
齐次坐标 (Homogeneous Coordinate) 所谓齐次坐标就是将一个原本是n维的向量用一个n+1维向量来表示。例如,二维点(x,y)的齐次坐标表示为(hx,hy,h)。由此可以看出,一个向量的齐次表示是不唯一的,齐次坐标的h取不同的值都表示的是同一个点,比如齐次坐标(8,4,2)、(4,2,1)表示的都是二维点(4,2)。 那么引进齐次坐标有什么必要,它有什么优转载 2012-05-06 23:01:11 · 1353 阅读 · 0 评论 -
三维旋转矩阵使用算法
3D数学 ---- 矩阵和线性变换一般来说,方阵能描述任意线性变换。线性变换保留了直线和平行线,但原点没有移动。线性变换保留直线的同时,其他的几何性质如长度、角度、面积和体 积可能被变换改变了。从非技术意义上说,线性变换可能“拉伸”坐标系,但不会“弯曲”或“卷折”坐标系。矩阵是怎样变换向量的向量在几何上能被解释成一系列与轴平行的位移,一般来说,任意向量v都能转载 2012-05-07 16:29:09 · 1741 阅读 · 0 评论 -
求三角形的法线
法线的计算:假定一个三角形由顶点p0,p1,p2构成,计算顶点法线n0,n1,n2先求出这个三角形的面法线p1-p0=up2-p0=v//调用叉积函数进行运算,然后调用求法线函数D3DXVec3Cross(&n,&u,&v);//如果调换后面两个参数的位置,则法线相反D3DXVec3Cross(&n,&v,&u);D3DXVec3Normalize(&n原创 2012-05-26 22:09:01 · 2501 阅读 · 0 评论