2016年7月27日 星期三

Unity筆記整理:不同解析度的調整(三)

這次要來談以script調整內建GUI和camera的畫面縮放比。
整理自胡亂說‧隨便寫很有用的Blog。

二、鏡頭 Camera 數值的換算調整

  • 使遊戲畫面直接佔滿整個螢幕畫面








缺點:遊戲畫面可能會被拉長或縮短而使得遊戲物件在螢幕上看起來有些變形

  • 使遊戲畫面維持原來比例進行縮放
說明:從官方文件 Camera.orthographicSize 得知 orthographicSize 是檢視空間(viewing volume)的垂直大小的一半,所以,以我們在開發遊戲時設定畫面解析度為 1024*768 這樣的長寬比為例,如果當時將 orthographicSize 設定為 5,那麼檢視空間的垂直大小就是 5 * 2 = 10


公式:
(height)
newOrthographicSize = viewVolumeVertical / 2
=> newOrthographicSize = (targetHeight / factor) / 2
=> newOrthographicSize = (targetHeight / (baseHeight / (baseOrthographicSize * 2))) / 2

viewVolumeVertical: 檢視空間的垂直大小
targetHeight: 目標畫面解析度的高度
baseHeight: 開發時定義的基礎解析度高度
baseOrthographicSize: 開發時定義的 orthographicSize

(weight)
newOrthographicSize = (targetHeight / (factor * (targetWidth / baseWidth))) / 2
=> newOrthographicSize = (targetHeight / (baseHeight / (baseOrthographicSize * 2) * (targetWidth / baseWidth))) / 2

targetWidth: 目標畫面解析度的寬度
baseWidth: 開發時定義的基礎解析度寬度

(simplify)
newOrthographicSize = targetHeight / targetWidth * baseWidth / baseHeight * baseOrthographicSize;



沒有留言:

張貼留言