What & How & Why

差别

这里会显示出您选择的修订版和当前版本之间的差别。

到此差别页面的链接

两侧同时换到之前的修订记录前一修订版
后一修订版
前一修订版
cg:books:rt_one_wk:book_1 [2024/11/20 05:42] – [管理多个可碰撞的对象] codingharecg:books:rt_one_wk:book_1 [2024/11/20 05:44] (当前版本) – [材质的抽象类] codinghare
行 342: 行 342:
 ===生成像素的采样点=== ===生成像素的采样点===
 整个过程: 整个过程:
-\\ <html><div align="center"> <img src="/_media/cg/books/rt_one_wk/aa.svg width="500"> </div> </html>+\\ {{ :cg:books:rt_one_wk:aa.svg?500 |}}
 ==将 camera 改变为 class 对象== ==将 camera 改变为 class 对象==
 直接将 ''main.cc'' 中的代码抄过去即可。主要的数据成员有: 直接将 ''main.cc'' 中的代码抄过去即可。主要的数据成员有:
行 571: 行 571:
 </code> </code>
 上面的 ''sactter()'' 函数会接收射线,根据衰减值返回射线,并将相关的信息存储到 ''hit_record'' 对象中: 上面的 ''sactter()'' 函数会接收射线,根据衰减值返回射线,并将相关的信息存储到 ''hit_record'' 对象中:
-\\ \\ <html><div align="center"> <img src="/_media/cg/books/rt_one_wk/mat_trans.svg width="600"> </div> </html>+\\ \\ {{ :cg:books:rt_one_wk:mat_trans.svg?600 |}}
 ===描述射线与对象相交的数据结构=== ===描述射线与对象相交的数据结构===
 本课程中,射线与表面相交的相关信息都存储于 ''hit_record'' 对象中。由于光线的反射与衰减是通过材质来决定的,因此对应**表面的材质信息**也需要存储到该对象中,供之后的 ''ray_color()'' 着色使用。材质信息通过智能指针来管理: 本课程中,射线与表面相交的相关信息都存储于 ''hit_record'' 对象中。由于光线的反射与衰减是通过材质来决定的,因此对应**表面的材质信息**也需要存储到该对象中,供之后的 ''ray_color()'' 着色使用。材质信息通过智能指针来管理: