那曲檬骨新材料有限公司

0
  • 聊天消息
  • 系統消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術視頻
  • 寫文章/發帖/加入社區
會員中心
創作中心

完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>

3天內不再提示

光線投射,光線追蹤與路徑追蹤的概念與區別

Dbwd_Imgtec ? 來源:未知 ? 作者:李倩 ? 2018-04-19 14:59 ? 次閱讀

光線投射 Ray Casting [1968]

光線投射(Ray Casting),作為光線追蹤算法中的第一步,其理念起源于1968年,由Arthur Appel在一篇名為《 Some techniques for shading machine rendering of solids》的文章中提出。其具體思路是從每一個像素射出一條射線,然后找到最接近的物體擋住射線的路徑,而視平面上每個像素的顏色取決于從可見光表面產生的亮度。

光線投射:每像素從眼睛投射射線到場景

光線追蹤 Ray Tracing [1979]

1979年,Turner Whitted在光線投射的基礎上,加入光與物體表面的交互,讓光線在物體表面沿著反射,折射以及散射方式上繼續傳播,直到與光源相交。這一方法后來也被稱為經典光線跟蹤方法、遞歸式光線追蹤(Recursive Ray Tracing)方法,或 Whitted-style 光線跟蹤方法。

光線追蹤方法主要思想是從視點向成像平面上的像素發射光線,找到與該光線相交的最近物體的交點,如果該點處的表面是散射面,則計算光源直接照射該點產生的顏色;如果該點處表面是鏡面或折射面,則繼續向反射或折射方向跟蹤另一條光線,如此遞歸下去,直到光線逃逸出場景或達到設定的最大遞歸深度。

