一丶题目:简述四元数的作用,四元数对欧拉角的优点?
答案:四元数用于表示旋转
A.四元数一般定义如下:q=w+xi+yj+zk 其中 w,x,y,z 是实数。同时,
有: i*i=-1 j*j=-1 k*k=-1
B.四元数也可以表示为: q=[w,v]
有多种方式可表示旋转,如 axis/angle、欧拉角(Euler angles)、矩阵
(matrix)、四元组等。 相对于其它方法,四元组有其本身的优点:
a.四元数不会有欧拉角存在的 gimbal lock 问题[万向节死锁]
b.四元数由 4 个数组成,旋转矩阵需要 9 个数
c.两个四元数之间更容易插值
d.四元数、矩阵在多次运算后会积攒误差,需要分别对其做规范化
(normalize)和正交化 (orthogonalize),对四元数规范化更容易
e.与旋转矩阵类似,两个四元组相乘可表示两次旋转
...
公司出处: 上海悉梦计算机
二丶题目:向量的点乘、叉乘以及归一化的意义?
答案:
1)点乘描述了两个向量的相似程度,结果越大两向量越相似,还可表示投影
2)叉乘得到的向量垂直于原来的两个向量
3)标准化向量:用在只关系方向,不关心大小的时候
...
公司出处: 上海悉梦计算机
三丶题目:矩阵相乘的意义及注意点
答案:用于表示线性变换:旋转、缩放、投影、平移、仿射
注意矩阵的蠕变:误差的积累
...
公司出处: 上海悉梦计算机
四丶题目:alpha blend 工作原理
答案:实际显示颜色 = 前景颜色*Alpha/255 + 背景颜色*(255-Alpha)/255
...
公司出处: 上海悉梦计算机
五丶题目:写光照计算中的 diffuse 的计算公式
答案:实际光照强度 I= 环境光(Iambient) + 漫反射光(Idiffuse) + 镜面高光(Ispecular);
环境光:Iambient= Aintensity* Acolor; (Aintensity 表示环境光强度,Acolor 表示环境
光颜色)
漫反射光:Idiffuse = Dintensity*Dcolor*N.L;
(Dintensity 表示漫反射强度,Dcolor 表示漫反射光颜色,N 为该点的法向量,L 为光源向
量)
镜面反射光:Ispecular = Sintensity*Scolor*(R.V)^n;
(Sintensity 表示镜面光照强度,Scolor 表示镜面光颜色,R 为光的反射向量,V 为观察者
向量,n 称为镜面光指数)
...
公司出处: 上海悉梦计算机
六丶题目:两种阴影判断的方法工作原理
答案:阴影由两部分组成:本影与半影
本影:景物表面上那些没有被光源直接照射的区域(全黑的轮廓分明的区域)
半影:景物表面上那些被某些特定光源直接照射但并非被所有特定光源直接照射的区域(半
明半暗区域)
求阴影区域的方法:做两次消隐过程
一次对每个光源进行消隐,求出对于光源而言不可见的区域 L;
一次对视点的位置进行消隐,求出对于视点而言可见的面 S;
shadow area= L ∩ S
阴影分为两种:自身阴影和投射阴影
自身阴影:因物体自身的遮挡而使光线照