[转] NGUI自适应
很多做移动终端开发的童鞋都可能遇到一个问题,就是如何自适应
其实NGUI已经能帮我们实现,下面就告诉大家怎么整这个自适应。
1,create a new ui
2,uiroot下添加uipanel(script)
3,camera的size设置为美术给你的图的size(比如美术给你的是960*640,size=960),
4,panel添加uistretch(script),其中的style设置为both,并将relative size的x和y都设为960(同上的道理,明白?)
5,再在panel下add一个sprite(最好是960*640)的背景图,其中transform的s一定注意要是1,不能再放大了。
以上就ok了
注明下:
uistretch的缩放NGUI提供了5种,
public enum Style
{
None,
Horizontal,
Vertical,
Both,
BasedOnHeight,
BasedOnWidth,
}
我自己加了一种BasedOnWidth,其实代码很简单,如下:
else if(style == Style.BasedOnWidth)
{
localScale.x = relativeSize.x * screenWidth;
localScale.y = relativeSize.y * screenWidth;
localScale.z = localScale.x;
}
是不是很简单?
大功告成,希望对大家有帮助!
补充下,还有种方法比上面要好点。
camera的size设置为1
uistretch的relative的size设置为x=1/960f,y=1/960f
这样你的资源的就不用缩放了
自己实践补充
if (style == Style.BasedOnHeight)
{
//****** NGUI默认处理方式 **********
//localScale.x = relativeSize.x * rectHeight;
//localScale.y = relativeSize.y * rectHeight;
//****** 自己稍做修改结果 发现适用范围更广泛**********
localScale.x = relativeSize.x * rectHeight-relativeSize.x * rectHeight*0.25f;
localScale.y = relativeSize.y * rectHeight-relativeSize.x * rectHeight*0.25f;
}
转载地址:http://game.ceeger.com/forum/read.php?tid=5314
[转] NGUI自适应的更多相关文章
- Unity3D NGUI自适应屏幕分辨率(2014/4/17更新)
原地址:http://blog.csdn.net/asd237241291/article/details/8126619 原创文章如需转载请注明:转载自 脱莫柔Unity3D学习之旅 本文链接地址: ...
- NGUI自适应屏幕分辨率
unity官方承诺的新ui系统一直没有推出来,我们的UI使用的是原生的OnGUI系统,刚好UI需要改版,索性就想迁到NGUI上面来,于是看了一下NGUI源码,发现NGUI可以大大的降低DrawCall ...
- 陷入了一个NGUI自适应的一个坑
自己对anchor的乱用.造成自己深陷anchor来搞自适应 耽误了太多的精力,最终也是回到正轨的途径 这期间浪费的太多精力了. 沉迷一件错误的事情过久 就 要果断的跳出 调整 . 但凡让自己觉得别扭 ...
- NGUI自适应分辨率,黑边自动填充, 无黑边,等比例缩放
原地址:http://game.ceeger.com/forum/read.php?tid=16571 1,给背景添加一个UIstretch, .将style选择最后一个FitInternalKeep ...
- ngui自适应
增加UIROOT using UnityEngine; namespace Com.Xyz.UI { [ExecuteInEditMode] [RequireComponent(typeof(UIRo ...
- NGUI之UIRoot——屏幕的自适应分辨率的计算
//原来写在其他博客上的东西,搬迁 预备知识: 要明确的三个概念: 设计分辨率:在编辑器上开发UI使用的分辨率.我们所有的UI都是在这个分辨率下设计制作的. 显示区域分辨率:设备上所显示的UI区域在编 ...
- [Unity3D]NGUI用Sprite动画和屏幕自适应做游戏开始场景
我们在玩任何一款手游产品时,都是先上来个logo界面,游戏欢迎界面等,这就意味着我们要做一款游戏需要多个场景,场景之间来回切换实现游戏逻辑,unity也不例外,所以从本篇开始将会介绍如何搭建多个场景, ...
- NGUI屏幕自适应
NGUI确实是非常棒的一个做界面的插件,比起U3D自带的GUI要好很多,当然也有一些不好之处,毕竟什么都不可能那么完美. 最近在用Unity写游戏使用NGUI遇到了一个很多人都在遇到的问题,就是关于屏 ...
- NGUI 屏幕自适应
雨松MOMO 2014年05月04日 于 雨松MOMO程序研究院 发表 现在用unity做项目 90%都是用NGUI,并且我个人觉得NGUI应该算是比较成熟的UI插件,虽然他也存在很多问题,但是至少 ...
随机推荐
- 阿里云扩容数据盘_Linux
扩容数据盘_Linux 更新时间:2018-10-11 15:18:46 · 编辑者 编辑 · ★ 我的收藏 新手学堂 学习路径 本页目录 前提条件 注意事项 步骤 1. 在控制台上扩容数据盘的磁盘空 ...
- linux守护进程编写实践
主要参考:http://colding.bokee.com/5277082.html (实例程序是参考这的) http://wbwk2005.blog.51cto.com/2215231/400260 ...
- 【转】MySQL count(*)速度慢优化
select count(*)是MySQL中用于统计记录行数最常用的方法. count方法可以返回表内精确的行数,每执行一次都会进行一次全表扫描, 以避免由于其他连接进行delete和insert引起 ...
- Linux 下用管道执行 ps aux | grep 进程ID 来获取CPU与内存占用率
#include <stdio.h> #include <unistd.h> int main() { char caStdOutLine[1024]; // ps ...
- MySql避免重复插入记录的几种方法
本文章来给大家提供三种在mysql中避免重复插入记录方法,主要是讲到了ignore,Replace,ON DUPLICATE KEY UPDATE三种方法,有需要的朋友可以参考一下 方案一:使用ign ...
- Spring系列(四):Spring AOP详解和实现方式(xml配置和注解配置)
参考文章:http://www.cnblogs.com/hongwz/p/5764917.html 一.什么是AOP AOP(Aspect Oriented Programming),即面向切面编程, ...
- e742. 加入标签的可拖动能力
This example demonstrates how to modify a label component so that its text can be dragged and droppe ...
- C# ?? 运算符是什么?
?? 运算符定义在将可空类型分配给非可空类型时返回的默认值. int? c = null; //若 c 为 null,则 d 为 -1,否则把 c 值赋予 dint d = c ?? -1;
- git 在命令行与图形状态下使用详情
http://blog.csdn.net/risky78125/article/details/50850545 http://blog.csdn.net/risky78125/article/det ...
- CI框架 -- 核心文件 之 Exceptions.php
使用CI框架,我们通常使用一下三个函数处理错误: show_error('消息' [, int $status_code = 500 ] ) show_404('页面' [, 'log_error'] ...