DirectX程序的设计复习资料全
- 格式:doc
- 大小:88.00 KB
- 文档页数:25
《DirectX程序设计》19秋期末考核-0001------------------------1.Windows SDK方式的开发中,响应菜单或按钮我们需要关注的消息是:A.WM_CREATEB.WM_COMMANDC.WM_MENUD.WM_BUTTON正确答案:B2.()是Direct3D用来存储绘制到屏幕上的每个像素点深度信息的一块内存缓冲区A.广度缓存B.深度缓存C.深度测试D.广度测试正确答案:B3.()是图形中最基本的几何对象。
A.点C.向量D.三角形正确答案:A4.利用模板缓存来阻止对后台缓存村长哦功能某些特定区域进行绘制,判定是否将某个像素写入后台缓存的决策过程称为()A.模板测试B.深度缓存C.深度测试D.Alpha测试正确答案:A5.()对象是用来指定字体属性的。
A.LPD3DXFONTB.LPDIRECT3D9C.LPDIRECT3DDEVICE9D.RECT正确答案:A6.DirectX9中发布了高级着色器语言,是()A.GLSLC.CgD.C++正确答案:B7.()变换后的的几何体位于观察坐标系中。
A.局部变换B.取景变换C.世界变换D.空间变换正确答案:B8.()的功能是对进入管线的每一个像素点进行着色处理A.像素着色器B.着色器C.顶点着色器D.可编程着色器正确答案:A9.以下哪个释放顺序是正确的。
A.Direct3D对象、Direct3D设备对象B.Direct3D设备对象、Direct3D对象C.顺序任意D.无需释放正确答案:B10.()是一个由相互连接的线段组合成的造型,程序可用它产生不封闭的多边形。
A.点列表B.线段列表C.线段条带D.三角形列表正确答案:C------------------------1.D3D中的常见的矩阵变化( )A.旋转B.缩放C.平移D.组合变换正确答案:ABCD2.投影变换包括哪几种投影方式。
A.平面投影B.透视投影C.正射投影D.缩放投影正确答案:BC3.DirectX主要由()和()所构成。
内容摘自《DirectX 9.0 3D 游戏开发编程基础》章节一.1.必备数学知识二.1.初始化Direct3D2.(固定)绘制流水线3.Direct3D 中的绘制4.颜色5.光照6.纹理映射7.融合技术8.模板三.9.字体10.网格(一)11.网格(二)12.自定义Camera 类13.地形绘制14.粒子系统15.拾取四.16.着色语言HLSL17.顶点着色器18.像素着色器19.效果框架一.1.必备数学知识1.1向量及坐标系选取,D3D 中以LH/RH 标记左手/右手坐标系。
1.2向量运算:数乘点积-用于计算两个向量的夹角(cos θ)及判断向量垂直。
叉积-计算与两个向量所在平面垂直的向量,可用于面片法向量的计算。
1.3矩阵:在3D 图形应用中,常用4X4矩阵和1X4行向量进行运算。
由于多数变换无法用3阶矩阵表示3维变换,因此3D 变换中的矩阵为4维矩阵。
由于3维坐标空间中点和向量具有相同的表示形式,因此在进行运算时,将点和向量扩展至4D 空间时,通过如下形式:123(,,,1)p p p p =表示点(保证能平移变换);以123(,,,0)v v v v =表示向量(防止平移变换)。
1.4 3维空间中的变换:平移矩阵、旋转矩阵、比例变换矩阵1.5平面D3DXPLANE 在D3D 中存储平面及相应操作。
平面定义为满足0()0n p p ∙-=的所有点的集合,因此可通过平面法向量n 和平面上一点0p 表示,在代码中存储n 和0d n p =-∙表示平面;平面可被看做4D 向量(n,d )进行变换;当平面被规范化(法向量为单位向量且重新计算d ),则n p d ∙+为p 点到平面的最短有符号距离。
1.6射线定义为0()p t p tu =+。
射线与平面的相交判定用于拾取的实现。
二.1. 初始化Direct3D1.1 Direct3D 提供了操纵图形设备(通过HAL 硬件抽象层)的API 。
由HAL 提供的硬件支持的功能可被D3D 接口操作;硬件不支持时由REF 设备实现,由D3DDEVTYPE 枚举类型成员指定。
《DirectX程序设计》课程期末复习资料第一章3D游戏开发的数学基础本章包含的全部知识点:●点和向量●直线与平面●矩阵与坐标变换●坐标系章节重点:矩阵和坐标变换第二章Windows编程基础本章包含的全部知识点:●基本概念介绍●Windows程序结构●Win32程序开发实例第三章DirectX快速入门本章包含的全部知识点:●DirectX概述●Direct3D 底层结构概述●DirectX9.0的配置和安装章节重点:DirectX9.0的配置和安装第四章 DirectX程序框架本章包含的全部知识点:●Win32+C+Direct3D的基础框架●DXUT框架章节重点:Win32+C+Direct3D的基础框架第五章文本显示本章包含的全部知识点:●文本绘制流程●Win32程序框架实现●DXUT程序框架实现章节重点:Win32程序框架实现第六章基本图形的绘制本章包含的全部知识点:●图元●灵活顶点格式(FVF)●使用顶点缓存绘制图形●索引缓存●颜色表示法●渲染状态●绘制准备●D3DX几何物体●实例设计与实现章节重点:顶点缓存索引缓存第七章变换本章包含的全部知识点:●摄像机●顶点变换●光栅化●实例章节重点:顶点变换第八章 3D数学基础补充本章包含的全部知识点:●常见坐标系●向量●矩阵●线性变换章节重点:●线性变换第九章光照和材质本章包含的全部知识点:●真实感图形基本概念●Direct3D中的光照●Direct3D中的材质●光照和材质例子章节重点:Direct3D中的光照Direct3D中的材质第十章纹理映射本章包含的全部知识点:●纹理贴图●纹理坐标●纹理寻址模式●纹理过滤●纹理混合状态●纹理实例解析章节重点:纹理寻址模式纹理过滤第十一章深度测试和反走样本章包含的全部知识点:●深度缓存与深度测试●图形反走样●深度测试实例章节重点:深度缓存与深度测试第十二章网格(一)本章包含的全部知识点:●ID3DXMesh●子集和属性缓存●绘制●邻接信息●优化●属性表●创建一个Mesh●例子章节重点:子集和属性缓存创建一个Mesh第十三章网格(二)●X文件格式解析●读取X文件●渐进网格●渐进网格例子章节重点:深度缓存与深度测试第十四章混合和模板本章包含的全部知识点:●混合因子●混合计算●Alpha来源●Alpha混合实例●模板章节重点:Alpha混合实例第十五章着色器入门本章包含的全部知识点:●着色器概述●HLSL的变量●HLSL的函数●HLSL基本语法●在Direct3D中使用HLSL 章节重点:Alpha混合实例第十六章顶点着色器●顶点着色器概述●顶点声明●使用顶点着色器●顶点着色器实例第十七章像素着色器本章包含的全部知识点:●像素着色器概述●使用像素着色器●HLSL采样器对象●多重纹理●例子程序一、客观部分:(单项选择、多项选择、不定项选择、判断)(一)、选择部分1.D3DPRESENT_PARAMETERS参数很多,关于其中参数之一windowed的理解正确的是(ABD)A.取值FALSE则渲染全屏B.取值TRUE则渲染窗口C. int类型D.BOOL类型E.double类型★考核知识点: D3DPRESENT_PARAMETERS2.以下属于Direct 3D定义的图元类型的有(ABCD)A.点列表B.线段条带C.三角形列表D.三角形条带E.四边形列表★考核知识点: 图元3.以下属于Direct 3D提供的着色模式的是(AB )A.平面着色模式B.高洛德法着色模式C.渐变着色模式D.单颜色着色模式★考核知识点: 着色模式4.下面属于Direct3D提供的创建旋转矩阵的函数的是(ABC)A.D3DXMatrixRotarionXB. D3DXMatrixRotarionYC. D3DXMatrixRotarionZD. D3DXMatrixRotXE. D3DXMatrixRotY★考核知识点: 变换5.以下属于Direct3D提供的简化纹理过滤的过程的是(ABCD)A.最近点采样B.线性过滤C.各向异性过滤D.mipmap过滤★考核知识点: 纹理过滤6.D3DPRESENT_PARAMETERS参数很多,下面理解正确的是(ABCD)A.Windowed取值FALSE则渲染全屏B. BackBufferCount表示后备缓冲的数目C. SwapEffect表示交换缓冲类型D.BackBufferFormat表示后备缓冲的格式★考核知识点: D3DPRESENT_PARAMETERS7.以下属于Direct3D中提供的标准光源的是(ABC )A.点光源B.方向光源C.聚焦光源D.多点光源★考核知识点: 光源8.关于灵活顶点格式下列说法正确的是(ABD)A. D3DFVF_DIFFUSE表示顶点数据中包含的是漫反射颜色值;B. D3DFVF_SPECULAR表示顶点数据中包含的是镜面反射下的颜色值C. D3DFVF_XYZRHW表示顶点数据中包含的是未经过坐标变换的顶点坐标D. D3DFVF_XYZ顶点数据中包含未经坐标变换的顶点坐标考核知识点: 灵活顶点格式解析:C项应该是经过坐标变换后的顶点坐标9.关于顶点Alpha描述正确的是(AB)A.如果在程序中直接指定每个顶点的颜色,直接给出每个顶点颜色的Alpha 值。
返回总目录第一篇DirectX目录第一章 DirectX简介1.1 DOS已经过时1.2 加速DirectX1.3 加速计算机工业1.4 Directness原理1.5 Direct结构1.6 DirectX组件1.7 小结第二章基础2.1 期望什么2.2 COM(对象组件模型)入门2.3 编程经验 242.4 调试DirectX2.5 总结第三章开始使用DirectX3.1 安装3.2 文档3.3 例子程序源代码3.4 其他有用的信息3.5 使DirectX开始工作3.6 总结第一章 DirectX简介到目前为止,Microsoft Windows下的计算机游戏还没有一个辉煌的历史──它的成功还受到多媒体技术方面的限制。
Windows所提供的应用程序和PC平台之间的设备独立性使得游戏和多媒体开发者备受压力,这是因为设备独立性技术使得软件和硬件之间增添了许多中间层次,因此要想在Windows平台上生成平滑、快速的动画和紧凑、实时的输入和声音是非常困难的。
Windows的中心思想就是要把开发者和应用程序从硬件中分离出来,但这一点对于那些想直接操作硬件而获得最大速度的游戏开发者来说是致命的。
市场需要的是高性能的游戏,因此,对于那些想把Windows作为计算机游戏平台的推广者来说,“DOS!DOS!DOS!”是他们经常遇到的对DOS游戏的赞歌!1.1 DOS已经过时然而,MS-DOS也有它自已的问题,其中最棘手的是硬件设备的支持。
PC机的游戏开发者是不能享受到游戏机开发者的那种平台一致性的。
对于游戏机软件开发者,他们晚上可以睡得很香,因为白天所写的代码将在上百万台同样的机器上运行。
而PC机的开发者却不能这样,他们老是梦见新的图形协处理器、数字游戏杆、3D加速卡和实时的输入设备,他们自已也知道,在下一个游戏中将需要支持更多的硬件。
所有的PC游戏都要利用目前最好的硬件以获取最佳性能,这使得那些小游戏软件开发公司很难跟上硬件发展的步伐。
南开大学22春“计算机科学与技术”《DirectX程序设计》期末考试高频考点版(带答案)一.综合考核(共50题)1.可以存储RGB数据的结构包括()。
A.DWORDB.D3DCOLORC.D3DCOLORVALUED.D3DXCOLOR参考答案:ABCD2.三角形属性ID存储在Mesh的属性缓存中,由于每个三角形都对应一项属性缓存,所以属性缓存中的项目数等于Mesh中的三角形的个数。
()A.正确B.错误参考答案:A3.D3D中的光照模型有:()A.环境光B.漫反射C.镜面反射D.全反射参考答案:ABC4.如果没有使用材质和问题,当前绘制像素的Alpha分量来自每个顶点颜色设置的Alpha值。
()A.正确B.错误参考答案:A5.模板定义包含哪些项()A.模板名字B.GUIDC.数据项D.用于控制模板的限制程度参考答案:ABCD6.观察体的大小依赖于窗口的大小。
()A.正确B.错误参考答案:A7.当需要对场景进行矩阵V的取景变换,选择下面的()。
A.Device-SetTransform(D3DTS_PROJECTION,&V)B.Device-SetTransform(D3DTS_WORLD,&V)C.Device-SetTransform(D3DTS_TEXTURE0,&V)D.Device-SetTransform(D3DTS_VIEW,&V)参考答案:D8.()可以用来判断向量叉乘值的方向。
A.左手定则B.右手定则C.左手坐标系D.右手坐标系参考答案:B9.直线与平面的夹角小于等于90°。
()A.正确B.错误参考答案:A10.利用模板缓存来阻止对后台缓存村长哦功能某些特定区域进行绘制,判定是否将某个像素写入后台缓存的决策过程称为()。
A.模板测试B.深度缓存C.深度测试D.Alpha测试参考答案:A11.()对象是用来指定字体属性的。
A.LPD3DXFONTB.LPDIRECT3D9C.LPDIRECT3DDEVICE9D.RECT参考答案:A12.常见的纹理寻址模式有()。
南开大学22春“计算机科学与技术”《DirectX程序设计》期末考试高频考点版(带答案)一.综合考核(共50题)1.以下哪个释放顺序是正确的()A.Direct3D对象、Direct3D设备对象B.Direct3D设备对象、Direct3D对象C.顺序任意D.无需释放参考答案:B2.三角形属性ID存储在Mesh的属性缓存中,由于每个三角形都对应一项属性缓存,所以属性缓存中的项目数等于Mesh中的三角形的个数。
()A.正确B.错误参考答案:A3.()是Direct3D用来存储绘制到屏幕上的每个像素点深度信息的一块内存缓冲区。
A.广度缓存B.深度缓存C.深度测试D.广度测试参考答案:B4.实现光照所要用的函数有()A.SetRenderState()B.SetMaterial()C.SetLight()D.LightEnable()5.三角形条带的顶点顺序必须是按照顺时针画的。
()A.正确B.错误参考答案:A6.可以存储RGB数据的结构包括()。
A.DWORDB.D3DCOLORC.D3DCOLORVALUED.D3DXCOLOR参考答案:ABCD7.常见的纹理寻址模式有()。
A.重叠纹理寻址模式B.镜像纹理寻址模式C.钳位纹理寻址模式D.边界颜色纹理寻址模式参考答案:ABCD8.()是图形中最基本的几何对象。
A.点B.线C.向量D.三角形参考答案:A9.B.D3DXMatrixScalingC.D3DXMatrixRotationAxisD.D3DXMatrixMultiply参考答案:ABC10.下面有哪些函数表示物体的基本变换是()A.D3DXMatrixTranslationB.D3DXMatrixScalingC.D3DXMatrixRotationAxisD.D3DXMatrixMultiply参考答案:ABC11.当需要对场景进行矩阵V的取景变换,选择下面的()。
A.Device->SetTransform(D3DTS_PROJECTION,&V);B.Device->SetTransform(D3DTS_WORLD,&V);C.Device->SetTransform(D3DTS_TEXTURE0,&V);D.Device->SetTransform(D3DTS_VIEW,&V);参考答案:D12.在DirectX对窗口进行渲染之前,无需先对窗口进行渲染方面的配置。
《DirectX程序设计》课程期末复习资料第一章3D游戏开发的数学基础本章包含的全部知识点:●点和向量●直线与平面●矩阵与坐标变换●坐标系章节重点:矩阵和坐标变换第二章Windows编程基础本章包含的全部知识点:●基本概念介绍●Windows程序结构●Win32程序开发实例第三章DirectX快速入门本章包含的全部知识点:●DirectX概述●Direct3D 底层结构概述●DirectX9.0的配置和安装章节重点:DirectX9.0的配置和安装第四章 DirectX程序框架本章包含的全部知识点:●Win32+C+Direct3D的基础框架●DXUT框架章节重点:Win32+C+Direct3D的基础框架第五章文本显示本章包含的全部知识点:●文本绘制流程●Win32程序框架实现●DXUT程序框架实现章节重点:Win32程序框架实现第六章基本图形的绘制本章包含的全部知识点:●图元●灵活顶点格式(FVF)●使用顶点缓存绘制图形●索引缓存●颜色表示法●渲染状态●绘制准备●D3DX几何物体●实例设计与实现章节重点:顶点缓存索引缓存第七章变换本章包含的全部知识点:●摄像机●顶点变换●光栅化●实例章节重点:顶点变换第八章 3D数学基础补充本章包含的全部知识点:●常见坐标系●向量●矩阵●线性变换章节重点:●线性变换第九章光照和材质本章包含的全部知识点:●真实感图形基本概念●Direct3D中的光照●Direct3D中的材质●光照和材质例子章节重点:Direct3D中的光照Direct3D中的材质第十章纹理映射本章包含的全部知识点:●纹理贴图●纹理坐标●纹理寻址模式●纹理过滤●纹理混合状态●纹理实例解析章节重点:纹理寻址模式纹理过滤第十一章深度测试和反走样本章包含的全部知识点:●深度缓存与深度测试●图形反走样●深度测试实例章节重点:深度缓存与深度测试第十二章网格(一)本章包含的全部知识点:●ID3DXMesh●子集和属性缓存●绘制●邻接信息●优化●属性表●创建一个Mesh●例子章节重点:子集和属性缓存创建一个Mesh第十三章网格(二)●X文件格式解析●读取X文件●渐进网格●渐进网格例子章节重点:深度缓存与深度测试第十四章混合和模板本章包含的全部知识点:●混合因子●混合计算●Alpha来源●Alpha混合实例●模板章节重点:Alpha混合实例第十五章着色器入门本章包含的全部知识点:●着色器概述●HLSL的变量●HLSL的函数●HLSL基本语法●在Direct3D中使用HLSL 章节重点:Alpha混合实例第十六章顶点着色器●顶点着色器概述●顶点声明●使用顶点着色器●顶点着色器实例第十七章像素着色器本章包含的全部知识点:●像素着色器概述●使用像素着色器●HLSL采样器对象●多重纹理●例子程序一、客观部分:(单项选择、多项选择、不定项选择、判断)(一)、选择部分1.D3DPRESENT_PARAMETERS参数很多,关于其中参数之一windowed的理解正确的是(ABD)A.取值FALSE则渲染全屏B.取值TRUE则渲染窗口C. int类型D.BOOL类型E.double类型★考核知识点: D3DPRESENT_PARAMETERS2.以下属于Direct 3D定义的图元类型的有(ABCD)A.点列表B.线段条带C.三角形列表D.三角形条带E.四边形列表★考核知识点: 图元3.以下属于Direct 3D提供的着色模式的是(AB )A.平面着色模式B.高洛德法着色模式C.渐变着色模式D.单颜色着色模式★考核知识点: 着色模式4.下面属于Direct3D提供的创建旋转矩阵的函数的是(ABC)A.D3DXMatrixRotarionXB. D3DXMatrixRotarionYC. D3DXMatrixRotarionZD. D3DXMatrixRotXE. D3DXMatrixRotY★考核知识点: 变换5.以下属于Direct3D提供的简化纹理过滤的过程的是(ABCD)A.最近点采样B.线性过滤C.各向异性过滤D.mipmap过滤★考核知识点: 纹理过滤6.D3DPRESENT_PARAMETERS参数很多,下面理解正确的是(ABCD)A.Windowed取值FALSE则渲染全屏B. BackBufferCount表示后备缓冲的数目C. SwapEffect表示交换缓冲类型D. BackBufferFormat表示后备缓冲的格式★考核知识点: D3DPRESENT_PARAMETERS7.以下属于Direct3D中提供的标准光源的是(ABC )A.点光源B.方向光源C.聚焦光源D.多点光源★考核知识点: 光源8.关于灵活顶点格式下列说确的是(ABD)A. D3DFVF_DIFFUSE表示顶点数据中包含的是漫反射颜色值;B. D3DFVF_SPECULAR表示顶点数据中包含的是镜面反射下的颜色值C. D3DFVF_XYZRHW表示顶点数据中包含的是未经过坐标变换的顶点坐标D. D3DFVF_XYZ顶点数据中包含未经坐标变换的顶点坐标考核知识点: 灵活顶点格式解析:C项应该是经过坐标变换后的顶点坐标9.关于顶点Alpha描述正确的是(AB)A.如果在程序中直接指定每个顶点的颜色,直接给出每个顶点颜色的Alpha 值。
B. 渲染对象中每个像素的Alpha值由该对象的Alpha值和着色模式决定。
C.高洛德着色模式,所有像素的Alpha值都等于该多边形的第一个顶点的Alpha值。
D. 平面着色模式,每个多边形上的像素的Alpha值由它的各个顶点的Alpha值进行线性插值得到。
考核知识点: 顶点Alpha解析:C项应该是平面着色模式,所有像素的Alpha值都等于该多边形的第一个顶点的Alpha值。
D项应该是高洛德着色模式,每个多边形上的像素的Alpha 值由它的各个顶点的Alpha值进行线性插值得到。
(二)、判断部分1.Direct3D将给每个采样器对象连接一个唯一的纹理阶段(stage),在应用程序中找出与采样器对象相关联的阶段,并设置相应的纹理和采样器状态给该阶段。
(正确)★考核知识点: 纹理2.一个Direct3D对象只能创建一个Direct3D设备对象。
(错误)★考核知识点: Direct3D设备对象考核知识点解释一个Direct3D对象可以创建多个Direct3D设备对象。
3.由于Direct3D设备对象是由Direct3D对象创建的,因此应先释放Direct3D设备对象。
(正确)★考核知识点: Direct3D对象及设备对象4.D3DFVF_XYZ顶点数据中包含未经坐标变换的顶点坐标,不能与D3DFVF_XYZRHW同时使用。
(正确)★考核知识点: 灵活顶点格式5.D3DFVF_XYZ顶点数据中包含未经坐标变换的顶点坐标,可以与D3DFVF_XYZRHW同时使用。
(错误)★考核知识点: 灵活顶点格式考核知识点解释D3DFVF_XYZ顶点数据中包含未经坐标变换的顶点坐标,不可以与D3DFVF_XYZRHW同时使用。
6.D3DFVF_XYZRHW顶点数据中包含经过坐标变换的顶点坐标,不能与D3DFVF_XYZ和D3DFVF_NORMAL同时使用。
(正确)★考核知识点: 灵活顶点格式7.Direct3D创建的场景和对象都是由简单的“图元”按照一定的方式排列组合而成的,Direct3D中的所有图元都是一维或二维对象,包括单个的点和直线及复杂的多边形。
(正确)★考核知识点: 图元8.在索引缓存中定位顶点也就是在顶点缓存中定位顶点。
(正确)★考核知识点: 顶点缓存索引缓存二、主观部分:(一)、填空部分1)像素着色器的输入仅有颜色和纹理坐标两种语义。
考核知识点: 像素着色器2)像素着色器的工作是在顶点着色器之后,后者的输出将为前者提供输入。
考核知识点: 像素着色器3)D3DFVF_DIFFUSE表示顶点数据中包含的是漫反射颜色值;考核知识点: 灵活顶点格式4)D3DFVF_SPECULAR表示顶点数据中包含的是镜面反射下的颜色值;考核知识点: 灵活顶点格式5)D3DFVF_XYZRHW表示顶点数据中包含的是经过坐标变换的顶点坐标考核知识点: 灵活顶点格式6)Direct3DCreate9函数创建一个Direct3D对象并获得指向Direct3D对象接口的指针,且参数必须设置为D3D_SDK_VERSION。
考核知识点: Direct3D对象7)DXUT(The DirectX Utility Library)是建立在Direct3D9和Direct3D10上的一个程序框架,其目标是建立一个强大而容易使用的Direct3D游戏开发框架,它简化了Win32和Direct3D API的使用。
考核知识点: DXUT8)创建DirectX设备对象的函数为CreateDevice。
考核知识点:设备对象9)Direct3D图形程序通过调用IDirect3DDevice9::SetRenderState()函数来设置渲染状态。
考核知识点:设置渲染状态10)g_pd3dDevice->SetRenderState(D3DRS_SHADEMODE,D3DSHADE_FLAT),这行代码完成的功能是(设置着色模式为平面着色模式)。
考核知识点:设置着色模式11)g_pd3dDevice->SetRenderState(D3DRS_SHADEMODE,D3DSHADE_GOURAUD),这行代码完成的功能是(设置着色模式为高洛德着色模式)。
考核知识点:设置着色模式(二)、名词解释1、请你给出创建顶点声明,并获得IDirect3DVertexDeclaration9接口指针的方法。
考核知识点:顶点声明考核知识点解释HRESULT IDirect3DDevice9::CreateVertexDeclaration(CONST D3DVERTEXELEMENT9* pVertexElements, //要创建的顶点声明IDirect3DVertexDeclaration9** ppDecl //返回创建的IDirect3DVertexDeclaration9接//口指针 );2、请你给出环境光(ambient light)的概念,并说明如何设置渲染状态为整个场景添加环境光。
考核知识点:环境光考核知识点解释环境光(ambient light)由光源发出经环境多次散射而无法确定其方向的光,即好像是来自四面八方的光;室成分大,室外成分少,没有位置或方向上的特征,只有颜色亮度值,不会衰减;通过设置渲染状态为整个场景添加环境光:g_device->SetRenderState(D3DRS_AMBIENT,D3DCOLOR_X#);3、请你给出镜面反射光的概念,并说明如何设置渲染状态。