采样反射函数 BxDF::Sample_f()方法根据与相应的散射函数相似的分布来选择方向.在8.2节中,该方法用于寻找来自完美镜面的反射和透射光线;在这里讲介绍实现其他类型的采样技术. BxDF::Sample_f()在[0,1)范围内取得两个使用反演法取得的样本,其中这些样本是使用分层采样或者低偏差采样生成的,所以这些样本本身具有很好的分布性. 这个方法默认采用余弦加权的半球采样.这个样本分布对于大多数BRDF会产生正确的结果. Spectrum BxDF::Sample_f(const V…
传输公式 传输方程是控制光线在吸收.发射和散射辐射的介质中的行为的基本方程.它解释了第11章中描述的所有体积散射过程--吸收.发射和内.外散射.并给出了一个描述环境中辐射分布的方程.光传输方程实际上是传输方程的一个特例,由于忽略参与介质而进行简化,并专门用于从表面散射. 在方程的基本形式中,传输方程式是一个描述光束在空间中某一点上的辐射量如何变化的积分微分方程.它可以转化为一个纯积分方程,用以描述描述了沿射线无穷多个坐标点的参与介质的效果. 回忆一下11.1.4章节的辐射源项Ls,它表示p点处ω…
基础术语 表面反射可以分为4大类: diffuse 漫反射 glossy specular 镜面反射高光 perfect specular 完美反射高光 retro-reflective distributions 后反射分布 几何坐标系以及工具函数 pbrt中的反射是在反射坐标系中进行计算的.坐标系由着色点处法向量与两个切向量组成,也就是 正交基向量(s,t,n),分别于x,y,z相对齐.以\(( \theta ,\phi)\)球体坐标系来表达方向. 从图8.3中可以了解到以下内容,代码在re…
体散射处理过程 3个影响参与介质在环境中的辐射度分布的主要因素: 吸收:减少光能,并将其转化为别的能量,例如热量. 发光:由光子发射光能至环境中. 散射:由于粒子碰撞,使得一个方向的辐射度散射至其他方向. 吸收 吸收被描述为一段介质截面区域.每单位距离媒介密度与吸收光能的比被定义为\(\sigma_a\).截面区域或随着位置与方向的变化而变化,尽管如此,通常还是会定义为位置函数.它通常也被定义为一个光谱变化量,\(\sigma_a\)与距离成反比关系\(m^{-1}\).这意味这个值无需被判断是…
前言 最近在看Peter Harrington写的"机器学习实战",这是我的学习心得,这次是第13章 - 利用PCA来简化数据. 这里介绍,机器学习中的降维技术,可简化样品数据. 降维技术的用途 使得数据集更易使用: 降低很多算法的计算开销: 去除噪声: 使得结果易懂. 基本概念 降维(dimensionality reduction). 如果样本数据的特征维度很大,会使得难以分析和理解.我们可以通过降维技术减少维度. 降维技术并不是将影响少的特征去掉,而是将样本数据集转换成一个低维度…
Ext.Net学习笔记13:Ext.Net GridPanel Sorter用法 这篇笔记将介绍如何使用Ext.Net GridPanel 中使用Sorter. 默认情况下,Ext.Net GridPanel中的列都具有排序功能,效果如下: 如果要禁用列排序,需要在列模型中添加一个属性Sortable="false" 客户端排序 排序是对Store的操作.如果我们要在一个Store中加入排序,可以使用下面的配置: <Sorters> <ext:DataSorter P…
目标:优化性能 改善性能最好的技术就是在数据库中合理地使用索引.  索引也是数据结构,它能使数据库将指定列中的某个值快速定位在相应的行. 反模式:无规划的使用索引 1.不使用索引或索引不足 2.使用了太多的索引或一些无效的索引 (1)大多数数据库会自动地位主键建立索引,因此额外再定义一个索引就是冗余. 这个额外的索引并无任何好处,它只会成为额外的开销. (2)字符串索引很大,而且也不太可能对它进行全匹配查找. (3)使用组合索引是一个很好的选择,但是大部分创建的组合索引都是冗余或者很少使用. 组…
JAVA自学笔记13 1.StringBuffer类 1)线程安全的可变字符序列 线程安全(即同步) 2)StringBuffer与String的区别:一个可变一个不可变 3)构造方法: ①public StringBuffer() 无参构造. StringBuffer ssd=new StringBuffer(); Systrm.out.println(ssd);//已被重写,由于没有内容而为空 Systrm.out.println(ssd.capacity());//默认为16 Systrm…
golang学习笔记13 Golang 类型转换整理 go语言string.int.int64.float64.complex 互相转换 #string到intint,err:=strconv.Atoi(string)#string到int64int64, err := strconv.ParseInt(string, 10, 64)#int到stringstring:=strconv.Itoa(int)#int64到stringstring:=strconv.FormatInt(int64,1…
springmvc学习笔记(13)-springmvc注解开发之集合类型參数绑定 标签: springmvc springmvc学习笔记13-springmvc注解开发之集合类型參数绑定 数组绑定 需求 表现层实现 list绑定 需求 表现层实现 map绑定 本文主要介绍注解开发的集合类型參数绑定,包含数组绑定,list绑定以及map绑定 数组绑定 需求 商品批量删除,用户在页面选择多个商品.批量删除. 表现层实现 关键:将页面选择(多选)的商品id,传到controller方法的形參,方法形參…