理论计算机图形渲染技术是否已经到了没有什么可以研究的地步了?
Offline渲染的各种技术理论已经完备,实时渲染技术除了实时GI之外已经没有研究价值?
添加评论
按投票排序
按时间排序
12 个回答
谢邀。我表达一下我的看法。
分水岭从 Rendering equation开始。
rendering equation出来之前,渲染都是在瞎搞。因为无目标,无建模。
Jim Kajiya在1986年搞了一个rendering equation,告诉你rendering是什么东西,目标是什么,是什么形式,以后大家都这么就行了。(有一次在电梯遇到这位老前辈,光芒太耀眼,都不敢跟他打招呼。)
其中fr是BRDF,Le是emit,Li是输入光,Lo是输出光,omega_i是入射角,omega_o是出射角,n是normal,lambda是波长,t是时间,x是所在点。
rendering equation出来之后,渲染的框架已定,就剩下一个问题,如何解得更快。除了升级硬件之外,要解得更快,要么用近似,要么另辟蹊径。
在实时计算中,几乎都省略的时间这个参数,并且不考虑全频谱。所以最多就是RGB三个通道计算颜色。第二,那个积分没法搞,所以变成几个简单光源的叠加,或者预积分的cubemap采样。第三,emit就只是简单的加上去,所以后面的讨论都会略去这个。
一下举两个实际例子,让读者可以更容易感受到什么叫解rendering equation。
Light map大家都熟悉。它其实就是在offline把每个点的颜色都算好,运行时直接当纹理贴上就可以了。相当于把rendering equation用查找表的方式来解。由于场景不能变,传统light map之路已经死了。
Precomputed Radiance Transfer是个典型的近似方法。第一步,它把BRDF干掉,变成纯diffuse,再把积分变成根据visibility的叠加。也就是:
第二步,把L_i和V(omega dot n)都表达成SH,就成了
Li项只和环境光有关,V项只和mesh有关。所以两个分别预计算,在运行时sum一下就行了。
这样一处理,就能在realtime对静态场景用上低频的环境光和点光源。还能支持diffuse,扩展到低频的glossy,shadow和一些GI也能。这已经是以前所不可想象的了。所以PRT成为渲染发展过程中的一个里程碑。Peter-Pike Sloan也因此一战成名。
后来PRT被推广到了per-pixel级别、扩展出了可以处理中高频光源、支持更多GI效果、甚至物体可动。。。但由于这样的近似表达能力有限,这条路基本被做死了。
Global Illumination with Radiance Regression Functions 就是个另辟蹊径的方式。既然rendering equation计算量那么大,直接解没希望,那么就当做个隐函数吧。
可是怎么解呢?RRF的方式是通过这几年非常热的机器学习。通过在offline时候提供无数高质量渲染的结果来训练,让神经网络可以在运行时快速估值。这可以做到高速度(上百FPS)和高质量(接近offline渲染质量)的最佳组合。但这方面还有很多需要改进的地方,目前还没彻底展开。
纵观这几年的siggraph,已经很久没有offline rendering的新方法了,因为旧的方法已经涵盖了各个方面,有没有时间压力。realtime rendering新方法也越来越少,发展遇到了一个严重瓶颈。究其原因,是能解决的问题早已被解决,未解决的问题谁都搞不定。其实真正未解决的只有一个圣杯级别的问题,那就是实时全效果GI,也就是如何更好更快地解rendering equation。要在这方面有突破,需要很多时间精力金钱。风险太大,谁都不想碰也不敢碰。所以我说目前没有什么可以研究的。甚至更悲观的是,这个问题有可能永远无法在现有体系内解决。
但愿在未来的几年,有人又突然发现了一条新路,又有人可以冲上去研究个几年。
分水岭从 Rendering equation开始。
rendering equation出来之前,渲染都是在瞎搞。因为无目标,无建模。
Jim Kajiya在1986年搞了一个rendering equation,告诉你rendering是什么东西,目标是什么,是什么形式,以后大家都这么就行了。(有一次在电梯遇到这位老前辈,光芒太耀眼,都不敢跟他打招呼。)
其中fr是BRDF,Le是emit,Li是输入光,Lo是输出光,omega_i是入射角,omega_o是出射角,n是normal,lambda是波长,t是时间,x是所在点。
rendering equation出来之后,渲染的框架已定,就剩下一个问题,如何解得更快。除了升级硬件之外,要解得更快,要么用近似,要么另辟蹊径。
在实时计算中,几乎都省略的时间这个参数,并且不考虑全频谱。所以最多就是RGB三个通道计算颜色。第二,那个积分没法搞,所以变成几个简单光源的叠加,或者预积分的cubemap采样。第三,emit就只是简单的加上去,所以后面的讨论都会略去这个。
一下举两个实际例子,让读者可以更容易感受到什么叫解rendering equation。
Light map大家都熟悉。它其实就是在offline把每个点的颜色都算好,运行时直接当纹理贴上就可以了。相当于把rendering equation用查找表的方式来解。由于场景不能变,传统light map之路已经死了。
Precomputed Radiance Transfer是个典型的近似方法。第一步,它把BRDF干掉,变成纯diffuse,再把积分变成根据visibility的叠加。也就是:
第二步,把L_i和V(omega dot n)都表达成SH,就成了
Li项只和环境光有关,V项只和mesh有关。所以两个分别预计算,在运行时sum一下就行了。
这样一处理,就能在realtime对静态场景用上低频的环境光和点光源。还能支持diffuse,扩展到低频的glossy,shadow和一些GI也能。这已经是以前所不可想象的了。所以PRT成为渲染发展过程中的一个里程碑。Peter-Pike Sloan也因此一战成名。
后来PRT被推广到了per-pixel级别、扩展出了可以处理中高频光源、支持更多GI效果、甚至物体可动。。。但由于这样的近似表达能力有限,这条路基本被做死了。
Global Illumination with Radiance Regression Functions 就是个另辟蹊径的方式。既然rendering equation计算量那么大,直接解没希望,那么就当做个隐函数吧。
可是怎么解呢?RRF的方式是通过这几年非常热的机器学习。通过在offline时候提供无数高质量渲染的结果来训练,让神经网络可以在运行时快速估值。这可以做到高速度(上百FPS)和高质量(接近offline渲染质量)的最佳组合。但这方面还有很多需要改进的地方,目前还没彻底展开。
纵观这几年的siggraph,已经很久没有offline rendering的新方法了,因为旧的方法已经涵盖了各个方面,有没有时间压力。realtime rendering新方法也越来越少,发展遇到了一个严重瓶颈。究其原因,是能解决的问题早已被解决,未解决的问题谁都搞不定。其实真正未解决的只有一个圣杯级别的问题,那就是实时全效果GI,也就是如何更好更快地解rendering equation。要在这方面有突破,需要很多时间精力金钱。风险太大,谁都不想碰也不敢碰。所以我说目前没有什么可以研究的。甚至更悲观的是,这个问题有可能永远无法在现有体系内解决。
但愿在未来的几年,有人又突然发现了一条新路,又有人可以冲上去研究个几年。
文刀秋二,NVIDIA图形工程师
我尝试抱着积极的态度谈一下对这个问题的看法。首先这个问题挺大,不好一概而论的说这个问题是不是已经做到头了。我觉得可以大概分成光传输模拟(Theory of Light Transport Simulation)的理论,离线渲染和实时渲染的算法和应用来谈谈。
首先,对于光线传输的模拟的基础理论,的确可以认为差不多是做到头了。Eric Veach一篇97年的PhD thesis ( https://graphics.stanford.edu/papers/veach_thesis/thesis.pdf) 谈到的理论至今还是许多最新论文的基石。例如光线路径的公式(Light Path Formulation),多重重要性采样(Multiple Importance Sampling)还有Markov Chain的应用等。其他渲染所涉及到的基础理论例如光在介质中传播(Participating Media),Photon mapping那些基于Density Estimation那套东西的理论,各种材质的建模(Appearance Modeling),还有最基本的数学工具Sampling & Reconstruction都被搞得很成熟了。现在的渲染早已不是拼基础理论的方向,我认为也很难再出一些能颠覆我们认知的基础理论再被发明或者发现。这些方向的成果也大多都是站在物理学、数学、统计学等的肩膀上完成的。但我认为渲染就是一个不能止步于基础理论的方向。尽管各种理论都已经成熟,但是rendering equation积分的维度太高,中间brdf项还有蛋碎的delta或者near delta distribution,所以效率和健壮性都是很大的挑战,有挑战和不足自然就还有工作可以做。
我用自己的渲染器随便举个例子,那个大玻璃窗上一堆噪点就是因为玻璃的反射分布是一个奇点(delta distribution)。因为从窗外射入窗内的房间,再由窗户反射出来到眼睛的光经过了两次这种delta distribution的洗礼,没有办法被很好的采样,就噪点了。。这是常说的Specular-Diffuse-Specular路径,类似比较难搞的场景还有不少。。(例如点光源的焦散,visibility很差的光源等)
然后对于离线渲染来说,research的确相对于其他方向例如vision,animation来说不太好做。但我倒是觉得最近几年有些paper还是很不错和比较能开我的脑洞的。就不提热门的VCM了。我还很喜欢这一篇2013年的 Path Space Regularzation,作者天才的把Photon mapping里面那种merge临近光子的思想用到了采样光线路径方向上。这样做的好处是第一实现起来简单,不像PM、VCM有额外的内存开销,而且可以证明的是引入的Bias也更小(这是个有偏一致的算法)。因为是Analytical的所以实现的成本还是很小。 还有2012年渲染Participating Media的 Joint Importance Sampling. 它提出了一个explicit的在Volume里面建立特定长度的光线路径的方法,比传统直接重要性采样phase function或者transmittance来建立光线路径的做法收敛要快不少。而且将这个方法结合到Path Tracing里去是有Analytical的方程的。。十几行代码也就搞定了,太开心。
还有去年SIGGRAPH的 UPBP. 基本就是Participating media版本的VCM,将不同的volume estimator用多重重要性采样结合起来,能比较robost的渲染不同属性的volume。
再例如去年的 http://lightrig.de/publications/p2014/HSLT/HSLT_preprint.pdf ,把robotics里的Generalized Coordinates用来表示光线路径而且得到了更快的收敛结果,当时真的开了我的脑洞。期待这方面后续的research。
其他人提到的用神经网络和其他ML的方法我也觉得暂时在纯YY的实验性阶段。。但是综上我想说的是rendering从efficiency和robustness的角度来看还是有很多东西可以研究的。
最后,对于实时渲染来说,学术圈很少做这方面的研究的东西。像我之前这个答案 - 现阶段应该怎么学习计算机图形学呢? - 文刀秋二的回答 说的,都是各种smart hacks,对真正学术理论的贡献比较小。Physically based shading就那么几个公式在网上还都是现成的,是个游戏引擎都可以用。做这方面工作的大多是游戏公司,当然NVIDIA在这方面也有很多投入。我在NVIDIA的工作就包括研究各种Rendering的Hacks,这类东西通常非常的practical和hacky,今天搞出来一个东西明天就马上想能加到游戏引擎里去那种,例如VXGI,HBAO+,TXAA等。而因为所有这些技术都是完全依赖GPU的,NV当然有绝对的研究优势去运用新的硬件feature发明新的算法。再加上现在图形API的成熟,很多效果都高度受制于硬件的性能和feature,从这个角度来说实时渲染就是被NV这种公司驱动的也不为过(当然还有Epic这类引擎公司)。 例如Maxwell架构硬件上支持了 Conservative Rasterization,我们一下就搞出了基于这个功能的Ray Traced Shadow和Voxelization的方法,有Tiled Resource后我们又之做了sparse fluid simulation & volume rendering(请关注这个页面 Gameworks,不久会更新博文详细介绍),再例如新的硬件Programmable raster sample location,我们又用这个功能改进了TXAA等。总之实时渲染是跟着industry走的,学校要有研究大多也是和NV这种公司有合作,而industry关注的面往往比渲染多很多,甚至有4k,跨平台,VR,新的图形API。实时渲染本身的革命性改进,只能期待光线追踪快100x-1000x之后的应用了。
(以上全是个人观点,完全不代表我的Employer - -“)
首先,对于光线传输的模拟的基础理论,的确可以认为差不多是做到头了。Eric Veach一篇97年的PhD thesis ( https://graphics.stanford.edu/papers/veach_thesis/thesis.pdf) 谈到的理论至今还是许多最新论文的基石。例如光线路径的公式(Light Path Formulation),多重重要性采样(Multiple Importance Sampling)还有Markov Chain的应用等。其他渲染所涉及到的基础理论例如光在介质中传播(Participating Media),Photon mapping那些基于Density Estimation那套东西的理论,各种材质的建模(Appearance Modeling),还有最基本的数学工具Sampling & Reconstruction都被搞得很成熟了。现在的渲染早已不是拼基础理论的方向,我认为也很难再出一些能颠覆我们认知的基础理论再被发明或者发现。这些方向的成果也大多都是站在物理学、数学、统计学等的肩膀上完成的。但我认为渲染就是一个不能止步于基础理论的方向。尽管各种理论都已经成熟,但是rendering equation积分的维度太高,中间brdf项还有蛋碎的delta或者near delta distribution,所以效率和健壮性都是很大的挑战,有挑战和不足自然就还有工作可以做。
我用自己的渲染器随便举个例子,那个大玻璃窗上一堆噪点就是因为玻璃的反射分布是一个奇点(delta distribution)。因为从窗外射入窗内的房间,再由窗户反射出来到眼睛的光经过了两次这种delta distribution的洗礼,没有办法被很好的采样,就噪点了。。这是常说的Specular-Diffuse-Specular路径,类似比较难搞的场景还有不少。。(例如点光源的焦散,visibility很差的光源等)
然后对于离线渲染来说,research的确相对于其他方向例如vision,animation来说不太好做。但我倒是觉得最近几年有些paper还是很不错和比较能开我的脑洞的。就不提热门的VCM了。我还很喜欢这一篇2013年的 Path Space Regularzation,作者天才的把Photon mapping里面那种merge临近光子的思想用到了采样光线路径方向上。这样做的好处是第一实现起来简单,不像PM、VCM有额外的内存开销,而且可以证明的是引入的Bias也更小(这是个有偏一致的算法)。因为是Analytical的所以实现的成本还是很小。 还有2012年渲染Participating Media的 Joint Importance Sampling. 它提出了一个explicit的在Volume里面建立特定长度的光线路径的方法,比传统直接重要性采样phase function或者transmittance来建立光线路径的做法收敛要快不少。而且将这个方法结合到Path Tracing里去是有Analytical的方程的。。十几行代码也就搞定了,太开心。
还有去年SIGGRAPH的 UPBP. 基本就是Participating media版本的VCM,将不同的volume estimator用多重重要性采样结合起来,能比较robost的渲染不同属性的volume。
再例如去年的 http://lightrig.de/publications/p2014/HSLT/HSLT_preprint.pdf ,把robotics里的Generalized Coordinates用来表示光线路径而且得到了更快的收敛结果,当时真的开了我的脑洞。期待这方面后续的research。
其他人提到的用神经网络和其他ML的方法我也觉得暂时在纯YY的实验性阶段。。但是综上我想说的是rendering从efficiency和robustness的角度来看还是有很多东西可以研究的。
最后,对于实时渲染来说,学术圈很少做这方面的研究的东西。像我之前这个答案 - 现阶段应该怎么学习计算机图形学呢? - 文刀秋二的回答 说的,都是各种smart hacks,对真正学术理论的贡献比较小。Physically based shading就那么几个公式在网上还都是现成的,是个游戏引擎都可以用。做这方面工作的大多是游戏公司,当然NVIDIA在这方面也有很多投入。我在NVIDIA的工作就包括研究各种Rendering的Hacks,这类东西通常非常的practical和hacky,今天搞出来一个东西明天就马上想能加到游戏引擎里去那种,例如VXGI,HBAO+,TXAA等。而因为所有这些技术都是完全依赖GPU的,NV当然有绝对的研究优势去运用新的硬件feature发明新的算法。再加上现在图形API的成熟,很多效果都高度受制于硬件的性能和feature,从这个角度来说实时渲染就是被NV这种公司驱动的也不为过(当然还有Epic这类引擎公司)。 例如Maxwell架构硬件上支持了 Conservative Rasterization,我们一下就搞出了基于这个功能的Ray Traced Shadow和Voxelization的方法,有Tiled Resource后我们又之做了sparse fluid simulation & volume rendering(请关注这个页面 Gameworks,不久会更新博文详细介绍),再例如新的硬件Programmable raster sample location,我们又用这个功能改进了TXAA等。总之实时渲染是跟着industry走的,学校要有研究大多也是和NV这种公司有合作,而industry关注的面往往比渲染多很多,甚至有4k,跨平台,VR,新的图形API。实时渲染本身的革命性改进,只能期待光线追踪快100x-1000x之后的应用了。
(以上全是个人观点,完全不代表我的Employer - -“)
渲染应该说本身就已经是比较成熟的领域了,我认为是在理论上是没什么可研究的了。离线渲染本质是用各种采样方法快速求解渲染方程。而实时渲染基本上是提出各种可以在GPU运行框架内执行的近似算法,所以本质上收到了光栅化渲染框架的限制,你看人家Morgan Mcquire做了那么多实时渲染的work,有些是很clever,但是总体来说其实都很trivial。可编程GPU管线已存在多年,能被利用的特性都已被充分挖掘。
所以现在很多做Rendering的researcher都在搞什么呢,欧洲那帮人还是整天在推数学研究更快的采样方法,还有一小拨人隔几年灌一篇BVH的paper,基本上都是些在特定情况下实现marginal性能提升的文章。美国其实并没有太多活跃的人在做rendering。
在一个成熟的领域做research要怎么做?当然是加assumption。你XX算法很好是吧,嗯,但是现在有这种情况Y,你看也很常见吧,用我的改进之后在这些地方就能快很多,虽然还有更多地方其实变慢了,但是没关系,我们现在就是要看这种情况。你不能否认这是我的contribution所以你不能拒我。至于这东西对工业界到底有没有用,关我屁事,我能发paper就好了。
Siggraph近些年基本没有什么靠谱的rendering文章。当然了,整个图形学领域其实都越来越向扯淡的方向发展。大部分paper完全不值一看。越来越多的work变得跟vision之类的work一样,调调参数硬把一个demo hack出来就可以发论文了,其实那个方法换了任何一个其他场景都不能很好的work。要让他对一个新场景work,要么要加新的条件判断去hack,要么调参数掩盖缺陷。
所以我已经懒得搞纯graphics的东西了,现在在做的事情是为高性能实时渲染提供编译器/系统工具支持。
另外我也不看好在rendering里面扯一些机器学习的东西,能用数学模型描述清楚的东西却用模糊的方法去解决本质上是不太科学的。当然你总是可以说渲染不在于绝对数值正确,而是如何把人糊弄过去。因为我们不知道如何糊弄,所以寄希望于机器学习来神奇地完成这个任务。虽然涉及到感知的事情确实不好处理,但寄希望于机器学习更加让人不安。或许某一天在这方面能有突破,但我不会建议在这方面耗尽青春,因为希望比较渺茫而且你很难在这个过程中学到有意义的东西。
所以现在很多做Rendering的researcher都在搞什么呢,欧洲那帮人还是整天在推数学研究更快的采样方法,还有一小拨人隔几年灌一篇BVH的paper,基本上都是些在特定情况下实现marginal性能提升的文章。美国其实并没有太多活跃的人在做rendering。
在一个成熟的领域做research要怎么做?当然是加assumption。你XX算法很好是吧,嗯,但是现在有这种情况Y,你看也很常见吧,用我的改进之后在这些地方就能快很多,虽然还有更多地方其实变慢了,但是没关系,我们现在就是要看这种情况。你不能否认这是我的contribution所以你不能拒我。至于这东西对工业界到底有没有用,关我屁事,我能发paper就好了。
Siggraph近些年基本没有什么靠谱的rendering文章。当然了,整个图形学领域其实都越来越向扯淡的方向发展。大部分paper完全不值一看。越来越多的work变得跟vision之类的work一样,调调参数硬把一个demo hack出来就可以发论文了,其实那个方法换了任何一个其他场景都不能很好的work。要让他对一个新场景work,要么要加新的条件判断去hack,要么调参数掩盖缺陷。
所以我已经懒得搞纯graphics的东西了,现在在做的事情是为高性能实时渲染提供编译器/系统工具支持。
另外我也不看好在rendering里面扯一些机器学习的东西,能用数学模型描述清楚的东西却用模糊的方法去解决本质上是不太科学的。当然你总是可以说渲染不在于绝对数值正确,而是如何把人糊弄过去。因为我们不知道如何糊弄,所以寄希望于机器学习来神奇地完成这个任务。虽然涉及到感知的事情确实不好处理,但寄希望于机器学习更加让人不安。或许某一天在这方面能有突破,但我不会建议在这方面耗尽青春,因为希望比较渺茫而且你很难在这个过程中学到有意义的东西。
gmm大神的回答已经很完善了,我来补充一下offline的东西,其实仔细看这几年SIGGRAPH论文关于light transport的东西,更新很少,或者说创新点不够多。一些号称比较火的算法,比如VCM,在实际应用中依然是残废的。今年有一篇用online learning 学习light transport分布的论文,实际看下来也存在很多问题:学习时间过长,应对问题太少等等。
我觉得GI的真正问题在于没有很好的一种方法 或者 方法组合,来解决大部分场景中的光学问题,比如说progressive photon mapping适合渲染焦散,但在其他场景残废,BDPT对大部分效果都有很好的鲁棒性,但是对SDS路径无解,MLT适合各种复杂光照,但是参数和适应性太小。因为实际上光传输属于最难模拟的一类自然现象,复杂程度太高.未来对于光线追踪来说唯一的办法可能就是多种办法的结合。
所以现在对于图形学迫切需要的是新路子,根本革新。个人看好机器学习和蒙特卡洛方法的结合
我觉得GI的真正问题在于没有很好的一种方法 或者 方法组合,来解决大部分场景中的光学问题,比如说progressive photon mapping适合渲染焦散,但在其他场景残废,BDPT对大部分效果都有很好的鲁棒性,但是对SDS路径无解,MLT适合各种复杂光照,但是参数和适应性太小。因为实际上光传输属于最难模拟的一类自然现象,复杂程度太高.未来对于光线追踪来说唯一的办法可能就是多种办法的结合。
所以现在对于图形学迫切需要的是新路子,根本革新。个人看好机器学习和蒙特卡洛方法的结合
李辉,图形开发工程师
还早啊,诸君看看现在渲染技术还真的停留在eye-candy,有哪家敢拍着胸脯说我画出来的和你看到的就是一模一样的?!哪家家具厂商敢拿着电脑和客户说,这套家具就是这个效果!!!我相信客户绝对会劈死他:p.
由于硬件的飞速发展,现在在渲染这一块技术和科研已经紧紧绑定在一起,我个人觉得的真实感绘制的研究原点已经越来越向应用物理学靠近,比如材料学。几乎每种材料的渲染研究都可以成为学术界的方向。大家也可以在越来越短时间内求解非线性模型,各种高大上的物理方程很多无需简化就可以扔给计算机(当然,这话夸张了,当然你明白我意思)。
以后真实感绘制所需要的计算能力会越来越巨大-快速迭代的非线性求解能力,超高维度的线性运算,超过现有精度的高精度运算等等等等,都是发展绘制技术的基石。
由于硬件的飞速发展,现在在渲染这一块技术和科研已经紧紧绑定在一起,我个人觉得的真实感绘制的研究原点已经越来越向应用物理学靠近,比如材料学。几乎每种材料的渲染研究都可以成为学术界的方向。大家也可以在越来越短时间内求解非线性模型,各种高大上的物理方程很多无需简化就可以扔给计算机(当然,这话夸张了,当然你明白我意思)。
以后真实感绘制所需要的计算能力会越来越巨大-快速迭代的非线性求解能力,超高维度的线性运算,超过现有精度的高精度运算等等等等,都是发展绘制技术的基石。
匿名用户
王文涛、田野、whenitsdone 赞同
如果要求完全物理真实,速度再提高一千倍也未必够用,所以还有发展空间,与其说绘制理论完善,不如说现有数学工具已经被用尽。
通用性的Light Transport Simulation已经二十年没有实质性进步了,速度提升更多是受益于硬件能力提升,受目前数学工具所限,算法不可能有大的提高。另外,复杂如光传输模拟,总能设计复杂的场景让算法不那么有效。
通用性的Light Transport Simulation已经二十年没有实质性进步了,速度提升更多是受益于硬件能力提升,受目前数学工具所限,算法不可能有大的提高。另外,复杂如光传输模拟,总能设计复杂的场景让算法不那么有效。
黄龙,不忘初心 方能始终
知乎用户 赞同
一百多年前,物理学也有与你类似的观点。那时候的物理学家认为,物理学的研究已经到了没有什么可研究的地步,直到后来出现了爱因斯坦。
我不懂图形学,妄言:一门学科给你这样的感觉,只是遇到了一个瓶颈,一旦解决这个瓶颈。后面又会大有搞头。
There is nothing new to be discovered in physics now. All that remains is more and more precise measurement.
—— Lord Kelvin
—— Lord Kelvin