Unity 室內設計-電視遥控功能

 

設定電視

1.將 Apartment 物件展開並將電視與遙控器拖曳出來成為獨立物件,接著在電視物件新增一個 Quad 物件並命名為 TV Scene。

2. 建立一個新材質球並命名為 TV Scene 並套用給 TV Scene 物件,接著將材質球的 Scene 變更為 Unlit / Texture。

3. 將準備好的 MP4 影片檔拖曳到 TV Scene 物件上並看到 Inspector 下的 Video Player 元件,將 Loop 勾選並將 Render Mode 修改為 Material Override,接著按下 Play 測試畫面是否正常顯示,最後調整位置與大小並將物件預設為關閉即可完成。

設定遙控器

1. 選取 remote-control03 物件並在物件上新增 Rigidbody、Mesh Collider、Sphere Collider、HVR Grabbable(Script) 元件,接著將 Mesh Collider 下的 Convex 勾選;將 Sphere Collider 下的 Is Trigger 勾選並調整 Radius 為 0.2。

注意!物件不可設為 Static 狀態,否則將會無法用手拿取。

2.建立VR_TV_Controller.cs 腳本,程式碼如下:

 

3.將此腳本套用到 remote-control03 物件,並將 TV Scene 物件拖曳到 TV 欄位中,按下 Play 測試拿起遙控器後按下手把的 B 鍵是否能夠正常開關。此階段會發現放開遙控器時按下 B 鍵時依然能夠開啟關閉畫面

4.開啟 HandObjectManager 腳本元件並在 Update 下加入以下程式碼。
if(!rightIndex())
{
FindObjectOfType<VR_TVController>().Touch = false;
}
此為控制放開遙控器時將無法控制 TV 畫面的開啟關閉,按下 Play 測試是否正常,完成。