【cg】【球谐光照】球谐函数
前言
本篇我们来继续研究球谐函数的解及其性质。上回书说到求解拉普拉斯方程
的结果着落在了伴随勒让德多项式
上,本文我们首先会先接着上文的结论讨论一下伴随勒让德多项式的一相特性,必最终解出球谐函数的具体表达式。然后接着类比傅立叶变换研究一下球谐函数的投影和重建过程。最后讨论球谐函数的两个重要性质,即正交完备性
与旋转不变性
。
本篇我们来继续研究球谐函数的解及其性质。上回书说到求解拉普拉斯方程
的结果着落在了伴随勒让德多项式
上,本文我们首先会先接着上文的结论讨论一下伴随勒让德多项式的一相特性,必最终解出球谐函数的具体表达式。然后接着类比傅立叶变换研究一下球谐函数的投影和重建过程。最后讨论球谐函数的两个重要性质,即正交完备性
与旋转不变性
。
书接前文【cg】【球谐光照】球谐函数。
上回书基本上讨论完了我们在实现本文所需要的理论知识,本文是对前面几篇理论知识的综合应用。
其中核心应用的是球谐函数的投影与重建
,以及球谐函数的正交完备性
和旋转不变性
。
在使用ue4时我们经常会碰到需要把UObject
类和json
文件互相转换的情形。
ue4本身封装了相当充足的处理json的接口,所以我们可以通过多种方式达到这一目的。比如对于UObject
的每一个成员属性,都手动调用生成json格式文本的接口,最终生成json格式的字符串保存到磁盘文件里,这种方法可以命名为钻木取火
。还比如我们可以依托于ue4的反射信息,在不必关心UObject
具体内容的情况下自动生成json格式,这种方法才是火柴取火
。
我们将以如下一个简单的UObject
为例,分别在ue4里使用钻木取火
和火柴取火
来实现其与json文件的互转。并在此之后尝试把这个火柴
看能不能优化成一个用起来得心应手的打火机
。
1 | UCLASS() |
某日午时小憩,与某巨佬闲聊,谈及关于brdf的两个问题,发现从前虽有涉猎,但未求甚解,甚为惭愧,掩面而去。。今痛定思痛,翻阅典籍,重新推演,豁然开朗,但觉从未有如此刻般了然,遂记于此,聊以为物外之趣。
今日起开始研究ue4的多线程机制。感觉这部分内容还挺多的,所以想从根源上弄清楚一些,这样以后看ue4就是单线程的了,岂不爽哉。大略读了一下源码,又结合了网上一些大牛的文章,基本的学习路线差不多确定了,这里列一下。
基本的多线程机制 -- FRunnable + FRunnableThread
线程池 -- FQueuedThread + FQueuedThreadPool
异步任务 -- FAsyncTask
TaskGraph
本篇先从最简单的FRunnable
开始。