电竞比分网-中国电竞赛事及体育赛事平台

分享

Android手機(jī)屏幕自適應(yīng)

 有趣的永 2015-07-13
android手機(jī)屏幕分辨率五花八門,導(dǎo)致開發(fā)時(shí)不好把握,還好各個(gè)引擎對(duì)這個(gè)屏幕分辨率問(wèn)題都有較好的處理方式;unity3D 也為我們提供了一個(gè)不錯(cuò)的解決方案。

在Unity3D 進(jìn)行 android 游戲開發(fā)時(shí),對(duì)于不同分辨率下的顯示效果就像是攝像機(jī)的自動(dòng)平移了一般,看了不少游戲,對(duì)于 Unity3D 開發(fā) android 游戲貌似都沒(méi)有做相應(yīng)的屏幕分辨率的處理,而是隨攝像機(jī)的自動(dòng)移動(dòng),把場(chǎng)景做大些不至于出現(xiàn)空白背景。

其實(shí) Unity3D 開發(fā)3D游戲,對(duì)于不同的分辨率,我們只需要設(shè)置 1 個(gè)唯一的屏幕顯示區(qū)域比(說(shuō)白了就是寬高比),這樣顯示區(qū)域就不會(huì)隨分辨率的改變而拉升。

上代碼:

using UnityEngine;
using System.Collections;


public class Resolution : MonoBehaviour {
    public Camera mainCamera;
    void Start()
    {
        //Screen.SetResolution(1280, 800, true, 60);
        mainCamera = Camera.mainCamera;
        //  float screenAspect = 1280 / 720;  現(xiàn)在android手機(jī)的主流分辨。
        //  mainCamera.aspect --->  攝像機(jī)的長(zhǎng)寬比(寬度除以高度)
        mainCamera.aspect = 1.78f;
    }
}

把此代碼腳本綁定在  MainCamera 上就OK了,這樣就不會(huì)導(dǎo)致不同分辨率下屏幕顯示區(qū)域大小不一的問(wèn)題!

    本站是提供個(gè)人知識(shí)管理的網(wǎng)絡(luò)存儲(chǔ)空間,所有內(nèi)容均由用戶發(fā)布,不代表本站觀點(diǎn)。請(qǐng)注意甄別內(nèi)容中的聯(lián)系方式、誘導(dǎo)購(gòu)買等信息,謹(jǐn)防詐騙。如發(fā)現(xiàn)有害或侵權(quán)內(nèi)容,請(qǐng)點(diǎn)擊一鍵舉報(bào)。
    轉(zhuǎn)藏 分享 獻(xiàn)花(0

    0條評(píng)論

    發(fā)表

    請(qǐng)遵守用戶 評(píng)論公約

    類似文章 更多