DirectX游戏设计》考试样题一
一、 单选题(30题,每题1分,共30)
1.典型的windows SDK方式的开发中,遵循这样一个过程:( C )
  A.创建窗口->显示窗口->注册窗口类->初始化窗口类
B. 注册窗口类->初始化窗口类->创建窗口->显示窗口
C.初始化窗口类->注册窗口类->创建窗口->显示窗口
  D.创建窗口->注册窗口类->初始化窗口类->显示窗口
2 Windows编程中,退出消息循环的条件是:( A
A GetMessage()从消息队列中获得WM_QUIT消息
  B 用户按下窗口关闭按钮
Cidentity matrix是什么意思 用户调用DestroyWindow()函数
D 用户利用Ctrl+Alt+Del,在Windows任务管理器中关闭进程
3Windows SDK方式的开发中,响应菜单或按钮我们需要关注的消息是:( B )
AWM_CREATE    B. WM_COMMAND
CWM_MENU      DWM_BUTTON
4D3D中属于旋转函数的是:( B
AD3DXMatrixScaling()      BD3DXMatrixRotationX()
CD3DXMatrixTranslation()  DD3DXMatrixTranspose()
5.单位矩阵、矩阵转置、逆矩阵的调用函数分别是:( C )
AD3DXMatrixInverseD3DXMatrixIdentityD3DXMatrixTranspose
B. D3DXMatrixIdentityD3DXMatrixInverseD3DXMatrixTranspose
  CD3DXMatrixIdentityD3DXMatrixTransposeD3DXMatrixInverse
DD3DXMatrixInverseD3DXMatrixTranspose D3DXMatrixIdentity
6.逆矩阵的特点是:( C )
A 和原矩阵相乘等于原矩阵      B.和原矩阵相乘等于逆矩阵
C 和原矩阵相乘等于单位矩阵    D.和原矩阵相乘等于全1矩阵
7.初始化Direct3D的第一步是要得到一个( B )接口。
AIDirect3DSurface9    BIDirect3D9
CIDirect3DDevice9      DIUnknown
8. D3DSetTransform函数的第一个参数通常要指定所需要进行的坐标变换方式,那么世界变换和视图变换分别采用的参数标志是:( A )
AD3DTS_WORLDD3DTS_VIEW    BD3DTS_WORLDD3DTS_PROJECT
CD3DTS_PROJECTD3DTS_VIEW  DD3DTS_PROJECTD3DTS_WORLD
9.在透视投影变换中,所定义的摄像机可视范围是:( B
A.长方体  C.半个正方体  B.平截台体  D.四棱锥
10D3D中可以使用自定义顶点格式,那么如果顶点结构体中包含顶点坐标、颜信息、向量信息、贴图坐标信息,那么设置顶点格式的时候需要指定:( D )
AD3DFVF_TEX1|D3DFVF_DIFFUSE|D3DFVF_XYZ
B. D3DFVF_DIFFUSE|D3DFVF_XYZ
CD3DFVF_XYZ|D3DFVF_NORMAL
DD3DFVF_NORMAL|D3DFVF_TEX1|D3DFVF_DIFFUSE|D3DFVF_XYZ
11D3D中缺省的背面拣选方式为:( B )
A.顺时针排列的三角形被拣选
B.逆时针排列的三角形被拣选
C.不拣选
D.全部拣选
12.视图空间变换矩阵通过以下D3DX函数计算
D3DXMATRIX *D3DXMatrixlookAtLH
D3DXMATRIX* pOut,//指向视图矩阵的指针
CONST D3DXVECTOR3 * pEye, //摄像机在世界坐标系中的位置
CONST D3DXVECTOR3 * pAt, //摄像机的观察点
CONST D3DXVECTOR3 * pUp, //摄像机的向上向量);
向量*pAt - *pEye所获得的向量是视图空间( D
AX轴正方向    BX轴负方向      CY轴正方向    DZ轴正方向
13.以下光照效果与观察者位置相关的是: C
A.环境光        B.漫反射光    C.镜面反射光    D.自发光
14.在平面着模型中,图元的颜是由( A )决定的
A.第一个顶点的颜      B.各顶点颜的线性内插值
C.最近点顶点的颜      D.相邻像素的颜
15.在纹理采样的算法中,速度最快、精度最差的是:( A
A.最近点采样 B.线性过滤采样 C.各向异性过滤采样 D.无法确定,视情况而定
16. D3D纹理贴图的时候,贴图左上角的u,v坐标为:( C )
A(0,1)  B(1,0)  C(0,0)  D(1,1)
17.在D3D编程中,保存像素深度值的缓冲区是:( C
AFront Buffer  BBack Buffer  CZ Buffer  DIndex Buffer
18.模版缓冲区和( A )共享同一个表面缓冲区。
A.深度缓冲区 B.顶点缓冲区  C.索引缓冲区 D.广度缓冲区
19. D3DSetRenderState函数的用途非常大,那么如果设置深度缓冲打开需要调用语句:( A )
A(D3DRS_ZENABLE,TRUE)    B(D3DRS_FOGENABLE,TRUE)
C(D3DRS_LIGHT,TRUE)        D(D3DRS_RENDER,TRUE)
20. Direct3D中,使用D3DMATERIAL9结构表示材质,代码
Typedef struct_D3DMATERIAL9
D3DCOLORVALUE Diffuse,Ambient,Specular,Emissive;
Float power;
D3DMATERIAL9;
中,Ambient指的是什么意思( B
A.指定散射光的反射率  B.指定环境光的反射率
C.指定物体发出的光    D.指定镜面高光的集中度
21.在游戏中那一个不能达成阴影的效果( A )
A 采用光照模型    B.使用贴图
C. 平面阴影技术      D.使用阴影锥技术
22.在实现下列特效时,需要使用模板缓冲区的是:( B
A.铬表面金属壶      B.阴影体
C.卡通渲染        D.凹凸不平的墙面
23.在D3D中进行Alpha混合需要首先设置如下的那种渲染状态( A
ASetRenderState( D3DRS_ALPHABLENDENABLE, TRUE );
BSetRenderState( D3DRS_ALPHATESTENABLE, TRUE );
CSetRenderState(D3DRS_ALPHAREF, TRUE );
DSetRenderState(D3DRS_ ALPHAFUNC, TRUE );
24.想要创建立体效果的文字使用( C )方法
AID3DFont        BCD3DFont
CD3DXCreatText  D3DFont
25. D3D导入”.X”模型文件的时候调用的函数是:( A )
AD3DXLoadMeshFromX      BD3DLoadMeshFromX
CD3DXLoadMeshFromFile    DD3DLoadMeshFromFile
26.在ID3DXBaseMesh中,得到指向顶点缓冲区的指针的方法正确的是( A )
A.HRESULT ID3DXMesh::GetVerterxBuffer(LPDIRECT3DVERTEXBUFFER9* ppVB);
B.VOID ID3DXMesh::DWORD GetFVF(VOID);
C.HRESULT ID3DXMesh::OptimizeInplace (LPDIRECT3DVERTEXBUFFER9* ppVB);
D.HRESULT ID3DXMesh::GetAttributeTable(LPDIRECT3DVERTEXBUFFER9* ppVB);
27.以下列出哪个不是ID3DXPMesh接口的相关方法( D )
ADWORD GetMaxFaces(VOID);
B. DWORD GetMaxVertices(VOID);
C. DWORD GetMinFaces(VOID);
D. DWORD GetNum(VOID Faces);
28VertexShdaer相当于固定渲染管线的: A
A.变换及光照    B.纹理采样
C.剪裁          DAlpha混合
29.对于一个如下的顶点结构来说:
Struct Vertex
D3DXVECTOR3 pos;
D3DXVECTOR3 normal;
;
成员pos为第一个成员,因此它的偏移值为0,又sizeof(pos)12,那么成员normal偏移值为(C )
A0    B.1    C.12    D.13
30ID3DXEffect::Begin函数的作用: B
A.用参数指针返回所有的technique所拥有的pass的数量。
B.用参数指针返回当前被激活的technique所拥有的pass的数量。
C.用参数指针返回所有被激活的technique所拥有的pass的名称。
D.用参数指针返回当前被激活的technique所拥有的pass的名称。
二、 多选题(20题,每题2分,共40)
1. 为拦截按键被按下的消息,SDK方式的开发可以实现以下消息:( AB )
A. WM_KEYDOWN    B. WM_CHAR
C. WM_KEY          D. WM_PRESS
2. Windows程序设计如果用MFCApp wizard开发,可选择的框架有:( CD )

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。