本節書摘來自華章社群《unity開發實戰》一書中的第2章,第2.7節制作檢視錄影機,作者 (愛爾蘭)matt smith (巴西)chico queiroz,更多章節内容可以通路雲栖社群“華章社群”公衆号檢視
2.7 制作檢視錄影機
檢視錄影機是一種展示線上産品的非常流行的方式。這類虛拟顯示的特點是:通常以一個錄影機環繞着産品轉動并一直縮放。本節中将學習如何用标準的unity元件作為切入點實作這樣的錄影機。
2.7.1 準備工作
示例代碼中名為“0423_02_06”的檔案夾中有一個名為inspectscene的包需要導入,此包中有一個3d手機模型和一個錄影機的基礎場景。
本節引入了用unity編輯javascript檔案的相關内容,如果讀者需要c#版本的腳本,可以在檔案夾0423_02_06中找到。
2.7.2 操作步驟
請按照下面的步驟建立檢視錄影機:
1)把inspectscene包導入到unity中,打開02_06檔案夾中的名為inspectscene的場景。
2)在場景中添加一個directional light(方向光),使其光線投射到錄影機面對的方向。
3)在hierarchy視圖中,把方向光拖進main camera遊戲對象中,讓它作為main camera的一個子對象。
4)確定mouseorbit腳本在project視圖中(應該在standard asset | script | camera script檔案夾中)。如果沒看到,通過菜單的assets | import package | scripts導入scripts包。
5)複制mouseorbit腳本,重命名為inspectcamera。
6)打開inspectcamera腳本。
7)在@script之前的代碼行插入下面的代碼:
![](https://img.laitimes.com/img/9ZDMuAjOiMmIsIjOiQnIsIyZuBnLzUTZ5UDZmhTYxMGNhVmMmV2NyYWZlNTO2U2MyYjNmVGM4ImNzIzMi9CXt92Yu4GZjlGbh5SZslmZxl3Lc9CX6MHc0RHaiojIsJye.png)
8)然後把以@script開頭的那行代碼改成:
12)inspect camera元件應該會出現在main camera 的inspector視圖中。從hierarchy 視圖中把mobile 遊戲對象拖進target(目标)槽中,然後把distance(距離)值改為1。
13)播放場景。移動滑鼠并按住左鍵不放,觀察對象。放大再縮小,不松開左鍵并按往shift鍵,再縱向移動滑鼠。
2.7.3 實作原理
不像unity的mouseorbit,inspectcamera腳本把滑鼠按鈕按下作為移動錄影機的一個條件。也可以當按下滑鼠鍵,且滑鼠縱向移動的時候,通過修改camera的視野值實作縮放功能。
2.7.4 更多内容