游戏无法运行,报错Failed to initialize Direct3D! 怎么解决~?
这个提示是说游戏需要调用显卡的OpenGL进行渲染,如果显卡核心本身不支持或者由于驱动等问题导致会出现类似情况
解决思路:
1,如果游戏本身有安全模式能进入,可以尝试游戏里设置使用DirectX 3D模式来渲染
2,尝试重新安装显卡驱动
3,再不行,很可能显卡过老,核心本身不支持游戏必须版本的OpenGL,如果需要运行这个游戏就需要换显卡了
更新显卡驱动
1.打开360安全卫士--找到功能大全点击驱动驱动。
2.运行驱动大师选择显卡驱动更新选项,更新完成后重启即可。
扩展资料:
Direct 3D是基于微软的通用对象模式COM(Common Object Mode)的3D图形API。它是由微软
Direct3D 界面
(Microsoft)一手树立的3D API规范,微软公司拥有该库版权,它所有的语法定义包含在微软提供的程序开发组件的帮助文件、源代码中。Direct3D是微软公司DirectX SDK集成开发包中的重要部分,适合多媒体、娱乐、即时3D动画等广泛和实用的3D图形计算。自1996年发布以来,Direct3D以其良好的硬件兼容性和友好的编程方式很快得到了广泛的认可,现在几乎所有的具有3D图形加速的主流显示卡都对Direct3D提供良好的支持。但它也有缺陷,由于是以COM接口形式提供的,所以较为复杂,稳定性差,另外,目前只在Windows平台上可用。★
Direct3D(简称:D3D)是微软公司在Microsoft Windows操作系统上所开发的一套3D绘图编程接口,是DirectX的一部分,目前广为各家显示卡所支援。与OpenGL同为电脑绘图软体和电脑游戏最常使用的两套绘图编程接口之一。
Direct3D的抽象概念包括:devices, swap chains和resources。
有4种device type,D3DDEVTYPE定义了设备类型。
HAL(hardware abstraction layer):使硬件加速。
reference:应用程序请求一个reference设备。
null reference:当系统没有装SDK,但是应用程序请求一个reference设备的时候,它就返回一个null reference。
可插拔的软件(Pluggable software);设备通过RegisterDevice设备方法提供。
Device
每一个设备至少要有一个swap chain.一个swap chain可用来产生一个或多个back buffer surfaces。渲染目标(render target)也是back buffer surface。back buffer是属于渲染(render)的部份。所有的back buffer都是合理的render target,但是并非所有render target都是back buffer。surface是一种资源,包含一个矩形集合的像素数据,如color, alpha, depth/stencil。
资源有4个属性:
Type:资源的类型,如顶点缓冲区(vexert buffer),或一个渲染目标(render target)。
Usage:资源的用途,如纹理(texture)或渲染目标,是一系统的旗标所组成,每个旗标占1 bits。
Format:数据的格式,如一个二维表面的像素格式。例如,D3DFMT_R8G8B8的值是一个24 bits的颜色深度(colour depth,8 bits是红色,8 bits绿色以及8 bits是蓝色)。
Pool:资源所分配的内部存储器空间类型。
参考资料: