光线投射

光線投射（英文：ray casting）是彩現最基本的方法之一。概念是從眼睛處出發，對每個像素發射出一條光線，找到阻擋該光線路徑的最近物體，即為眼睛通過該像素看到的物體。由於光線投射算法適用於任何可以被光線交叉的數學表面，因此相較於傳統的掃描線算法，能更輕鬆地處理曲面和實體。

 原理 
光線投射採用了光線追蹤的幾何算法，從外部觀察點開始建立幾何模型，再逐點、逐線進行分析，將三維場景渲染為二維圖像。具體的概念是將圖像想像成一個屏風，每個屏風中的小方格代表一個像素。接著從眼睛處出發，對每個像素發射出一條光線，找到阻擋該光線路徑的最近物體，即為眼睛通過該像素看到的物體。

當光線與物體交叉時，可以用幾種不同的方法來計算交叉點的顏色。其中最簡單的方法是用交叉點處物體的顏色表示該點的實際顏色；也可以用紋理對映的方法來確定；另一種更加複雜的方法是僅僅根據照明因數變更顏色值，而無需考慮與類比光源的關係。為了減少人為誤差，可以對多條相鄰方向的光線進行平均。

此外，也可以對光的特性進行大致的類比：簡單計算從物體到觀察點的光線。其他一些計算涉及到從光源到物體的入射角，以及根據光源的強度計算像素的亮度值。還有一些類比使用輻射著色演算法繪製的照明結果，或者使用這兩種資訊的組合。

 應用 
由於光線投射算法適用於任何可以被光線交叉的數學表面，能輕鬆處理曲面和實體，如錐體和球體，速度也更快。因此被廣泛應用於對細節要求較低的即時類比場景，如三維電腦遊戲和動畫。

Category:计算机图形算法