总览 在这部分的课程中,我们将专注于使用光线追踪来渲染图像。在光线追踪中最重要的操作之一就是找到光线与物体的交点。一旦找到光线与物体的交点,就可以执行着色并返回像素颜色。 在这次作业中,我们要实现两个部分: 光线的生成 光线与三角的相交。 本次代码 ...
又名蒙特卡洛路径追踪 总览 在之前的练习中,我们实现了Whitted Style Ray Tracing 算法,并且用BVH等加速结构对于求交过程进行了加速。 在本次实验中,我们将在上一次实验的基础上实现完整的Path Tracing 算法。 至此,我们已经来到了光线追踪版块的最后一节内容。请认真阅读本文档,按照本文档指示的流程完成本次实验。 代码框架 修改的内容 相比上一次实验,本次实验对框架的 ...
2021-10-29 21:35 0 1433 推荐指数:
总览 在这部分的课程中,我们将专注于使用光线追踪来渲染图像。在光线追踪中最重要的操作之一就是找到光线与物体的交点。一旦找到光线与物体的交点,就可以执行着色并返回像素颜色。 在这次作业中,我们要实现两个部分: 光线的生成 光线与三角的相交。 本次代码 ...
总览 在上次作业中,虽然我们在屏幕上画出一个线框三角形,但这看起来并不是那么的有趣。所以这一次我们继续推进一步——在屏幕上画出一个实心三角形,换言之,栅格化一个三角形。上一次作业中,在视口变化之后,我们调用了函数rasterize_wireframe(const Triangle& ...
作业描述 给定一个点P=(2,1), 将该点绕原点先逆时针旋转45◦,再平移(1,2), 计算出变换后点的坐标(要求用齐次坐标进行计算)。 UE4 知识点 主要矩阵 FMatrix FBasisVectorMatrix ...
总览 在这次编程任务中,我们会进一步模拟现代图形技术。我们在代码中添加了Object Loader(用于加载三维模型), Vertex Shader 与Fragment Shader,并且支持了纹理映射。 而在本次实验中,你需要完成的任务是: 修改函数 ...
总览 Bézier 曲线是一种用于计算机图形学的参数曲线。 在本次作业中,你需要实现de Casteljau 算法来绘制由4 个控制点表示的Bézier 曲线(当你正确实现该算法时,你可以支持绘制由更多点来控制的Bézier 曲线)。 你需要修改的函数在提供 ...
总览 到目前为止,我们已经学习了如何使用矩阵变换来排列二维或三维空间中的对象。所以现在是时候通过实现一些简单的变换矩阵来获得一些实际经验了。在接下来的三次作业中,我们将要求你去模拟一个基于CPU 的光栅化渲染器的简化版本。 本次作业的任务是填写一个旋转矩阵和一个透视投影矩阵。给定三维下 ...
简介 作业用来校验自己做的是否正确。请不用copy,因为这是cheat youself。 题目 给定一个点 P=(2,1), 将该点绕原点先逆时针旋转 45◦,再平移 (1,2), 计算出变换后点的坐标(要求用齐次坐标进行计算)。 code 参考资料 book ...
引入光线追踪目的: 因为光栅化不能很好地处理全局效果,例如: 软阴影:光栅化需要经过两个过程才能形成软阴影; Glossy 反射:既有反射,又有本身材质的粗糙性影响; 间接反射:光线在空间中会反射很多次,很难渲染。 光栅化速度快,但是质量 ...