玩单机游戏出现“不支援directx出现错误11”是怎么回事

游戏开发技术总结(经典之作)第十一集
VC 中DirectX 技术的使用和&传奇&的单机版游戏制作 - 推酷
游戏开发技术总结(经典之作)第十一集
VC 中DirectX 技术的使用和&传奇&的单机版游戏制作
<span style="color:#cc 任务
&&&&&&&&& 认识
,快速建立
环境。重点理解页面和学习页面内容的拷贝方法。
<span style="color:#ff 认识DirectX
之前,个人电脑上的大部分游戏都是基于
的,游戏开发人员可
以直接对计算机的硬件如显卡、声卡、键盘、游戏手柄等进行编程。
&&&&& 进入
的设备管理程序对所有硬件都统一管理起来,这对品种
繁多又日新月异发展的硬件设备来说,这个统一的管理无疑是必需的,但同时带来的
问题就是游戏开发人员再不能直接对这些硬件设备编程了。例如在
下,我们要
在屏幕上显示一幅图形,用标准
函数就得经过无数的环节才能做到(现在计算机
的速度发展太快了,用标准
函数仿佛又不是什么问题了)。微软开发
目的就是要提高
环境下游戏开发的容易性。
&&&&&&& 利用
, 游戏开发人员就可以获得
的硬件独立性的优点,同时又可以
直接访问硬件。
的最主要的目标就是提供
中直接的硬件访问特性,同时
去掉个人电脑中再添加新的硬件时所带来的硬件识别问题。
因为硬件的升级是不可避免的, 所以,
实际上也提供了另一种即插即用的
方法。因此,利用
可以开发出高性能实时的应用程序,可以直接访问计算机中
的硬件和将来系统中新的硬件设备。
在硬件和应用之间提供了一致的接口以减
少安装和配置的复杂性,并且使硬件的利用达到最优。利用
提供的接口,程序
员能充分利用硬件的特性而不需要考虑其具体细节。
主要包括以下几个部分。
DirectDraw
通过支持访问屏外显示内存中位图的软硬件加速技术,快速直接存取,
&&&&&&&&&&&&&&&&&& 利用硬件的位块传输和缓冲区翻转功能。
DirectSound
提供软硬件声音混合和录音再生功能。
DirectMusic
提供软硬件
音乐的播放功能。
DirectPlay
使得游戏在调制解调器和网络之间的连接更加简单方便。
允许程序完成一个完全的三维图形系统和完全控制着色管道。
DirectInput
提供了基于
游戏的输入的
程序,包括键盘、鼠标和操
&&&&&&&&&&&&&&&&&&&& 纵杆,以及将来的基于
新的输入设备。
DirectSetup
的一次性安装过程。
我们现在编制的是
( 平面)游戏,主要是和
DirectDraw
11-3 建立DirectX 环境
&&&&&&& DirectX
的版本发展很快,现在已到了
版;但是它的基本功能变化不大,这也是
微软在升级它的版本时一直没有抛弃它的向下兼容的原则,这恐怕也是人们能够放心
地学习微软技术的原因吧。
&&&&&&&& 不少书上对建立
环境讲述不少,但初学者能搞懂的不多。真有这么复杂吗?
在职业技术教育中有一个知识体系的最小够用原则( 就像中国汉字有几万,认识千多
字就可识字习文一样)。现在我们来建立最小的
环境。根据需要我们在“
类文件中加入功能函数
InitDDraw(void)
,作用是初始化
DirectDraw
<span style="color:#ff-1 InitDDraw(void) 初始化DirectDraw 环境
InitDDraw(void)
中我们的工作是初始化
DirectDraw
环境,并创建
DirectDraw
工作页面。
主显页面 DXSPrimary
背景地图页面 DXSBack0
地图移动页面 DXSBack00
主缓存页面 DXSBack1
对象缓存页面 DXSgonh
BOOL game::InitDDraw(void)//功能:初始化DirectDraw 环境。
{//A.建立基本环境
1 ddrval=DirectDrawCreate( NULL, &DXW, NULL );
2 if(ddrval!= DD_OK ) return FALSE; //创建DirectDraw对象失败返回
3 ddrval=DXW→SetCooperativeLevel(GetActiveWindow(),DDSCL_NORMAL);
4 if(ddrval!= DD_OK) return FALSE; //设置窗口模式失败返回
5 ddrval=DXW→SetDisplayMode(800,600,16);
6 if(ddrval!= DD_OK) return FALSE; //设置显示模式失败返回
//B.创建主显页面
7 ddsd.dwSize = sizeof( ddsd );
8 ddsd.dwFlags = DDSD_CAPS;
9 ddsd.ddsCaps.dwCaps =DDSCAPS_PRIMARYSURFACE;
10 ddsd.dwBackBufferCount=1;
11 ddrval=DXW→CreateSurface( &ddsd,&DXSPrimary,NULL);
12 if( ddrval != DD_OK ) return FALSE; //创建主显页面失败返回
//C1.创建背景地图页面
13 Surface(WIDTH,HEIGHT); //创建背景地图页面,640X480
14 ddrval=DXW→CreateSurface(&ddsd,&DXSBack0,NULL);
15 if (ddrval!=DD_OK) return FALSE;
//C2.创建地图移动页面
Surface(WIDTH,HEIGHT); //创建地图移动页面,640X480
ddrval=DXW→CreateSurface(&ddsd,&DXSBack00,NULL);
if (ddrval!=DD_OK) return FALSE;
//C3.创建主缓存页面
Surface(SCRWI0,SCRHE0); //创建主缓存页面,800X600
ddrval=DXW→CreateSurface(&ddsd,&DXSBack1,NULL);
if (ddrval!=DD_OK) return FALSE;
//C4.创建对象缓存页面
Surface(210,200); //创建对象缓存页面, 大小按图片最大尺
ddrval=DXW→CreateSurface(&ddsd,&DXSgonh,NULL);
if (ddrval!=DD_OK) return FALSE;
//D.定义透明关键色
16 col.dwColorSpaceLowValue=RGB(255,255,255); //透明关键色
17 col.dwColorSpaceHighValue=RGB(255,255,255);//透明关键色
18 DXSgonh→SetColorKey(DDCKEY_SRCBLT,&col); //关键色
return TRUE;
<span style="color:#ff-2 InitDDraw(void) 注释
()主要分为三部分。
.建立基本环境
DirectDraw
对象,失败返回。
行设置窗口模式,失败返回。
行设置显示模式,失败返回;这里我们设为
.创建主显页面(主表面)
行我们在这里创建一个最简单的主显页面
DXSPrimary
,所谓的主显页面
(主表面)就是我们具体的屏幕显示区。
.创建各个缓存页面。
行是根据我们游戏的需要,调用
Surface(int w,int h)
函数创建一个指定高
宽的背景地图页面
,用来存放那个用来拼接大地图的地面块。以下
是根据不同要求分别创建其它页面。
为了移动大地图,我们还要创建一个地图移动页面
模式一样,我们的游戏场景是先在一个暂存设备场景中生成,完成后
再拷贝到当前显示区。这样我们还要创建一个主缓存页面
,也是在上面生成
好一幅场景后再翻转到主显页面上
DXSPrimary
。另外我们每次调入的图形还得有一个存
放点,那就再来一个对象缓存页面
DirectDraw
中得到透明显示效果,我们在这里定义对象缓存页
的关键色。
<span style="color:#ff-3 定义指定高宽的缓存页面Surface(… )函数
void game::Surface(int w,int h)// 定义缓存页面的大小
1{ ZeroMemory(&ddsd,sizeof(ddsd));
2 ddsd.dwSize = sizeof(ddsd);
3 ddsd.dwFlags = DDSD_CAPS|DDSD_HEIGHT |DDSD_WIDTH;
4 ddsd.dwWidth = //
5 ddsd.dwHeight= //
6//ddsd.ddsCaps.dwCaps=DDSCAPS_OFFSCREENPLAIN|DDSCAPS_VIDEOMEMORY;
//定义显示内存为缓存区
7ddsd.ddsCaps.dwCaps=DDSCAPS_OFFSCREENPLAIN|DDSCAPS_SYSTEMMEMORY;
//定义系统内存为缓存区
行定义页面宽、高。
行定义缓存页面在显示内存中。
行定义缓存页面在系统内存中。(二者只能选一,这里是第
<span style="color:#ff-4 gema.h 中与DirectX 有关的类变量
以下是DirectX
变量、函数定义
public: //公有,外部可调用
LPDIRECTDRAWSURFACE DXSBack1; //主缓存页面1
LPDIRECTDRAWSURFACE DXSBack0; //背景地图缓存页面
LPDIRECTDRAWSURFACE DXSBack00; //地图移动缓存页面
RECT //定义矩形
void FreeDDraw(void ); //释放所有的DirectDraw 对象
void Bk1ToPr(HDC scrhdc,CRect lpRect);//后页1 到前页
private: //私有,类内部使用
DDSURFACEDESC //页面描述
LPDIRECTDRAW DXW; // DXDraw 对象
DDCOLORKEY //透明关键色
LPDIRECTDRAWSURFACE DXSP// DXDraw 主页面
LPDIRECTDRAWSURFACE DXS //对象缓存页面
BOOL InitDDraw(void); //初始化DirectDraw 环境
void Surface(int w,int h); //定义缓存页面的大小
<span style="color:#ff-5 还需要什么
在“常数定义
”的头文件上加入
DirectDraw
的说明和标明
DirectDraw
的连接库。
#include &ddraw.h&//DirectDraw 的引用
#pragma comment(lib,&ddraw.lib&)//调用DirectDraw连接库
初始化函数中, 调用
InitDDraw()
if(!InitDDraw()) returnFALSE;//
DirectDraw
完了?就这么简单?不是还要在
的环境吗?不需要,就这样一
个可以编译
的最小配置就完成了,并且这是不依赖任何
版本的。至于
的其它复杂配置,在我们熟悉了
的基本应用后,需要用到它的其它功能
时,再给大家介绍。
现在主显页面和各缓存页面都建立了 ,剩下的工作就是如何按要求将图形在这些
页面上翻转拷贝了。
<span style="color:#ff 页面内容的拷贝
<span style="color:#ff-1 将GDI 设备图形装入DX 缓存页面
的图形装入缓存页面
if ( DXSgonh-&GetDC(&hdc) != DD_OK)return FALSE;//
BitBlt(hdc,x,y,w,h, MemDC,0,0,SRCCOPY);
DXSgonh-&ReleaseDC(hdc);
反之也可以将
缓存页面图形装入
<span style="color:#ff-2 DX 缓存页面间的拷贝
范围内的图形拷贝到
rect.left=0,rect.top=0,rect.right=w,rect.bottom=h;
if(DXSBack1-&BltFast(x,y,DXSgonh,&rect,dwTrans)!=DD_OK)
dwTrans =DDBLTFAST_WAIT
为直接拷贝。
dwTrans=DDBLTFAST_WAIT|DDBLTFAST_SRCCOLORKEY
为透明拷贝
页面的拷贝速度是非常快的。我们在
图形中引入
技术,所寻
求的主要是这个拷贝速度的提升。
另外,着重说明的一点,就是缓存页面拷贝到主显页面。
rect.left=0,rect.top=0,rect.right=w,rect.bottom=h;
if(DXSPrimary-&BltFast(x,y,DXSBack1,&rect, dwTrans)!=DD_OK)
&&&&&&&& 这是我们将处理后的图形向屏幕输送显示的过程,在
中有一个重要的技术叫页
缓存页面图形翻转到主显页面几乎是不需要额外时间的。但这必须在
DirectDraw
初始化时,定义主页面为非窗口式的独占模式
这种模式留在以后再给大家介
<span style="color:#ff 在我们的游戏中使用DirectX
&&&&&& 由于前面我们引入
时做了两个简化:一是在
,二是保持
窗口模式。现在我们用
DirectDraw
的技术对游戏做一点小小的改动,标志游戏重要的指
标显示速度马上就有很大的提升。
<span style="color:#ff-1 将对象图形调入对象缓存页面DXSgonh
getpic(CStringcc,int p,int a)
调压缩图形函数的修改,修改部分见加黑处。
时的原调用功能,该功能在生成小地图时需要。
//**************************************************
// BOOL getpic(CString cc,int p,int a) 调压缩图形
// A. 调cc 指定的压缩图形包中第p 个图形和图形的尺寸w、h
// B. a=0 时取得的图形在对象缓存页面DXSgonh 中。
// C. a=1 时取得的图形在MemDC 中。
//**************************************************
BOOL game::getpic(CString cc,int p,int a)//调图片
if(p&0) return FALSE;
if(cc==&人&)
{if(p&RBUF-1) return FALSE;
len=rbufadd[p+1]-rbufadd[p]; //取数据块长度
tmp=(BYTE *)new BYTE[len];
Memcpy0(tmp,rtmp+rbufadd[p],len);
if(cc==&兽&)
if(cc==&景&)
LPBITMAPINFOHEADER bm=(BITMAPINFOHEADER *) //图形数据转换
bm-&biSize = sizeof(BITMAPINFOHEADER);
w=bm-&biW //图形高
h=bm-&biH //图形宽
//DX-----------------------------------------------------------
{HDC //将图形装入动画缓存区DXSgonh
if ( DXSgonh-&GetDC(&hdc) != DD_OK)return FALSE;//
StretchDIBits(hdc,0,0,w,h,0,0,w,h,tmp+256*sizeof(RGBQUAD)+bm-&biSize,
(BITMAPINFO* )bm,DIB_RGB_COLORS,SRCCOPY);
DXSgonh-&ReleaseDC(hdc);
//-------------------------------------------------------------
{StretchDIBits(MemDC,0,0,w,h,0,0,w,h,tmp+256*sizeof(RGBQUAD)+bm-&biSize,
(BITMAPINFO* )bm,DIB_RGB_COLORS,SRCCOPY);
return TRUE;
<span style="color:#ff-2 Alphasetobj(int q,int a)对象显示的修改
这是将各个对象显示到主缓存页面的关键部分,修改点就只有一行, 将原
透明显示换成
的__________
带透明显示的页面拷贝就行了。
TransparentBlt2(BkDC1,x,y,w,h,MemDC,0,0,w,h,RGB(255,255,255));//透明显
MemDC→ BkDC1 换成 DXSgonh→ DXSBack1;
rect.left=0,rect.top=0,rect.right=w,rect.bottom=h;
DXSBack1-&BltFast(x+SCRW,y+SCRH,DXSgonh,&rect,DDBLTFAST_WAIT
|DDBLTFAST_SRCCOLORKEY);
修改部分见加黑处。
void game::Alphasetobj(int q,int a)//对象显示
{ if(a==1&&man[q].lb==2)
rect.left=0,rect.top=0,rect.right=w,rect.bottom=h;
if(a==0)//DX
{if(DXSBack1-&BltFast(x+SCRW,y+SCRH,DXSgonh,&rect,DDBLTFAST_WAIT
|DDBLTFAST_SRCCOLORKEY)!=DD_OK) //在缓存区透明显示
else Alpha(x,y);
11-5-3 Alpha(int x,int y) DX 半透明显示函数
的半透明显示函数构成稍微复杂一点,图形的通道合成本身算是一个比较复杂
的算法;这里我们还是使用
AlphaBlend
)半透明处理函数,在这
中的半透明处理效果。我们先再看一下在
中的处理方法。
BitBlt(BK,0,0,w,h,BkDC1,x,y,SRCCOPY);
将要处理成半透明的对象区保存在
TransparentBlt2(BkDC1,x,y,w,h,MemDC,0,0,w,h,RGB(255,255,255));
再将活动对象在
中透明显示一次。
AlphaBlend(BkDC1,x,y,w,h,BK,0,0,w,h,rBlend);
半透明处理,将
半透明拷贝到
void game::Alpha(int x,int y)//DX 半透明显示
1 if ( DXSBack1→GetDC(&hdc) != DD_OK)
2 BitBlt(hDC0,0,0,w,h,hdc,x+SCRW,y+SCRH,SRCCOPY);
3 BitBlt(hDC1,0,0,w,h,hdc,x+SCRW,y+SCRH,SRCCOPY);
4 DXSBack1→ReleaseDC(hdc);
5 if ( DXSgonh→GetDC(&hdc) != DD_OK)
6TransparentBlt2(hDC1,0,0,w,h,hdc,0,0,w,h,RGB(255,255,255));//透明显示
7 AlphaBlend(hDC1,0,0,w,h,hDC0,0,0,w,h,rBlend); //半透明处理
8 BitBlt(hdc,0,0,w,h,hDC1,0,0,SRCCOPY);
9 DXSgonh→ReleaseDC(hdc);
10 if(DXSBack1→BltFast(x+SCRW,y+SCRH,DXSgonh,&rect,DDBLTFAST_WAIT
|DDBLTFAST_SRCCOLORKEY)!=DD_OK) //在主缓存页面上透明显
半透明显示注释
这里新增加了两个设备场景用于
半透明处理,
.将要处理成半透明的对象区保存在
行获取主缓存页面的设备场景
行将要处理成半透明的对象区保存在
中再保存一次。
.再将活动对象在
中透明显示一次。
行获取对象缓存页面的设备场景
透明显示。
.半透明处理,将
半透明拷贝到
半透明拷贝到
行透明显示结果
,实质上是拷贝到对象缓存页面
行对象缓存页面
中的半透明图拷贝到主缓存页面
半透明处理看起来好像是有些复杂,但需要半透明处理的只是当前显示区中的
它的数量少、图形也比较小。所以增加
半透明处理后,对整个系统的开
销没有多大的影响。
<span style="color:#ff-4 Bk1ToPr(?)主缓存页面到主页面函数
&&&&&& Bk1ToPr
)是在“再快一点
OnTimer(… )
时钟函数中替换用
窗口。这是游戏显示品质因素提升的关键之处。
BitBlt(dc.m_hDC,2,10,WIDTH,HEIGHT,m_game.BkDC1,0,0,SRCCOPY);//用Bk1 刷新窗口
m_game.Bk1ToPr(dc.m_hDC,lpRect);//主缓存页面到主页面
void game::Bk1ToPr(HDC scrhdc,CRect lpRect)// 主缓存页面到主页面
{rect.left=SCRW,rect.top=SCRH,rect.right=WIDTH+SCRW,rect.bottom=HEIGHT+SCRH;
if( DXSPrimary→BltFast(lpRect.left+5,lpRect.top+13,
DXSBack1,&rect,DDBLTFAST_WAIT)!=DD_OK)
<span style="color:#ff-5 地图块移动拼接的DX 方法
&&&&&&& 对照原来
的地图块移动拼接函数,和在前面讲的
缓存页面间的拷贝,这个
修改后的函数是容易理解的(这里再放上
设备场景和
页面名称对照表)。
//**************************************************
// mlmap() 地图块移动拼接
// 这里使用的是单地图无缝拼接移动算法。
//**************************************************
void gamemap::mlmap()//地图块移动拼接DX
{if(movemap!=0) //地图有移动。
{int gx=scrx%WIDTH,gy=scry%HEIGHT;
//地图横向移动--------------------------------------------------------
rect.left=gx, rect.right=WIDTH, rect.top=0,rect.bottom=HEIGHT;
DXSBack00→BltFast(0,0,DXSBack0,&rect,DDBLTFAST_WAIT);
//--------------------------------------------------------------------
rect.left=0, rect.right=gx, rect.top=0,rect.bottom=HEIGHT;
DXSBack00→BltFast(WIDTH-gx,0,DXSBack0,&rect,DDBLTFAST_WAIT);
//地图纵向移动--------------------------------------------------------
rect.left=0, rect.right=WIDTH, rect.top=gy,rect.bottom=HEIGHT;
DXSBack1→BltFast(SCRW,SCRH,DXSBack00,&rect,DDBLTFAST_WAIT);
//--------------------------------------------------------------------
rect.left=0, rect.right=WIDTH, rect.top=0,rect.bottom=
DXSBack1→BltFast(SCRW,SCRH+HEIGHT-gy,DXSBack00,&rect,DDBLTFAST_WAIT);
sort(); //按Y 坐标排序,用于在显示时分出前后位置
movemap=0; //地图移动否?
<span style="color:#ff-6 调地面块到背景地图页面DXSBack0
&&&&&& 在生成小地图的
中,我们调入的用于拼接大地图的地面块,不要忘记拷
贝到背景地图页面
void gamemap::getsmap()//生成小地图
{//调地面块到BkDC0 地图设备场景
char name[256];
sprintf(name,&%s%s&,dir,mapbak);
loadbmp(name);
SelectObject(MemDC,bitmap);
//DX 把位图装入背景地图页面///////////////////////////
if ( DXSBack0→GetDC(&hdc) != DD_OK)
BitBlt(hdc,0,0,WIDTH,HEIGHT,MemDC,0,0,SRCCOPY);
DXSBack0→ReleaseDC(hdc);
DeleteObject(bitmap); //删除上次的位图内存。
这几处修改完成后,我们的游戏又可以编译运行了。这样游戏在运行中有了
几个明显的变化。
一是,游戏运行时自动切换到
位色模式下;二是,显示速度明显加
快。在作者
P3-800/128M
内存的机器上,每屏显示时间从“快一点”的
(这个时间是相对的,它与当前屏上的对象数有关)。
详细内容请看本章实例程序
“再快一点”。
<span style="color:#ff 小结
在这一章里,我们学了以下知识和方法。
环境和创建工作页面的方法
.各种页面内容的拷贝方法。
图形处理方法的简单比较。
已发表评论数()
已收藏到推刊!
请填写推刊名
描述不能大于100个字符!
权限设置: 公开
仅自己可见
正文不准确
标题不准确
排版有问题
没有分页内容
图片无法显示
视频无法显示
与原文不一致23.62G 类型:角色扮演语言:英文时间:日
5.05G 类型:角色扮演语言:中文时间:日
6.21G9.23G137M21.5M6M
35.16G1.56G2.05G2.63G1.19G
周热门资讯
周热门大作我的电脑用的是win7旗舰版64位 sp1 directx11,有很多游戏玩不了该怎么办?_百度知道
我的电脑用的是win7旗舰版64位 sp1 directx11,有很多游戏玩不了该怎么办?
2 (英特尔 H61 芯片组)内存 4 GB ( 金士顿 DDR3 1333MHz )主硬盘 西数 WDC WD5000AAKX-001CA0 ( 500 GB &#47.1 英寸 )声卡 瑞昱 ALC887 @ 英特尔 6 Series Chipset 高保真音频网卡 瑞昱 RTL8168E PCI-E Gigabit Ethernet NIC &#47; 索泰 )显示器 瀚视奇 HSD8991 Hanns:操作系统 Windows 7 旗舰版 64位 SP1 ( DirectX 11 ) 处理器 英特尔 Core i5-2380P @ 3.10GHz 四核主板 技嘉 H61M-DS2 REV 1,有什么解决的办法; 7200 转&#47.G HW191 ( 19装xp操作系统太麻烦?这是我的电脑配置.0安装出错,directx9;分 )显卡 Nvidia GeForce GTX 560 SE ( 1 GB &#47
实在没办法,推荐几款画面比较好的FPS游戏也可以,不要太大了3G-8G就可以。
提问者采纳
你可以舍弃你的高配置系统
换成一个32位的win7系统
现在有好多软件并不支持64位系统
其他类似问题
为您推荐:
win7旗舰版64位的相关知识
其他2条回答
可以装双系统的,只要在安装时选择不同的目录或分区就可以
这个,不知道啊
等待您来回答
下载知道APP
随时随地咨询
出门在外也不愁&| &| &| &| &| &| &| &| &| &|
&| &| &| &| &| &| &| &| &| &|
&| &| &| &| &| &| &| &| &| &|
&&>&&>&&>& > 使命召唤10幽灵怎么破除DirectX11限制
使命召唤10幽灵怎么破除DirectX11限制
  现在的许多游戏都在使用DirectX11了,但是有时候使用DirectX11游戏机运行起来也不是很流畅的说,今天我给大家介绍使命召唤10幽灵怎么去除DirectX11限制,有需要的童鞋可以过来看看,正版本人亲测SP+MP都可用。
  我测试的版本是dx10.1的,其他的版本的我还么有测试过,不知道可以不,在开始之前我们要下载一个Windows Kits2工具。
  Windows Kits工具:点击下载
  1、安装这个程序只要点OK就可以了,大概20分钟就搞定了。
  2、安装好之后,我们在开始菜单搜索dxcpl.exe,然后打开
  3、之后点击Edit List按钮,进入下一界面。
  4、然后再点击红框按钮,就会跳出文件选择界面,然后选择游戏执行文件,点OK保存退出。
  5、勾选上 Force Warp,在feature level limit选项中选择11_1,点击确定退出此界面
  最后就可以开始游戏了,可能会出现掉帧的情况,大家分辨率尽量低一些。
  如果还想了解更多相关游戏资讯和攻略,请关注小皮《使命召唤10:幽灵》专区。
本类周排行榜
本类最新更新君,已阅读到文档的结尾了呢~~
扫扫二维码,随身浏览文档
手机或平板扫扫即可继续访问
Win7系统安装了DirectX11为什么玩游戏时还提示安装DirectX9
举报该文档为侵权文档。
举报该文档含有违规或不良信息。
反馈该文档无法正常浏览。
举报该文档为重复文档。
推荐理由:
将文档分享至:
分享完整地址
文档地址:
粘贴到BBS或博客
flash地址:
支持嵌入FLASH地址的网站使用
html代码:
&embed src='/DocinViewer-4.swf' width='100%' height='600' type=application/x-shockwave-flash ALLOWFULLSCREEN='true' ALLOWSCRIPTACCESS='always'&&/embed&
450px*300px480px*400px650px*490px
支持嵌入HTML代码的网站使用
您的内容已经提交成功
您所提交的内容需要审核后才能发布,请您等待!
3秒自动关闭窗口}

我要回帖

更多关于 directx出现错误 的文章

更多推荐

版权声明:文章内容来源于网络,版权归原作者所有,如有侵权请点击这里与我们联系,我们将及时删除。

点击添加站长微信