"自陰影"是描述物體的一個部分在其自身上投射陰影的術語。自陰影的例子包括當光源來自上方時,人的鼻子投射到臉部或上唇上的陰影,或椅子座位投射在椅子腿上的陰影。當這個術語用于計算機圖形學,特別是計算機圖形編程時,它...
"自陰影"是描述物體的一個部分在其自身上投射陰影的術語。自陰影的例子包括當光源來自上方時,人的鼻子投射到臉部或上唇上的陰影,或椅子座位投射在椅子腿上的陰影。當這個術語用于計算機圖形學,特別是計算機圖形編程時,它指的是場景的三維(3D)對象投射到自身上的陰影,或者由動態對象投射到自身和周圍對象上的陰影。實時三維計算機圖形編程的本質導致許多應用程序使用技術,這些技術通常會消除渲染自身陰影的可能性,而有利于其他優化,盡管隨著計算機速度和功能的提高,實時自陰影方法變得越來越容易使用。有幾種方法可以渲染實時自陰影對象,但硬件限制通常會產生一些缺點,例如陰影不準確、帶有人工硬邊的陰影,或者在顯卡上渲染速度非常慢的場景。

自陰影是指由場景投射的陰影;當談到自陰影時,有一個區別是實時圖形中靜態對象和動態對象之間的區別。靜態對象是場景中不移動的3D對象,其幾何結構在整個過程中沒有發生變化另一方面,動態對象是一個不以任何方式直接附著在場景上的對象,并且在每一幀之間都可能不同在大多數情況下,大多數靜態對象和非實時場景都會進行自我陰影,這可能是因為渲染引擎或其他可以使用的圖形技巧。

在舊的顯卡上,自呈現可能會緩慢。
一些用于渲染實時3D圖形的優化使動態自陰影的實現變得困難。一些示例包括只對靜態背景應用照明效果的圖形引擎,忽略動態對象(如場景中的角色)或僅將對象視為輪廓的引擎,隨著圖形處理器和計算機的增加,新技術允許自陰影物體出現在實時場景中,有一些限制和折衷。
陰影體積是在3D場景中實現自陰影的一種方法。這種方法本質上是在投射陰影的場景中創建占據封閉體積的3D對象,允許渲染器或著色器對陰影體積內是否有任何點進行測試,以確定如何進行它是亮的。其他方法創建陰影貼圖,或頂點位置的近似陰影,以創建不一定遵循邊保真度的非常漫反射陰影。
幾乎所有的自陰影方法都必須交換速度或質量以獲得可接受的結果。使用fast低分辨率或模糊技術,可能會使某些自陰影看起來錯誤或不合適。當使用的算法每幀需要太多開銷或試圖計算陰影投影過于精確時,就會出現速度問題雖然沒有一個標準的自陰影生成算法,但是一些顯卡包含了不同方法的本機加速,可以提高某些技術的速度。