Unity3D攝像機相關簡介

unity的場景之中,想看到物體的樣式,就是通過攝像機組件來實現(xiàn)。Camera也是比較核心的組件。在unity場景創(chuàng)建的同時,會自動創(chuàng)建一個MainCamera作為主要相機。并且攝像機會附帶有Flare Layer、GUI Layer、Audio Listener等4個組件
在Unity中創(chuàng)建一個Camera后,除了默認帶一個Transform組件外,還會附帶Flare Layer、Audio Listener等組件。
接下來看一下組件上具體的內(nèi)容:
ClearFlags:清除標記;決定屏幕中哪部分被清除。一般用于多臺攝像機來描繪不同對象的情況,有一下三種模式。
Skybox:天空盒(默認項)。在屏幕空白處顯示當前攝像機的天空盒,如果沒有指定天空盒,則會顯示默認背景色。
Solid Color:如果沒有設置天空盒,將默認顯示此處設置的背景色。
(可以在 background中設置顏色)
Depth only:僅深度,該模式用于對象不被裁剪。
Don't Clear:不清除,該模式不清楚任何顏色和或深度緩存,但這樣做每幀渲染的結(jié)果都會疊加在下一幀之上。一般與自定義的Shader(著色器)配合使用。
Culling Mask:剔除遮罩,根據(jù)對象所指定的層來控制渲染的對象。
Projection:投影方式,分為透視和正交。
(默認是3D視角相機 - Perspective透視投影,也可以切換為2D游戲相機 -?Orthographic正交攝像機)
Field of view:視野范圍(透視模式的參數(shù))
Clipping Planes:裁剪平面,Near表示拍攝到的最近的距離,F(xiàn)ar表示拍攝到的最遠的距離,以米為單位,超出或小于的相機不繪制。
Viewport Rect:是攝像機拍攝到的畫面在游戲Game視圖的顯示比例,一般是不去改的,除非想做兩個顯示畫面的時候,像直播的右下角有人頭像。
Depth:深度 ,用于控制攝像機的渲染順序,值大的攝像機將被渲染在較小值的攝像機之上。
Target Display:一臺電腦可以接多臺顯示器,Display1到Display8分別表示1到8的顯示器。選擇哪一個Display就繪制到哪個對應的顯示器上。
本人不才,當然還有一些我不常使用的屬性,希望日后可以更加了解。
在使用中主要是運用點:
Culling Mask
有的時候,需要讓一個攝像機只看到部分內(nèi)容,就需要調(diào)整cullingmask的可見內(nèi)容,而且也要給想看的物體添加一個layers值


如果你想添加新的layers,也可以通過"Edit" -> "Project Settings" -> "Tags and Layers"來打開設置面板。

layers值:public LayerMask m_layerMask = 1;
????????LayerMask的NameToLayer是通過層的名稱返回該層的索引,如果是8,然后1<<8換算成LayerMask值,再用LayerMask的value就可以了。注意也必須設置collider才能接收碰撞,這里才能判斷到。LayerMask實際上是一個位碼操作,在Unity中Layers一共有32層,這個是不能增加或者減少的:1 << LayerMask.NameToLayer("UI") 這一句實際上表示射線查詢只在UI所在這個層級查找是返回的該名字所定義的層的層索引,注意是從0開始。layer最多只能有32個層。
tag值: string _tagName = gameobject.tag[;
????????tag可以理解為一類元素的標記,如hero、enemy、apple-tree等。通過設置tag,可以方便地通過GameObject.FindWithTag()來尋找對象。GameObject.FindWithTag()只返回一個對象,要想獲取多個tag為某值的對象,GameObject.FindGameObjectsWithTag()。
Align with view:菜單欄->GameObject->Align with view
????????這個用法就要把普通游戲?qū)ο蠛虲amera 分開來說了,選中普通的游戲?qū)ο螅簳苿佑螒驅(qū)ο?,直到游戲?qū)ο蟮闹行狞c和視圖的中心點對齊
????????選中Camera:會移動Camera,直到Camera的中心點和視圖的中心點對齊,雖然和普通游戲?qū)ο蠼Y(jié)果一樣,但是效果卻不一樣,它會讓你在Game窗口看到的景象和在Scene窗口看到的景象一致
(比如可用于:你在Scene里調(diào)整一個視角,想在Game窗口看到效果,就可以選中Camera,然后點擊Align With View,這樣Game窗口顯示的圖像就和Scene一樣了)
????????unity點擊Align With View之后,會出現(xiàn)視野變小的情況,這個時候查看Scene窗口右上角坐標軸下面的視圖模式是不是變成了Iso(正交投影視圖),可以點擊一下,切換為Persp(透視圖)就行了
以上就是在使用攝像機時,了解到的內(nèi)容,之后也會更新一些學到的相機跟隨等關于攝像機的使用方法,如果大家對我的帖子有什么看法都可以私聊給我,謝謝大家。