青岛李沧区城乡建设局网站,保洁公司开发app,微网站建设的第一步是进行,泉州茶叶网站建设光线的三点假设#xff1a;
光线按直线传播光线之间不会发生碰撞光线会经过一系列折射反射进入摄像机 可以从摄像机发出光线#xff0c;推出可逆的光路 上图中#xff0c;透明球在与相机直连的线条处#xff0c;需要将折射和反射的着色点结果相加#xff0c;如果有光源直…光线的三点假设
光线按直线传播光线之间不会发生碰撞光线会经过一系列折射反射进入摄像机 可以从摄像机发出光线推出可逆的光路 上图中透明球在与相机直连的线条处需要将折射和反射的着色点结果相加如果有光源直射需要将光源在该点的着色结果也相加 相机直射出的第一条光线为primary Ray之后做处理的均被称为secondaryRay与光源的连线被称为shadowRay
光线定义 对于球表面求光线交点 之后解得t的值 t首先是正数 在可以分多种情况讨论相离相交相切总过程可总结为 关于光线和物体求交 如果光源在物体内则与物体交点一定是奇数个否则一定为偶数个光线和物体求交与三角形求交 可以首先将这个问题转化为光线和平面求交再判断交点是否在三角形内如何定义一个平面 记录该平面上一个点p和该平面的法线即可定义一个平面 上图中N为法线p’为平面上的一个点平面内任意一个点p可以满足该式子 带入光线射入的公式可得出t的值从而可得光线与该平面的焦点 最后根据重心坐标的知识得出该点是否在三角形内。另一种方法Moller Trumbore算法 解这个式子主要通过矩阵形式解 AABB包围盒包围体积 Axis-Aligned Bounding Box轴对齐包围盒 如果针对物体上每一个三角形都判断是否会被光线照射到那么带来的消耗将会非常大所以引入AABB包围盒机制来对判断光线照射这个过程进行加速如果光线碰不到包围盒的话就不可能碰到物体上任何一个三角形 光线和包围盒相交 上图中找到光线经过x0x1平面的时间找到光线经过y0y1的时间通过交集的性质求得tmin和tmax如果最后的结果是tmax tmin那么说明光线穿过了包围盒 那么对于3D包围盒求tmin和tmax 如果光线进入时间为负离开时间为正则说明光源在包围盒内 那么有