- 浏览: 13957 次
最新评论
DX复习文档
2011年12月19日
1>线性代数基础
1)坐标系:Direct 3D中的默认坐标系是“左手坐标系”,而3DMax中是右手坐标系。
2)向量:(方向+长度(模),矢量)
(1):特殊向量---零向量(起点跟终点重合的向量,所以它的方向不确定)
(2):向量运算:
单位向量:模为1的向量。常常在一个向量符号上加一个“^”来表示单位向量。
向量加法:相加的两个向量必须要有相同的维数。
向量减法:相减的两个向量必须要有相同的维数。u - v:返回一个从向量v的头部到向量u的头部
的向量。
向量数乘:ku(k为标量) k>0,ku与u同向;k0,两向量之间夹角小于90度;
u。v右下)元素全为1,其余全为0.
(3):矩阵运算:
矩阵相等:两个矩阵具有相同维数且元素都相等。具有相同维数的矩阵称为同型矩阵。
矩阵加法:两个相同维数的矩阵之间进行,等位元素相加。
矩阵减法:两个相同维数的矩阵之间进行,等位元素相减。
矩阵数乘:矩阵中每个元素都乘标量。
矩阵乘法:AB,矩阵A的列数必须跟矩阵B的行数相等,如:A是一个m x n的矩阵,
B是一个n x p的矩阵,则得到一个m x p的新矩阵。
注:矩阵乘法通常不满足交换律(一个方形矩阵(行数、列数相等)跟它的通行矩阵就满足)
矩阵转置:交换矩阵的行和列。
逆矩阵:矩阵没法除法,但可以有逆操作。
注:只有方形矩阵有逆矩阵(并不是所有的方形矩阵都有逆矩阵);
一个矩阵与它的逆矩阵相乘结果是一个单位矩阵。
4)复数(i;i的平方 = -1) z = a+b*i; a:实部,b:虚部
5)四元数:一个实部,3个虚部的复数。 q = q0+q1*i + q2*j + q3*k; i = (1,0,0) j = (0,1,0,) k = (0,0,1)
2>DX基础
1)COM(组件对象模型) 优点:
(1)跨平台,与编程语言无关。
(2)COM只能通过接口来访问,不能直接访问数据成员,保证安全性。
(3)COM接口永远不会改变。
2)COM的创建:
Com对象接口跟C++类对象的很大区别在于它们生存周期不同,C++类对象由new、delete来决定,
Com对象接口通过控制它的引用计数器来决定。
3)HAL与REF
HAL:硬件抽象层,使DX开发独立于硬件设备;REF;:参考光栅器,为了在不支持DX的硬件设备上测试DX函数,提供REF设备来进行软件模拟。缺点:运行速度慢,REF设备除了测试没别的用。
4)图形渲染管线(大部分时间就是在进行坐标转换)
一条渲染管线大致分为两个阶段:
1):坐标变换和光照(T&L),在此阶段,每个对象的坐标将变换到基于像素的屏幕空间
流程图:非T&L顶点-->本地空间--->世界空间---->视图空间--->拣选--->光照-->裁剪-->投影变换-->
视口变换-->T&L顶点
2):光栅化阶段:将渲染结果显示到屏幕上。
一条渲染管线具体包括:应用程序阶段(碰撞检测、加速算法...)+几何阶段(逐顶点、逐像素渲染)
+光栅化阶段(目的:每个像素正确配色以便正确渲染画面)
5)主要的空间转换定义及作用:
(1)世界变换(渲染管线的第一步就是将物体从本地空间变换到世界空间);作用:主要完成模型的平移、缩放、旋转... g_pDevice->SetTransform(D3DTS_WORLD,&matWorld);
(2)视图变换(将摄像机平移到世界空间坐标系原点并把正方向跟Z轴正方向相同,此时世界空间中的所有物体都将随着摄像机的变换做相同变换)
(3)投影变换(将摄像机观察到的三维景象显示在二维平面上,这种三维到二维的变换就是投影变换),包含正交平行投影和透视投影。
(4)视口投影(通过定义屏幕显示区域的实际宽、高等参数,将顶点从投影坐标变换为最终显示的以像素为单位的屏幕坐标)
6)纹理过滤和纹理采样
纹理过滤:放大过滤(当较小纹理映射到较大的平面上时,纹理元素被放大,像素块化,采用放大过滤
可以稍作改善)。
缩小过滤(当较大的纹理映射到较小的平面上时,纹理元素被缩小,纹理变模糊,采用缩小过滤
可以稍作改善)。
多纹理过滤(利用多种纹理级别来提高图形质量) 注:DX最多支持8层多重纹理贴图(0---7)。
纹理采样:(决定在纹理映射时,某个像素点从纹理元素中获取信息的方式)
最近点采样、线性纹理过滤(目前应用最广泛)、各向异性过滤、多级渐进纹理过滤
7)纹理寻址和纹理包装
纹理寻址:(纹理坐标一般是(0--1),除了这个范围的部分,就需要纹理寻址),5种纹理寻址模式:
1:包装纹理寻址(dx默认的纹理寻址模式),在每个整数连接点处重复纹理操作,(0.0,0.0),
(0.0,3.0),(3.0,,3.0),(3.0,0.0) D3DTADDRESS_WARP
2:镜像纹理寻址:对每个整数连接点处得纹理进行了镜像处理,也就是对纹理自动复制
并翻转。D3DTADDRESS_MIRROR
3:夹取纹理寻址:将纹理边缘的颜色像素进行延伸 D3DTADDRESS_CLAMP
4:边框颜色纹理寻址:用设置的边框颜色填充超出部分 D3DTADDRESS_BORDERCOLOR
5:一次镜像纹理寻址.纹理取值在-1.0 -- 1.0范围内的做镜像,该范围外的使用夹取
模式 D3DTADDRESS_MIRRORONCE
纹理包装:如何在纹理坐标之间做插值运算。使用纹理包装之后,纹理坐标被限定在(0.0 --- 1.0)之间,
超出范围的部分视为无效值,因此纹理包装跟纹理寻址不能同时使用。
8)摄像机基础:
(1):静态摄像机 D3DXMatrixLookAtLH用来生成摄像机的视图变换矩阵,
函数D3DXMatrixPerspectiveFovLH用来生成摄像机的投影变换矩阵。
(2):平移变换 :将摄像机的位置移到世界空间的坐标原点;
旋转变换:摄像机视点朝向跟世界坐标系Z轴正方向重合,摄像机正方向跟世界坐标系的y轴
正方向重合,摄像机的右方向跟世界坐标系的x轴正方向重合。
注:求摄像机的旋转矩阵即求摄像机的逆矩阵。
(3):视图矩阵:将摄像机平移矩阵跟旋转矩阵进行矩阵乘法就得到视图矩阵。
(4):投影变换:正交平行投影和透视投影。
9)场景管理:
(1):室内场景管理
BSP(通过将场景中的物体有序化,从观察点出发检索BSP,获取以Z坐标为关键码的三角形存储表)
Portal
(2):室外场景管理
四叉树LOD技术:利用四叉树对二维地平面进行分割,每次将正方形分割为4个等分的正方形,
直至分割的正方形大小达到某个预定值,才对每个正方形进行三角形剖分渲染。在渲染时
通过视域评价系数,剔除一些三角形,从而减少场景中待渲染的三角形,提高渲染效率。
ROAM技术(二叉三角形树BTT):BTT的核心几何图元是三角形,而四叉树处理的是矩形。
发表评论
-
windows下进程间通信的
2012-01-20 08:55 548windows下进程间通信的 2010年09月04日 w ... -
深入探究 Win32 PE 文件格式
2012-01-20 08:55 647深入探究 Win32 PE 文件格 ... -
如何编写PHP扩展
2012-01-20 08:55 679如何编写PHP扩展 2010年0 ... -
C++操作MySQL (The MySQL C API)
2012-01-20 08:55 893C++操作MySQL (The MySQL C API) 2 ... -
vc++连接MySQL数据库、mysql api函数
2012-01-20 08:55 995vc++连接MySQL数据库、mysql api函数 201 ... -
flex builder 5
2012-01-19 13:59 766flex builder 5 2011年08月03日 a ... -
导出Flex组件为jpg图片
2012-01-19 13:59 831导出Flex组件为jpg图片 2011年03月10日 前 ... -
想开始整整SmartRcP Flex + Java 开发GUI程序
2012-01-19 13:59 417想开始整整SmartRcP Flex + Java 开发GUI ... -
flex 3如何通过iframe嵌入html网页
2012-01-19 13:59 708flex 3如何通过iframe嵌入html网页 2011年 ... -
flex 客户端缓存 module swf(转)
2012-01-19 13:59 624flex 客户端缓存 module swf ... -
"043d0df76"指令引用的"0x00000013"内存,该内存不能为"read"
2012-01-17 03:49 571"043d0df76"指令引 ... -
引用的“0x00000000”内存,该内存不能为“read”或“written
2012-01-17 03:49 932引用的“0x00000000”内存,该内存不能为“read”或 ... -
0x000001b8指令引用的0x000001b8内存该内存不能为read
2012-01-17 03:49 7100x000001b8指令引用的0x0000 ... -
电脑故障大全 6
2012-01-17 03:49 488电脑故障大全 6 2011年05 ... -
CKP.CMP工作原理===
2012-01-16 02:35 1371CKP.CMP工作原理=== 2010年02月27日 传 ... -
名+解
2012-01-16 02:35 490名+解 2012年01月04日 ... -
数控机床电气控制课程作业(三)
2012-01-16 02:34 1095数控机床电气控制课程 ... -
哈哈 电控
2012-01-16 02:34 566哈哈 电控 2010年06月21 ...
相关推荐
3. 操作数类型:文档提及了操作数的几种形式,包括立即数操作数(固定数值,用作源操作数)、寄存器操作数(如8个通用寄存器AX、BX、CX、DX、SI、DI、SP、BP)、存储器操作数(可用于源操作数或目的操作数)、I/O...
在复习过程中,可以参考《汇编语言程序设计》等相关教材,结合提供的“汇编考点.doc”和“模拟-《汇编语言程序设计》-.rtf”文档进行深入学习。这些资料可能包含了历年考试的重点和常见题型,以及详细的解析,有助于...
这篇文档是针对电大专科学生的微积分初步复习资料,涵盖了填空题、单项选择题以及计算题等多种题型,旨在帮助学生巩固微积分基础概念和技能。以下是根据文档内容提炼的知识点: 1. **函数的定义域**:函数的定义域...
本文档是高等数学期末复习总结,涵盖了函数与极限、导数与微分、微分中值定理与导数的应用、不定积分、偏导数、微分方程等多个方面的知识点。 一、函数与极限 * 两个重要极限:lim(x→0) sin(x)/x = 1, lim(x→0) ...
根据给定文档内容,我们可以详细探讨以下几种寻址方式: 1. **寄存器寻址**:如果操作数位于寄存器中,则直接使用该寄存器的名称即可访问到操作数。 2. **立即寻址**:操作数直接包含在指令中,这种操作数被称为...
7. 微分的应用:包括利用导数求解函数变化率(如 dy/dx),求解函数在给定点的切线斜率,以及函数的可导性和可导点的判定。 8. 环境变量的数学运算:文档中提到了不同数学环境变量(如e、ln、sin等)的运算及极限...
复习练习题主要涵盖以下几个核心知识点: 1. **CPU结构**:8086/8088 CPU由执行单元和总线接口单元组成,执行单元负责运算,总线接口单元处理与外部设备的数据传输。 2. **CPU特性**:数据线宽度和寻址空间的关系...
这份文档内容为中级计算机复习题的相关知识汇总,包含了大量的计算机发展历史、硬件设备、操作系统、编程语言、计算机网络等方面的知识点。以下是对文档内容的知识点梳理: 1. 计算机历史与发展: - 提到了多种...
本篇文档是一份关于8086CPU架构的汇编语言复习题和知识点的汇集。 首先,文档提到了8086 CPU的相关信息。8086是一款16位的微处理器,它使用20位地址总线,因此可以寻址1MB(2的20次方字节)的内存空间。在8086CPU中...
本文档是一个关于高等数学第二学期期末选择填空复习题的参考资料,涵盖了高等数学的多个方面,包括级数、微分方程、向量、多元函数等内容。 1. 高等数学第二学期期末选择填空复习题一、选择题 选择填空题是高等...
高等数学专科复习题及答案 本资源是一份高等数学专科的复习题及答案,涵盖了高等数学的多个方面,包括函数的定义域、连续点、导数、积分、微分方程、矩阵、概率论等。 一、函数的定义域和连续点 1. 函数的定义域...
从提供的文件内容来看,这是一份有关数学导数的复习资料,其中涉及到很多数学中导数的概念、计算法则、特殊函数的导数、高阶导数、以及导数在几何和物理上的应用。以下是对文件内容的知识点详细说明: 1. 基本导数...
8. **输出数据到外设**:使用`MOV DX, 100H`指令设置端口地址,然后使用`OUT DX, AL`指令将数据从AL寄存器输出到指定端口。 9. **响应INTR中断**:CPU响应可屏蔽中断INTR的条件是IF(中断允许标志)为1。 10. **...
同时,结合课程资料和“汇编复习与考试.doc”文档,系统梳理汇编语言的知识点,进行针对性的习题练习,以提高应对期末考试的能力。 在成都信息工程大学的期末复习中,不仅要关注理论知识,还要注重实际操作能力的...
概率论与数理统计复习 概率论是数学的一个分支,研究随机事件的概率和统计规律的理论。数理统计是研究如何从数据中提取有用信息的数学分支。以下是概率论与数理统计复习的知识点总结: 一、事件的关系运算 * 事件...
高等数学基本知识点大全大一复习-考研必备 本文档对高等数学基本知识点...本文档对高等数学的基本知识点进行了系统的总结,涵盖了函数、极限、微分、积分等重要概念,为考研和大一期末复习提供了有价值的参考资料。
本文档是高等数学复习总纲的简略版,涵盖了极限、导数、微分等高等数学的基础知识点。 一、极限 1. 题型一:lim (mxnPxP, x→m, n分别表示多项式的幂次) 要求:达到口算水平;过程即“除大”。 2. 题型二:lim x→...
这份文档是针对《微积分初步》课程的期末复习资料,包含了填空题和单项选择题,涵盖了微积分的基础概念和核心知识点。以下是根据题目内容整理的相关知识点: 1. **函数与极限**:函数的极限计算,如求解`lim_{x->a}...
通用寄存器如AX、BX、CX和DX,可以用于存储数据和运算结果,其中AX作为累加器,BX常作为基址寄存器,CX作为计数寄存器,DX则常用于数据传输。段寄存器(CS、DS、SS、ES)用于指定内存区域,指针和变址寄存器(SP、BP...
合工大汇编语言考试复习 本文档主要介绍了汇编语言的基本概念和程序设计步骤,包括Debug调试环境、汇编语言程序设计基本步骤、CPU和系统总线、内存单元、寄存器、状态标志位、80×86 CPU的工作模式、物理地址、CPU...