《DirectX游戏设计》考试样题一
一、 单选题(30题,每题1分,共30分)
1.典型的windows SDK方式的开发中,遵循这样一个过程:( C )
A.创建窗口->显示窗口->注册窗口类->初始化窗口类
B. 注册窗口类->初始化窗口类->创建窗口->显示窗口
C.初始化窗口类->注册窗口类->创建窗口->显示窗口
D.创建窗口->注册窗口类->初始化窗口类->显示窗口
2. Windows编程中,退出消息循环的条件是:( A )
A. GetMessage()从消息队列中获得WM_QUIT消息
B. 用户按下窗口关闭按钮
C.identity matrix是什么意思 用户调用DestroyWindow()函数
D. 用户利用Ctrl+Alt+Del,在Windows任务管理器中关闭进程
3.Windows SDK方式的开发中,响应菜单或按钮我们需要关注的消息是:( B )
A.WM_CREATE B. WM_COMMAND
C.WM_MENU D.WM_BUTTON
4.D3D中属于旋转函数的是:( B )
A.D3DXMatrixScaling() B.D3DXMatrixRotationX()
C.D3DXMatrixTranslation() D.D3DXMatrixTranspose()
5.单位矩阵、矩阵转置、逆矩阵的调用函数分别是:( C )
A.D3DXMatrixInverse、D3DXMatrixIdentity、D3DXMatrixTranspose
B. D3DXMatrixIdentity、D3DXMatrixInverse、D3DXMatrixTranspose
C.D3DXMatrixIdentity、D3DXMatrixTranspose、D3DXMatrixInverse
D.D3DXMatrixInverse、D3DXMatrixTranspose、 D3DXMatrixIdentity
6.逆矩阵的特点是:( C )
A. 和原矩阵相乘等于原矩阵 B.和原矩阵相乘等于逆矩阵
C. 和原矩阵相乘等于单位矩阵 D.和原矩阵相乘等于全1矩阵
7.初始化Direct3D的第一步是要得到一个( B )接口。
A.IDirect3DSurface9 B.IDirect3D9
C.IDirect3DDevice9 D.IUnknown
8. D3D中SetTransform函数的第一个参数通常要指定所需要进行的坐标变换方式,那么世界变换和视图变换分别采用的参数标志是:( A )
A.D3DTS_WORLD和D3DTS_VIEW B.D3DTS_WORLD和D3DTS_PROJECT
C.D3DTS_PROJECT和D3DTS_VIEW D.D3DTS_PROJECT和D3DTS_WORLD
9.在透视投影变换中,所定义的摄像机可视范围是:( B )
A.长方体 C.半个正方体 B.平截台体 D.四棱锥
10.D3D中可以使用自定义顶点格式,那么如果顶点结构体中包含顶点坐标、颜信息、向量信息、贴图坐标信息,那么设置顶点格式的时候需要指定:( D )
A.D3DFVF_TEX1|D3DFVF_DIFFUSE|D3DFVF_XYZ
B. D3DFVF_DIFFUSE|D3DFVF_XYZ
C.D3DFVF_XYZ|D3DFVF_NORMAL
D.D3DFVF_NORMAL|D3DFVF_TEX1|D3DFVF_DIFFUSE|D3DFVF_XYZ
11.D3D中缺省的背面拣选方式为:( B )
A.顺时针排列的三角形被拣选
B.逆时针排列的三角形被拣选
C.不拣选
D.全部拣选
12.视图空间变换矩阵通过以下D3DX函数计算
D3DXMATRIX *D3DXMatrixlookAtLH(
D3DXMATRIX* pOut,//指向视图矩阵的指针
CONST D3DXVECTOR3 * pEye, //摄像机在世界坐标系中的位置
CONST D3DXVECTOR3 * pAt, //摄像机的观察点
CONST D3DXVECTOR3 * pUp, //摄像机的向上向量);
向量*pAt - *pEye所获得的向量是视图空间( D )
A.X轴正方向 B.X轴负方向 C.Y轴正方向 D.Z轴正方向
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 )
A.Front Buffer B.Back Buffer C.Z Buffer D.Index Buffer
18.模版缓冲区和( A )共享同一个表面缓冲区。
A.深度缓冲区 B.顶点缓冲区 C.索引缓冲区 D.广度缓冲区
19. D3D中SetRenderState函数的用途非常大,那么如果设置深度缓冲打开需要调用语句:( 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 )
A.SetRenderState( D3DRS_ALPHABLENDENABLE, TRUE );
B.SetRenderState( D3DRS_ALPHATESTENABLE, TRUE );
C.SetRenderState(D3DRS_ALPHAREF, TRUE );
D.SetRenderState(D3DRS_ ALPHAFUNC, TRUE );
24.想要创建立体效果的文字使用( C )方法
A.ID3DFont B.CD3DFont
C.D3DXCreatText D.3DFont
25. D3D导入”.X”模型文件的时候调用的函数是:( A )
A.D3DXLoadMeshFromX B.D3DLoadMeshFromX
C.D3DXLoadMeshFromFile D.D3DLoadMeshFromFile
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 )
A.DWORD GetMaxFaces(VOID);
B. DWORD GetMaxVertices(VOID);
C. DWORD GetMinFaces(VOID);
D. DWORD GetNum(VOID Faces);
28.VertexShdaer相当于固定渲染管线的: A
A.变换及光照 B.纹理采样
C.剪裁 D.Alpha混合
29.对于一个如下的顶点结构来说:
Struct Vertex
{
D3DXVECTOR3 pos;
D3DXVECTOR3 normal;
};
成员pos为第一个成员,因此它的偏移值为0,又sizeof(pos)为12,那么成员normal偏移值为(C )
A.0 B.1 C.12 D.13
30.ID3DXEffect::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程序设计如果用MFC的App wizard开发,可选择的框架有:( CD )
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。
发表评论