Unity3D 攝像機 Camera 屬性詳解

2021-08-21 12:55:11 字數 1958 閱讀 6207

相機對於將你的遊戲顯示給玩家是必不可少的。它們可以被定製、被指令碼化、或被子類化以實現幾乎任何可以想象的效果。對於乙個益智遊戲,你要保持相機處於靜態顯示全部視角。對於第一人稱射擊遊戲,你應該將相機作為玩家角色的子物件,並將其放置在與角色的眼睛等高水平上。對於乙個賽車遊戲,你可能更希望讓相機跟隨玩家的車輛。

你可以建立多個相機並且給每乙個分配不同的深度。相機是按深度從低到高來繪製的,換言之,乙個深度為2的相機將繪製在乙個深度為1的相機之上。你可以調整標準視口矩形(參照前面的屬性列表)的屬性值來改變其大小和其在螢幕上的位置。這樣你就可以建立多個小視窗,如飛彈控制器,小地圖視窗,後視鏡等等。

skybox:把顏色緩衝設定為天空盒,並完全清空深度緩衝 

solid:和天空盒一樣,只是把顏色緩衝設定為純色 

depth only:這個選項會保留顏色緩衝,但會清空深度緩衝 

don』t clear:不清除任何緩衝 

這個給我的感覺就是,空(沒有物體)的部分用什麼來填充,如果是skybox,就用天空盒填充,如果是solid,就用純色填充,如果是depth only取決於其他相機的深度,未渲染部分顯示什麼由深度小於本攝像機的內容來決定。 

下面放幾張作為例子:

我們通過看scene的右下角的camera preview來看相機拍攝的場景。

改變下solid的背景顏色,發現camera preview背景顏色變了: 

這是main camera的屬性,depth為-1。 

這是camera屬性,depth為0,clear flags為depth only: 

執行,發現,camera物體以外的地方全部是main camera所拍攝的。 

取消main camera,發現只剩下camera能拍攝到的東西。 

culling mask是按層(即gameobject.layer)選擇性的渲染部分場景。 

當我們culling mask是everything的時候,scene右下角的camera preview會把背景也顯示。 

但當我們把culling mask設定為只顯示ui層的時候,背景這時候就不會顯示在此camera中了。 

depth決定相機在渲染順序上的深度,具有較低深度的相機將在較高深度的相機之前渲染。 

而如果把main camera的depth設定為2(大於等於camera的depth):可以發現,執行後只能看到main camera拍攝的東西。 

unity3d攝像機引數

1.clear flags 清除標記。決定螢幕的哪部分將被清除。一般使用者使用對台攝像機來描繪不同遊戲物件的情況,有3中模式選擇 skybox 天空盒。預設模式。在螢幕中的空白部分將顯示當前攝像機的天空盒。如果當前攝像機沒有設定天空盒,會預設用background色。solid color 純色。選...

unity3d攝像機引數解釋

unity3d攝像機引數 1.clear flags 清除標記。決定螢幕的哪部分將被清除。一般使用者使用對台攝像機來描繪不同遊戲物件的情況,有3中模式選擇 skybox 天空盒。預設模式。在螢幕中的空白部分將顯示當前攝像機的天空盒。如果當前攝像機沒有設定天空盒,會預設用background色。sol...

unity3D之攝像機的調換

知識總結 我們今天主要學習了關於攝像機的轉換問題,對於轉換攝像機,我們只需要在遊戲物件下面加個攝像機,然後因為是第一人稱所以需要給遊戲物件新增角色控制器,這樣才能實現遊戲物件的移動,再接著你也可以用於移動來使物體移動。下面先看看效果吧 如下 首先是立方體的 public charactercontr...