Unity3D手机平台分辨率自动匹配教程
1. 下载NGUI
2. 导入NGUI package到Unity。

这时候菜单上会出现NGUI的菜单栏:

3. 将默认的Main Camera删掉,通过菜单栏NGUI->Create新建一个2D UI对象。

此时创建了一个UI Root以及子对象Camera(这就是为什么要删除默认的摄像头),这个摄像头自带了NGUI的UICamera脚本,这个脚本的作用是来响应各种事件的。

4. 设置UI Root属性,点击UI Root,此时在右侧的Inspector面板可以看到其相关属性,这里很关键!选择Scaling Style为ConstrainedOnMobiles,这个是专门为手机分辨率设计的选项,此时下面有两个属性,勾选Content Width和Content Height,并设置你最期望的屏幕分辨率,一般会是你背景图片的分辨率,这样UI Root下的子元素就会根据手机的分辨率等比例缩放!注意下图的官方说明。

5. 你会发现这个新的Camera看不到你创建的物体,需要设置摄像头为可视摄像头。点击Camera,在右侧的Inspector面板会看到Camera的属性,设置以下两个属性:
Culling Mask:选Everything(这个非常重要,这样才能看到你的物体)。
Clear Flags: 选Skybox。

6. 通过NGUI创建一个Texture对象当作背景图片,这一步非常重要!之前博主在这边卡了好长时间。只有在UI Root下并且是NGUI的对象才能应用到UI Root的Scaling Style功能!(当然,应该还有博主没摸清的地方。)

7. 好了,检查下Game视图,看看是不是生效了呢:)下面放几张有代表性的图。
注意:以后添加的所有对象都应该在UI Root下,这样才能跟着背景图片等比例缩放!
分辨率:1280*800(16:10),上下填充黑边。

分辨率:1920*1080(16:9),完美填充,无黑边!

分辨率:800*400(2:1),左右填充黑边。

Unity3D手机平台分辨率自动匹配教程的更多相关文章
- 移动端页面按手机屏幕分辨率自动缩放的js
<script> var phoneWidth = parseInt(window.screen.width); var phoneHeight = parseInt(window.scr ...
- Unity3D Android手机屏幕分辨率问题
Android手机屏幕分辨率五花八门,导致开发时不好把握,还好各个引擎对这个屏幕分辨率问题都有较好的处理方式:unity3D 也为我们提供了一个不错的解决方案. 在Unity3D 进行 android ...
- 自己动手开发手机APP控制西门子200smart 教程(原创干货)
自己动手开发手机APP控制西门子200smart 教程(原创干货) 自己动手开发手机APP控制西门子200smart 教程(原创干货) 2020-02-09 19:06:45 自己动手开发手机AP ...
- (转)火溶CEO王伟峰:Unity3D手机网游开发
今天看到这篇文章,感觉很不错,尤其是那句“Unity3D的坑我觉得最严重的坑就是没有懂3D的程序员,把Unity当成Office用”. 转自http://blog.csdn.net/wwwang891 ...
- NeuChar 平台使用及开发教程(五):使用 NeuChar 的关键字回复服务
在上一篇<NeuChar 平台使用及开发教程(四):使用 NeuChar 的素材服务>中,我们已经完成了素材的添加,下面,让我们来设置一个关键字回复,并同步到应设置好Neural Endi ...
- Unity3D手机游戏开发
<Unity3D手机游戏开发> 基本信息 作者: 金玺曾 出版社:清华大学出版社 ISBN:9787302325550 上架时间:2013-8-7 出版日期:2013 年8月 开本:16开 ...
- 根据判断PC浏览器类型和手机屏幕像素自动调用不同CSS的代码
1.媒体查询方法在 css 里面这样写 -------------------- @media screen and (min-width: 320px) and (max-width: 480px) ...
- android手机和ios手机的分辨率
Android手机目前常见的分辨率 1.1 手机常见分辨率: 4:3 VGA 640*480 (Video Graphics Array) QVGA 320*240 (Quarter VGA ...
- Unity手机平台播放影片
播放视频方法 截止到目前的Unity4.2版本,要在手机平台上播放影片,有两种方法: 使用Unity自带的Move Texture http://docs.unity3d.com/Documentat ...
随机推荐
- [elk]停电日志离线恢复故障处理-elk环境极速搭建
es数据手动导入 周末停电了两天,发现两天的日志没导入: 原因: 1. elk开启没设启动 2.日志入库时间是当前时间,不是日志本身的time字段 - 导入步骤 1. 先把日志拖下来 2. 事先需要干 ...
- C# FUNC 应用
using System; using System.Collections.Generic; using System.Linq; using System.Text; namespace Func ...
- 基于jquery的邮箱输入联想插件开发
js代码: /*create by code_bunny 20140701 973295131@qq.com https://github.com/OOP-Code-Bunny */ (functio ...
- Oracle数据库字符集问题解析
Oracle数据库字符集问题解析 经常看到一些朋友问ORACLE字符集方面的问题,我想以迭代的方式来介绍一下.第一次迭代:掌握字符集方面的基本概念.有些朋友可能会认为这是多此一举,但实际上正是由于对相 ...
- java timer timertask mark
其实就Timer来讲就是一个调度器,而TimerTask呢只是一个实现了run方法的一个类,而具体的TimerTask需要由你自己来实现,例如这样: 1 2 3 4 5 6 Timer timer = ...
- JavaScript高级 面向对象(2)--调试工具的使用:音乐循环播放
说明(2017.3.29): 1. 在调试工具console里输入var v = document.createElement("audio"),然后再source的watch里输 ...
- iOS Reachability检测网络状态
一.整体介绍 前面已经介绍了网络访问的NSURLSession.NSURLConnection,还有网页加载有关的webview,基本满足通常的网络相关的开发.其实在网络开发中还有比较常用的就是网络状 ...
- C++ test的使用
http://www.parasoft.com/jsp/trial_request.jsp?itemId=303 去下载,原来是个商业的测试软件,还要去购买,这个成本太大了.. http://down ...
- Clipboard获取内容C#
一.获取文本 textBox1.Text = Clipboard.GetData("Text").ToString(); 二.获取图像 pictureBo ...
- java clone对象
本文转载至 http://blog.csdn.net/shootyou/article/details/3945221 现在Clone已经不是一个新鲜词语了,伴随着“多莉”的产生这个词语确实很“火”过 ...