Unity-使用物理攝像機(jī) (Physical Camera)
攝像機(jī)組件的 Physical Camera 屬性在 Unity 攝像機(jī)上模擬真實(shí)攝像機(jī)格式。這可用于從同樣模擬真實(shí)攝像機(jī)的 3D 建模應(yīng)用程序?qū)霐z像機(jī)信息。

Unity 提供的設(shè)置與大多數(shù) 3D 建模應(yīng)用程序的物理攝像機(jī)設(shè)置相同。控制攝像機(jī)視野的兩個(gè)主要屬性是?Focal Length?和?Sensor Size。
Focal Length:傳感器和攝像機(jī)鏡頭之間的距離,即焦距。此屬性決定了垂直視野。Unity 攝像機(jī)處于 Physical Camera 模式時(shí),改變 Focal Length 也會(huì)相應(yīng)改變視野。焦距越小,視野越大,反之亦然。

Sensor Size:捕捉圖像的傳感器的寬度和高度,表示傳感器大小。這些數(shù)值決定了物理攝像機(jī)的寬高比??蓮膶?duì)應(yīng)于真實(shí)攝像機(jī)格式的幾個(gè)預(yù)設(shè)傳感器大小中進(jìn)行選擇,或設(shè)置自定義大小。傳感器寬高比與渲染的寬高比(在 Game 視圖中設(shè)置)不同時(shí),可以控制 Unity 如何將攝像機(jī)圖像與渲染的圖像匹配(請(qǐng)參閱下文中關(guān)于?Gate Fit?的信息)。
Lens Shift
Lens Shift?從傳感器水平和垂直偏移攝像機(jī)的鏡頭。這樣一來便可以改變焦點(diǎn)中心,并在渲染的幀中重新定位拍攝對(duì)象,確保很少或完全沒有失真。
這種方法在建筑攝影中很常見。例如,如果要拍攝一座高樓,可以旋轉(zhuǎn)攝像機(jī)。但這會(huì)使圖像失真,導(dǎo)致平行線看起來發(fā)生會(huì)聚。

如果把鏡頭上移,而不是旋轉(zhuǎn)攝像機(jī),就可以改變構(gòu)圖以包含樓頂,但平行線保持直線。

同樣,可以使用水平鏡頭位移方法來拍攝寬大的對(duì)象,避免由于旋轉(zhuǎn)攝像機(jī)而可能產(chǎn)生的失真。


鏡頭移位 (Lens Shift) 和視錐體傾斜
鏡頭移位的一個(gè)副作用是會(huì)使攝像機(jī)的視錐體傾斜。這意味著攝像機(jī)的中心線與其視錐體之間的角度在一側(cè)要小于另一側(cè)。

此功能可用于根據(jù)視角來創(chuàng)造視覺效果。例如,在賽車游戲中,可能希望將視角保持在接近地面的較低位置。鏡頭移位是一種不用腳本即可實(shí)現(xiàn)視錐體傾斜的方式。
有關(guān)更多信息,請(qǐng)參閱關(guān)于使用斜視錐體的文檔。
Gate Fit
Camera 組件的?Gate Fit?屬性決定了 Game 視圖和物理攝像機(jī)傳感器具有不同寬高比時(shí)會(huì)發(fā)生什么情況。
在?Physical Camera?模式中,一個(gè)攝像機(jī)有兩個(gè)“門”。
根據(jù)?Aspect?下拉菜單中設(shè)置的分辨率在 Game 視圖中渲染的區(qū)域被稱為“分辨率門”。
攝像機(jī)實(shí)際看到的區(qū)域(由?Sensor Size?屬性定義)被稱為“膠片門”。

兩個(gè)門具有不同寬高比時(shí),Unity 讓分辨率門“適應(yīng)”膠片門。有幾種適應(yīng)模式,但是這些模式都會(huì)產(chǎn)生以下三種結(jié)果之一。
裁剪 (Cropping):適應(yīng)后,膠片門超過分辨率門時(shí),Game 視圖在滿足寬高比的情況下渲染盡可能多的攝像機(jī)圖像面積,并裁掉其余部分。
過掃描 (Overscanning):適應(yīng)后,膠片門超過分辨率門時(shí),Game 視圖仍然對(duì)攝像機(jī)視野之外的場(chǎng)景部分進(jìn)行渲染計(jì)算。
拉伸 (Stretching):Game 視圖渲染完整的攝像機(jī)圖像,將其水平或垂直拉伸以適應(yīng)寬高比。
要在 Scene 視圖中查看這些門,并查看它們?nèi)绾蜗嗷ミm應(yīng),請(qǐng)選擇攝像機(jī)并查看其視錐體。分辨率門是攝像機(jī)遠(yuǎn)裁剪面。膠片門是位于視錐體底部的第二個(gè)矩形。

Gate Fit 模式
選擇的?Gate Fit?模式?jīng)Q定了 Unity 如何調(diào)整分辨率門的大?。ㄒ蚨{(diào)整攝像機(jī)的視錐體)。膠片門始終保持相同大小。
以下部分提供了關(guān)于每種 Gate Fit 模式的更多詳細(xì)信息。
Vertical
Gate Fit?設(shè)置為?Vertical?時(shí),Unity 讓分辨率門適應(yīng)膠片門的高度(Y 軸)。對(duì)傳感器寬度 (Sensor Size > X) 進(jìn)行的任何更改都不會(huì)影響渲染的圖像。
如果傳感器寬高比大于 Game 視圖寬高比,Unity 會(huì)在兩側(cè)裁剪渲染的圖像:

如果傳感器寬高比小于 Game 視圖寬高比,Unity 會(huì)在兩側(cè)對(duì)渲染的圖像進(jìn)行過掃描:

Horizontal
Gate Fit?設(shè)置為?Horizontal?時(shí),Unity 讓分辨率門適應(yīng)膠片門的寬度(X 軸)。對(duì)傳感器高度 (Sensor Size > Y) 進(jìn)行的任何更改都不會(huì)影響渲染的圖像。
如果傳感器寬高比大于 Game 視圖寬高比,Unity 會(huì)在頂部和底部對(duì)渲染的圖像進(jìn)行過掃描:

如果傳感器寬高比小于 Game 視圖寬高比,則會(huì)在頂部和底部裁剪渲染的圖像。

None
Gate Fit 設(shè)置為 None 時(shí),Unity 讓分辨率門適應(yīng)膠片門的寬度和高度(X 軸和 Y 軸)。Unity 會(huì)拉伸渲染的圖像以適應(yīng) Game 視圖寬高比。

Fill 和 Overscan
Gate Fit?設(shè)置為?Fill?或?Overscan?時(shí),Unity 根據(jù)分辨率門和膠片門的寬高比,自動(dòng)進(jìn)行垂直或水平適應(yīng)。
Fill?讓分辨率門適應(yīng)膠片門的較小軸,并裁剪攝像機(jī)圖像的其余部分。
Overscan?讓分辨率門適應(yīng)膠片門的較大軸,并對(duì)攝像機(jī)圖像邊界以外的區(qū)域進(jìn)行過掃描。