CS1.6里视频设置里的D3D和OPENGL的区别为:标准不同、硬件需求不同、渲染不同。
一、标准不同
1、D3D:是微软为提高3D游戏在Windows中的显示性能而开发的显示程序接口,目前已经升级到12版本,它提供了丰富的3D功能库,是游戏广泛采用的标准。
2、OPENGL:有着丰富经验的一个性能卓越的三维图形标准,它是在SGI等多家世界闻名的计算机公司的倡导下,以SGI的GL三维图形库为基础制定的一个通用共享的开放式三维图形标准。
二、硬件需求不同
1、D3D:提供的显示硬件必须满足D3D的所有硬件特性。
2、OPENGL:提供的显示硬件不要求满足OPENGL的所有硬件特性。
三、渲染不同
1、D3D:对渲染状态这个概念进行淡化,一方面使用全Shader化的架构使得状态的前后设置和互相影响对渲染成功率降低到最少,另外对API架构也更为简洁,另一方面对一些关键渲染状态进行封装和分类。
2、OPENGL:只提供渲染功能。核心API没有窗口系统、音频、打印、键盘/鼠标或其他输入设备的概念。
可以看一下D3D设置中的surface透明色讲解。将讲解总结举个例就是:加载一张jpg贴图,格式是D3DFMT_X8R8G8B8,因为没有A通道所以无论是设置Colorkey还是将所有像素的颜色取反都不会有透明效果,这样发现之后就在加载的时候将图片的格式转化为D3DFMT_A8R8G8B8再设置ColorKey时,就可出现透明效果。
D3D的surface透明色就是将游戏背景或图画背景等设置为透明显示。
D3Derr 就是directx3d中的error(错误) device(设备)lost(丢失) 是你directx9.0c的版本问题,进运行->dxdiag,去看看,有错误没,有的话,重新下个安装。 首先解决内存问题. 1、点开始 然后控制版面 系统 高级设置 然后把虚拟内存调到最大 D3D是显卡的问题.建议你更换显卡驱动 。 2、议您将桌面解析度调整为1024*768并尝试根据显卡型号更新最新显卡驱动程序并安装更新directX9.0以上版本。如果您的问题依然无法解决 就是显卡不支持了 现在DX 出到9。0C了 上百度找个欢迎分享,转载请注明来源:内存溢出
评论列表(0条)