unity发布安卓版本怎样设置分辨率?
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了unity发布安卓版本怎样设置分辨率?相关的知识,希望对你有一定的参考价值。
其实 Unity3D 安卓版,对于不同的分辨率,我们只需要设置 一个唯一的屏幕显示区域比(说白了就是宽高比),这样显示区域就不会随分辨率的改变而拉升。上代码:
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; 现在android手机的主流分辨。
// mainCamera.aspect ---> 摄像机的长宽比(宽度除以高度)
mainCamera.aspect = 1.78f;
把此代码脚本绑定在 MainCamera 上就OK了,这样就不会导致不同分辨率下屏幕显示区域大小不一的问题! 参考技术A 具我所知,是设置不了的,只能让你的游戏去适应它的屏幕,
比如让你的UI弄成屏幕自适应追问
怎样弄成自适应啊?
追答有两种方法,一种是用U3D自带的GUI系统,然后自己用代码实现,但这个系统自带的效率很低,不推荐
另外一种是用第三方插件,比如NGUI,EGUI之类的,用这些插件做UI要弄成屏幕自适应稍微简单写,而且运行效率和开发效率都比系统自带的高.这些插件的屏幕自适应的用法你自己百度和在相关论坛都能找到!
unity 怎么设置分辨率?unity摄像头怎么设置分辨率?
参考技术A 打开Unity,新建一个空工程,然后在场景中铺满Canvas添加RawImage,具体如下图在工程中,新建一个脚本OpenCamera,双击打开进行编辑,具体如下图
OpenCamera 脚本的具体代码和代码说明如下图
OpenCamera 脚本的具体内容如下:
using System.Collections;
using UnityEngine;
using UnityEngine.UI;
public class OpenCamera : MonoBehaviour
public RawImage rawImage;
private WebCamTexture webCamTexture;
private Vector2 resolution = new Vector2(1280, 720);
private int fps = 60;
// Use this for initialization
void Start()
StartCoroutine(OpenBGCamera());
IEnumerator OpenBGCamera()
Debug.Log("Test");
//获取摄像头权限
yield return Application.RequestUserAuthorization(UserAuthorization.WebCam);
if (Application.HasUserAuthorization(UserAuthorization.WebCam))
//停止正在使用的摄像头
if (webCamTexture != null)
webCamTexture.Stop();
//判断时候有摄像头
if (WebCamTexture.devices.Length != 0)
//new一个后置摄像头并且设置分辨率和FPS,渲染到UI上
webCamTexture = new WebCamTexture(WebCamTexture.devices[0].name, (int)resolution.x, (int)resolution.y, fps);
rawImage.texture = webCamTexture;
webCamTexture.Play();
脚本编译正确,回到Unity,把脚本挂载上去,具体如下图
在顶部菜单栏 File—BuildSettings,点击打开,切换成移动端,并且设置屏幕不自动旋转,然后根据手机进行设置方向,方向不同会是画面颠倒,不要紧,根据情况更换 Orientation 即可,具体如下图
编译打包,手机上运行结果如下如
以上是关于unity发布安卓版本怎样设置分辨率?的主要内容,如果未能解决你的问题,请参考以下文章