The color(ray) function linearly blends white and blue depending on the up/downess of the y coordinate. I first made it a unit vector so -1.0 < y < 1.0. I then did a standard graphics trick of scaling that to 0.0 < t < 1.0. When t=1.0 I want blue. When t = 0.0 I want wh...
原始GitHub: github.com/RayTracing/r 翻译GitHub: github.com/zhing2006/Ra 紧接上文:zhing2006:Ray Tracing in One Weekend - 一周末光线追踪(上)(4.0.0-alpha.2中文版翻译) 可定位的相机 像电介质一样,相机很难调试,所以我总是逐步开发我的相机。首先,让我们允许调整视场(fov)。这是从渲染图像的边 缘...
因此,我决定着手制作一个光线追踪器(Ray Tracer)。在制作过程中,我找到了名为《Ray Tracing in one Weekend》的教材,这本书以它友好的数学内容和清晰的代码帮助了我。尽管我无法在一个周末内完成一个小型的光线追踪器,但在一周内,我顺利地完成了这本教材中的所有内容。这本书给我带来的成就感...
紧接上文:zhing2006:Ray Tracing in One Weekend - 一周末光线追踪(上)(4.0.0-alpha.2中文版翻译)可定位的相机相机调试不易,我常逐步开发。首先允许调整视场(fov),这是从渲染图像边缘到边缘的视觉角度。垂直fov总是优先使用,在构造函数内指定度数后转换为弧度。相机视图几何保持光线从原点出...
电子书《Ray Tracing in One Weekend》是一本由Peter Shirley、Trevor David Black和Steve Hollasch共同撰写的教程书籍,期望帮助读者在短短一个周末内构建一个基础的光线追踪程序。书中详细介绍了光线追踪的基本概念、编程步骤和调试技巧,从输出图像开始,逐步深入到材质、反射、折射等高级特性,最终引导读者实现一个能够...
这次修订力求更加贴近中文口语,例如将“Some people don't like this because it doesn't prevent you from doing something silly, like adding a color to a location.”翻译为“这个做法肯定有它的问题——可能出现“颜色+位置”这种憨批操作。”书中大量采用了口语化表达,我希望在中文版中尽可能...
您可以使用--target <program>选项指定目标,其中program可以是inOneWeekend、theNextWeek、theRestOfYourLife或任何演示程序。默认情况下(没有--target选项),CMake将构建所有目标。在Windows上,您可以构建debug(默认)或release(优化版本)。要指定这一点,使用--config <debug|release>选项。
为了优化程序性能,我们限制了递归调用层级,避免函数栈过载问题。通过调整ray_color函数,我们实现了更为准确的阴影效果,同时加入了gamma 2空间的处理,使得图像更加符合人眼感知,球体更加明亮。在漫反射材质的探索中,我们还识别并修复了一个潜在的bug,避免了光线在反射后再次与自身相交的情况。通过改进...
【Ray Tracing in One Weekend 超详解】 光线追踪1-4 我们上一篇写了Chapter5 的第一个部分表面法线,那么我们来学剩下的部分,以及Chapter6. Chapter5:Surface normals and multiple objects. 我们这一节主要向场景中添加对象。 依据代码重用原则,此时应该抽象出对象创、绘制的公共部分...