DirectX
文章平均质量分 74
poem_of_sunshine
这个作者很懒,什么都没留下…
展开
-
DirectX小段代码总结(一)
显卡渲染时,要先擦后画void CD3DInit::Render(){ if(NULL == g_pD3DDevice) return; //--将填充后台缓冲区置为黑色 g_pD3DDevice->Clear(0, NULL, D3DCLEAR_TARGET|D3DCLEAR_ZBUFFER, D3DCOLOR_XRGB(0,0,0),1.0f,0);原创 2012-11-14 23:07:01 · 580 阅读 · 0 评论 -
HLSL代码高亮开发工具
rendermonkey 和 fxc都可以来写HLSL fx的代码或者用NShader用VS编写着色语言时,很希望语法高亮,而非一片黑压压的代码。可以使用NShader( http://nshader.codeplex.com/),目前支持vs2008,2010,2012,下载后双击直接安装即可使用,需要注意的是着色器语言的文件扩展名必须是如下指定的才可以。原创 2013-02-27 22:12:41 · 1005 阅读 · 0 评论 -
HLSL编程点滴积累
http://blog.csdn.net/rabbit729/article/details/6130118下面是自己在学习HLSL编程过程中的一些笔记:1.顶点声明时D3DVERTEXELEMENT9结构体中UsageIndex字段用于标识多个相同用途的顶点向量。比如如下声明:D3DVERTEXELEMENT9 MorphMeshDecl[] = {转载 2013-02-28 00:19:28 · 658 阅读 · 0 评论 -
使用Pix For Windows调试Shader傻瓜教程
下面,我们来介绍一下怎么使用DX SDK自带的工具PIX For Windows来调试Shader。这里只做简要的介绍,具体的情参看PIX的文档哈。如何找到文档呢?打开DX SDK开始菜单下面的DirectX Documentation for C++,我的版本是09年8月版本的,到目前为止好像是最新版,呵呵。然后依次:DirectX Software Development Kit/Tools/转载 2013-02-28 00:26:01 · 2179 阅读 · 1 评论 -
大家绘制D3D中的2D元素为什么不用现成的ID3DXSprite呢?
3D场景中免不了要绘制一些2D元素,诸如UI等等。个人感觉ID3DXSprite应当算是个比较好用的接口,使用起来也很方便。不过,看前辈们貌似都很抵触这个接口,好像说是因为效率不行?好像大家采取的比较普遍的做法,就是固定Z坐标,然后直接在屏幕上绘制矩形+纹理。求教各位大侠:大家普遍认为ID3DXSprite效率底下的原因或者依据是什么呢?又或者说大侠们还有其他的见解?感激不尽~转载 2013-02-28 16:04:04 · 1637 阅读 · 0 评论 -
ID3dXSprite接口
[cpp] view plaincopyHRESULT Draw( LPDIRECT3DTEXTURE9 pTexture, CONST RECT * pSrcRect, CONST D3DXVECTOR3 * pCenter, CONST D3DXVECTOR3 * pPosition,转载 2013-02-28 15:52:47 · 2505 阅读 · 0 评论 -
一个2D游戏说明
http://blog.csdn.net/tinya0913/article/details/6095401炮炮兵考眼力游戏简要说明书 广州大学华软软件学院 郭少豪Email : gsh0913@qq.comQICQ : 264965161转载 2013-02-28 15:50:49 · 1190 阅读 · 0 评论 -
ID3DXSprite DirectX 9.0C绘制2D动画
最近我一直在不停地问有关2D游戏制做的技术。继上一篇DirectX9中的二维图片的加载以后,我再发一篇关于通过ID3DXSprite来实现DirectX 9.0C绘制2D动画的帖子,希望对大家有所帮助。DirectX9中的二维图片的加载http://www.dingge.com/forum/dispbbs.asp?boardID=46&ID=5578通过ID3DXSpr转载 2013-02-28 15:48:55 · 5068 阅读 · 1 评论 -
dxutsound.h(36) : error C2143: 语法错误 : 缺少“;
02_texcolorblend\common\dxutsound.h(36) : error C2143: 语法错误 : 缺少“;”(在“*”的前面)这个是因为win7和directx10及directx11不支持IDirectSound8,将IDirectSound8改为IDirectSound,LPDIRECTSOUND8改为LPDIRECTSOUND,反正碰到与soun原创 2013-11-18 00:22:26 · 1848 阅读 · 0 评论 -
SM2.0与SM3.0的区别
不要总把SM3.0放在嘴边 把它夸大其实的宣传 鄙视微软搞这些把戏 我下面为大家介绍下他们的区别我将着重介绍一下基于SM3.0的HDR技术,究竟给我们的3D世界带来怎么样的震撼呢?首先来看一下SM3.0:SM3.0是Shader Model 3.0版本的意思,这其中包括了Vertex Shader3.0和Pixel Shader3.0,以及ROP着色器。与上一个版本Directx9原创 2013-11-18 23:22:52 · 6172 阅读 · 0 评论 -
D3D中2D图片的绘制
转自http://blog.csdn.net/rabbit729/article/details/6388703 想要在D3D中加载2D图片可以使用如下两种方法(我只想到这两种方法,如果有其他方法,请指教)。第一种就是把图片以纹理方式加载,然后以此为纹理绘制一个四边形即可;第二种就是使用2D点精灵,不解释,你懂得;下面分别给出两种方法的代码: 第一转载 2013-02-27 23:46:16 · 931 阅读 · 0 评论 -
D3D中的AGP内存、系统内存、显存的理解
转自 http://www.cnblogs.com/lancidie/archive/2011/05/20/2052094.html学习D3D,应该对这三个内存理解,网上收集了一下相关资料,收藏下来。三种内存AGP内存(非本地显存),显存(本地内存),系统内存,其中我们都知道系统内存就是咱那内存条,那这AGP内存是个啥玩意啊?其实是因为在以前显卡内存都很小,那时还是在显存是16M,转载 2013-03-11 17:10:59 · 631 阅读 · 0 评论 -
DirectX做2D游戏的三种方法
http://blog.sina.com.cn/s/blog_607adeb50100ee18.html1 用DirectDraw这是早期的做法,由于现在的DirectDraw已经并入到DirectGraphic当中,而且微软也已经在Direct SDk8中把DirectDraw部分的文档取消了,现在多用D3D来做2D的游戏 2 用ID3DXSprite转载 2013-02-28 15:56:43 · 2920 阅读 · 1 评论 -
DirectX小段代码总结(二)
摄像头绕Y轴匀速旋转 // Desc: 设置世界矩阵VOID SetWorldMatrix(){ //创建并设置世界矩阵 D3DXMATRIXA16 matWorld; D3DXMatrixRotationY( &matWorld, timeGetTime()/1000.0f ); g_pd3dDevice->SetTransform( D3DTS_WORL原创 2012-11-15 01:38:20 · 625 阅读 · 0 评论 -
D3D常用函数备份
D3DXCOLOR* D3DXColorAdd //两个颜色的组合值D3DXCOLOR* WINAPI D3DXColorAdjustContrast( //调整颜色对比度D3DXCOLOR *pOut,const D3DXCOLOR *pC,FLOAT c);D3DXCOLOR* WINAPI D3DXColorAdjustSaturation( //调整颜色饱和度转载 2012-11-14 23:15:12 · 551 阅读 · 0 评论 -
Direct3D实现四视图
http://blog.csdn.net/rabbit729/article/details/6583712 代码如下:说明代码中用到的.x模型下载地址:http://download.csdn.net/source/3416898[cpp] view plaincopy/**************************转载 2013-02-27 21:56:36 · 810 阅读 · 0 评论 -
DirectX9.0中用来进行设备检测的函数汇总
http://blog.csdn.net/rabbit729/article/details/71985281. IDirect3D9::CheckDeviceTypeHRESULT CheckDeviceType( [in] UINT Adapter, [in] D3DDEVTYPE DeviceType, [in] D3DFO转载 2013-02-27 23:35:30 · 679 阅读 · 0 评论 -
关于SetTexture()调用引起显存泄露的问题
http://blog.csdn.net/rabbit729/article/details/8614995项目中遇到一个问题,添加了GPU特技后,播放多次就会出现申请显存失败的问题,并且使用GPU-Z查看显存,也是在不断增加,于是断定是由于显存泄露造成的,仔细检查代码,发现在调用LPDIRECT3DTEXTURE9的Release时,返回值为1而不是0,这样的话实际上DX转载 2013-02-27 23:57:28 · 1111 阅读 · 0 评论 -
如何调试DirectX3D程序
转载地址:http://www.cnblogs.com/minggoddess/archive/2011/06/16/2082970.html如果安装了DirectX SDK,就可以通过SDK中的DirectX Control Panel来设置调试选项,这个工具位于开始-程序-Microsoft DirectX SDK(June 2010)-DirectX Utilities中,也可以在S转载 2013-02-28 00:04:49 · 830 阅读 · 0 评论 -
介绍D3DPOOL和Lock
D3D RUTIME的内存类型,分为3种,VIDEO MEMORY(VM)、AGP MEMORY(AM)和SYSTEM MEMORY(SM),所有D3D资源都创建在这3种内存之中,在创建资源时,我们可以指定如下存储标志,D3DPOOL_DEFAULT、D3DPOOL_MANAGED、D3DPOOL_SYSTEMMEM和D3DPOOL_SCRATCH。VM就是位于显卡上的显存,CPU只能转载 2013-02-28 00:21:23 · 1787 阅读 · 0 评论 -
ID3DXsprite的效率真是比DDRAW高太多了
感叹,ID3DXsprite的效率真是比DDRAW高太多了![em60]http://hi.baidu.com/%C7%E5%CF%C4%C1%B9%B7%E7/blog/item/9e10a6dc452360a6cd11663c.html 感叹,ID3DXsprite的效率真是比DDRAW高太多了!为什么还有人说DDRAW比D3D模拟2D快?个人感觉做2D转载 2013-02-28 15:59:26 · 1285 阅读 · 0 评论 -
基于ID3DXSprite的2D元素绘制
D3D中的2D元素绘制主要是通过ID3DXSprite来完成的。我们通过调用D3DXCreateSprite来完成ID3DXSprite接口对象的创建,同时使用介于Begin与End之间的Draw方法来完成D3D中2D元素的绘制。下面,我们对IDirect3DTexture9和ID3DXSprite进行二次封装,使其接口趋于人性化,使用起来更加便捷:/*------------转载 2013-02-28 15:58:40 · 1351 阅读 · 0 评论 -
在DirectX 3D中使用CEGUI 解析
http://blog.csdn.net/Lodger007/article/details/1675141一、CEGUI简介 CEGUI,为Crazy Eddie's GUI的缩写,它是一个用C++开发的面向对象的免费界面库,针对游戏开发者,提供了3D环境中的窗口及其部件的图形API。CEGUI在0.4.1之前(包括0.4.1),使用LGPL授权协议,从0.5版转载 2013-11-23 17:40:37 · 1459 阅读 · 0 评论