經典的光線追蹤:每像素從眼睛投射射線到場景,并追蹤次級光線((shadow, reflection, refraction),并結合遞歸

光線追蹤(Ray tracing)是三維計算機圖形學中的特殊渲染算法,跟蹤從眼睛發出的光線而不是光源發出的光線,通過這樣一項技術生成編排好的場景的數學模型顯現出來。這樣得到的結果類似于光線投射與掃描線渲染方法的結果,但是這種方法有更好的光學效果,例如對于反射與折射有更準確的模擬效果,并且效率非常高,所以當追求高質量的效果時經常使用這種方法。

以下這張圖示可以很好的說明光線追蹤方法的思路:

Ray Tracing Illustration First Bounce

基于光線追蹤渲染出的效果圖1

基于光線追蹤渲染出的效果圖2

典型的光線追蹤渲染效果圖

光線跟蹤的一個最大的缺點就是性能,需要的計算量非常巨大,以至于目前的硬件很難滿足實時光線追蹤的需求。傳統的光柵圖形學中的算法,利用了數據的一致性從而在像素之間共享計算,而光線跟蹤通常是將每條光線當作獨立的光線,每次都要重新計算。但是,這種獨立的做法也有一些其它的優點,例如可以使用更多的光線以抗混疊現象,并且在需要的時候可以提高圖像質量。盡管它正確地處理了相互反射的現象以及折射等光學效果,但是傳統的光線跟蹤并不一定是真實效果圖像,只有在非常近似或者完全實現渲染方程的時候才能實現真正的真實效果圖像。由于渲染方程描述了每個光束的物理效果,所以實現渲染方程可以得到真正的真實效果,但是,考慮到所需要的計算資源,這通常是無法實現的。于是,所有可以實現的渲染模型都必須是渲染方程的近似,而光線跟蹤就不一定是最為可行的方法。包括光子映射在內的一些方法,都是依據光線跟蹤實現一部分算法,但是可以得到更好的效果。

分布式光線追蹤 Distributed Ray Tracing [1984]

Cook于1984年引入蒙特卡洛方法(Monte Carlo method)到光線跟蹤領域,將經典的光線跟蹤方法擴展為分布式光線跟蹤算法(Distributed Ray Tracing),又稱為隨機光線追蹤(stochasticray tracing),可以模擬更多的效果,如金屬光澤、軟陰影、景深( Depthof Field)、運動模糊等等。

路徑追蹤 Path Tracing [1986]

Kajiya于1986年提出了路徑追蹤算法的理念,開創了基于蒙特卡洛的全局光照這一領域。根據渲染方程, Kajiya 提出的路徑追蹤方法是第一個無偏(Unbiased)的渲染方法。路徑追蹤的基本思想是從視點發出一條光線,光線與物體表面相交時根據表面的材質屬性繼續采樣一個方向,發出另一條光線,如此迭代,直到光線打到光源上(或逃逸出場景),然后用蒙特卡洛的方法,計算其貢獻,作為像素的顏色值。

簡單來說,路徑追蹤 = 光線追蹤+ 蒙特卡洛方法。

基于路徑追蹤渲染的效果圖

雙向路徑追蹤 Bidirectional Path Tracing [1993,1994]

雙向路徑追蹤(Bidirectional Path Tracing)的基本思想是同時從視點、光源打出射線,經過若干次反彈后,將視點子路徑( eye path) 和光源子路徑( light path) 上的頂點連接起來(連接時需要測試可見性),以快速產生很多路徑。這種方法能夠產生一些傳統路徑追蹤難以采樣到的光路,所以能夠很有效地降低噪聲。 進一步的, [Veach 1997]將渲染方程改寫成對路徑積分的形式,允許多種路徑采樣的方法來求解該積分。

Ray Casting ,Ray Tracing,Path Tracing的區別

初學者往往會弄不明白光線投射(Ray Casting ),光線追蹤(Ray Tracing),路徑追蹤(Path Tracing)三者的的區別,龔大 @叛逆者 在https://www.zhihu.com/question/29863225這個答案中的回答已經很精辟,本文就直接引用了過來:

? Ray Tracing:這其實是個框架,而不是個方法。符合這個框架的都叫raytracing。這個框架就是從視點發射ray,與物體相交就根據規則反射、折射或吸收。遇到光源或者走太遠就停住。一般來說運算量不小。

? Ray Casting:其實這個和volumetric可以脫鉤。它就是ray tracing的第一步,發射光線,與物體相交。這個可以做的很快,在Doom 1里用它來做遮擋。

? Path Tracing:是ray tracing + 蒙特卡洛法。在相交后會選一個隨機方向繼續跟蹤,并根據BRDF計算顏色。運算量也不小。還有一些小分類,比如Bidirectional path tracing。

聲明:本文內容及配圖由入駐作者撰寫或者入駐合作網站授權轉載。文章觀點僅代表作者本人,不代表電子發燒友網立場。文章及其配圖僅供工程師學習之用,如有內容侵權或者其他違規問題,請聯系本站處理。 舉報投訴
  • 蒙特卡洛
    +關注

    關注

    0

    文章

    13

    瀏覽量

    8203
  • 光線追蹤
    +關注

    關注

    0

    文章

    183

    瀏覽量

    21539

原文標題:光線投射 ,光線追蹤與路徑追蹤的區別

文章出處:【微信號:Imgtec,微信公眾號:Imagination Tech】歡迎添加關注!文章轉載請注明出處。

收藏 人收藏

    評論

    相關推薦

    光線追蹤技術學習資料

    資料是Peter Shirley的一周學會光線追蹤技術。資料為英文版.光線最終其實已經不是什么新鮮技術了,但是最近隨著英偉達最新的顯卡加入了Ray Tracing技術又被人們開始提及起來,對于該圖像技術又有什么值得稱道的呢?趕緊
    發表于 10-12 16:36

    光線追蹤技術的作用

    其實對于產品設計師而言,光線追蹤技術并不陌生。簡單的說,是自三維(3D)圖形誕生以來圖形技術領域最重要的進步之一,而且它即將從高深的電影和廣告領域轉向移動、可穿戴和汽車等嵌入式領域,作為全新的、更有
    發表于 11-02 08:21

    Imagination的光線追蹤等級系統介紹

    Imagination的光線追蹤等級系統
    發表于 12-21 06:02

    光線追蹤技術介紹

    光線追蹤:一種顛覆性技術
    發表于 01-22 07:19

    硬件光線追蹤的優勢有哪些

    硬件光線追蹤的優勢光線追蹤面臨的關鍵挑戰
    發表于 01-28 07:19

    光線追蹤等級系統的介紹

    我們為什么要發布光線追蹤等級系統?它對游戲意味著什么?
    發表于 01-29 07:41

    光線追蹤如何實現實時三維圖形?

    什么是光線追蹤光線追蹤如何實現實時三維圖形?
    發表于 02-26 07:03

    如何看待光線追蹤

    光線追蹤我們實際應用中經常用嗎,他到底是一項什么技術?
    發表于 03-07 08:36

    什么是光線追蹤

    什么是光線追蹤
    發表于 05-28 06:38

    怎樣實現光線追蹤

    怎樣實現光線追蹤?怎么使光線追蹤生效?
    發表于 05-31 06:51

    硬件光線追蹤的優勢有哪些?

    光線追蹤面臨的關鍵挑戰是什么?硬件光線追蹤的優勢有哪些?
    發表于 05-31 06:53

    光線追蹤算法匯總

    在基本光線追蹤算法中,只追蹤有限數目的光線
    的頭像 發表于 05-11 15:58 ?1.7w次閱讀
    <b class='flag-5'>光線</b><b class='flag-5'>追蹤</b>算法匯總

    如何在家里使用光線追蹤

    圖形技術解釋起來通常很晦澀,但是光線追蹤很容易理解。它試圖模擬光在現實世界中的工作方式。光線追蹤沒有為游戲場景創建預先設計的光線,而是
    的頭像 發表于 06-15 13:16 ?2677次閱讀

    移動端的光線追蹤是如何實現的

    對于光線追蹤(ray tracing)這一概念,電腦游戲玩家肯定是不陌生的。光線追蹤給游戲畫面展示帶來了更為細膩的光照表現和寫實的光影效果,
    的頭像 發表于 11-11 09:34 ?2116次閱讀

    NVIDIA OptiX光線追蹤引擎的功能特性

    NVIDIA OptiX 光線追蹤引擎用于在 GPU 上實現出色光線追蹤性能的應用框架,提供簡單、遞歸式的靈活工作流,用于加速光線
    的頭像 發表于 09-14 09:37 ?2779次閱讀
    太阳城百家乐官网出千技术| 视频百家乐信誉| 大发888游戏好吗| 百家乐官网庄家出千内幕| 澳门百家乐先赢后输| 百家乐网址| 百家乐路纸发表区| 环澳娱乐| 百家乐有没有攻略| 铂金娱乐| 属虎和属猴牛人做生意| 2011棋牌游戏赢话费| 云鼎百家乐官网注册| 优博百家乐娱乐城| 百家乐官网单跳打法| 百家乐赌博论坛| 杭州太阳城假日酒店| 专业百家乐官网软件| 大发888网站大全| 伟易博百家乐官网的玩法技巧和规则 | 百家乐看炉子的方法| 玩百家乐官网最好方法| 任我赢百家乐软件| 百家乐官网2号技术| 大发888游戏平台hg dafa888gw| 澳门百家乐官网网上娱乐场开户注册 | 百家乐官网破战| 新葡京娱乐城网站| 至尊百家乐2014| 网上百家乐官网辅助软件| 缅甸百家乐视频| 新濠峰百家乐官网的玩法技巧和规则| 235棋牌游戏| 澳门百家乐家用保险柜| 玩百家乐官网新2娱乐城| 大发888网页游戏平台| 百家乐连开6把小| 网上百家乐官网信誉度| 大发888真人游戏平台| 个体老板做生意的风水| 百家乐官网网站出售|