沒想到這麼快就能寫更新了,想說就像日誌一樣,
紀錄一下這兩天的過程,
這次新增了在真實空間中,可以遮擋虛擬物件的功能,
使用了官方的Depth去判斷物件是在影片畫布前方還是後方,
如果在後方就會去做遮蔽的運算,會使用Depth的材質球去處理,
然後我發現全遮蔽其實有個壞處,
如果我丟了一顆球在空間中,它被遮蔽了,
那玩家就很難找到它,除非玩家走過遮蔽物,
影片的部分也是一樣,
所以我用了一些小技巧,讓被遮蔽的部分可以選擇要半遮蔽還是全遮蔽,
有興趣的人可以看文末的示範影片,就知道我實作的結果惹。
---
另外相對應的,
這次也實作了2D播放器的VR空間效果,
使用的是簡略的Skybox讀取外部360度圖檔,
如果要做3D模型場景也是可行的,
只是我覺得重點不在那,要實際做幾個場景範例有點花時間,
也會吃硬體效能,所以最後使用簡單的一張圖檔呈現氣氛這樣。
---
另外比較可惜的是,
MR穿透的攝影機效果是使用Solid全黑去做映射,
無法搭配VR影片的skybox去做融合,
暫時還沒辦法實現類似Apple vision那樣的AR轉VR淡入效果,
實際上應該可行,只是我不會寫材質,
只能等之後官方或是有其他熱心的開發者製作囉,
所以現在我的Passthrough開關是直接替換攝影機的參數,
在Solid跟Skybox來回切換,
然後UI新增了一個透明度條,可以調整Solid的alpha值,
也就是MR攝影機的淡入跟淡出,
但實際上就是亮暗的差別,從1到0(全黑),
所以我設定上是拿來調整攝影機亮度的,
畢竟兩塊螢幕貼在眼睛前面,
Passthrough的攝影機也沒有很高畫質,
太亮帶久了會很刺眼,
我通常會把Passthrough的亮度調到0.5左右。
---
本次更新大概至此,有什麼問題或想法歡迎討論,
感謝閱讀~