unity中全屏背景图缩放

 1 using UnityEngine;
 2 using System.Collections;
 3
 4 public class BgPicScript : MonoBehaviour {
 5
 6     // Use this for initialization
 7     public UITexture bg;
 8     void Start () {
 9
10         Debug.Log("device宽高: " + Screen.width + "_" + Screen.height);
11
12         UIRoot root = GameObject.FindObjectOfType<UIRoot>();
13
14         if (root != null)
15         {
16             //终极大杀器 整体资源缩放比例
17             float s = (float)root.activeHeight / Screen.height;
18             int height =  Mathf.CeilToInt(Screen.height * s);
19             int width = Mathf.CeilToInt(Screen.width * s);
20
21             Debug.Log("按设计分辨率屏幕width = " + width + "_height = " + height);
22
23             Debug.Log("背景图片的设计分辨率bgWIdth:" + bg.width + "_bgHeight:" + bg.height);
24
25             float bgRatio = (float) bg.width / bg.height;
26             float manualRatio = (float)width / height;
27
28
29             if (bgRatio < manualRatio) //遇到按照屏幕高度缩放水平两边出现黑边的情况,要按照宽度来缩放背景图片
30             {
31                 //bg.width = width;
32                 //bg.height = Mathf.CeilToInt(width / );
33
34                 float targetScale = (float)width / bg.width;
35                 bg.transform.localScale = new Vector3(targetScale,targetScale, 1);
36             }
37         }
38
39
40     }
41
42     // Update is called once per frame
43     void Update () {
44
45     }
46 }
47
48
49
50 using UnityEngine;
51 using System.Collections;
52
53 public class UIRootScript : MonoBehaviour {
54
55     // Use this for initialization
56     void Start () {
57         AdaptiveUI();
58     }
59
60     // Update is called once per frame
61     void Update () {
62
63     }
64
65     static private void AdaptiveUI()
66     {
67         int ManualWidth = 1024;
68         int ManualHeight = 768;
69         UIRoot uiRoot = GameObject.FindObjectOfType<UIRoot>();
70         if (uiRoot != null)
71         {
72             if (System.Convert.ToSingle(Screen.height) / Screen.width > System.Convert.ToSingle(ManualHeight) / ManualWidth)
73                 uiRoot.manualHeight = Mathf.RoundToInt(System.Convert.ToSingle(ManualWidth) / Screen.width * Screen.height);
74             else
75                 uiRoot.manualHeight = ManualHeight;
76         }
77         Debug.Log("uiRoot Height:" + uiRoot.manualHeight);
78     }
79 }
时间: 2024-10-10 17:12:52

unity中全屏背景图缩放的相关文章

CSS之全屏背景图

吐槽啦:Yeah  明天就是国庆了!哈哈,提前祝福各位园友国庆快乐.假期愉快.生活美满.天天开心!国庆我要回家一趟,把一些不用的东西带回家,走访一下亲朋好友,在家打几天酱油~~~ 言归正传,我们回到我们的主题来看看CSS之全屏背景图.Nowdays,满屏大图的网页成为了一种fashion,网页的模板.布局是用CSS.HTML……来设计的,这里就以CSS来聊全拼背景图. 简单点,对于全屏背景图,我们只需用CSS的一个background-size属性就可以了. 当background-size的值

CSS实现响应式全屏背景图

body { /* 加载背景图 */ background-image: url(images/background-photo.jpg); /* 背景图垂直.水平均居中 */ background-position: center center; /* 背景图不平铺 */ background-repeat: no-repeat; /* 当内容高度大于图片高度时,背景图像的位置相对于viewport固定 */ background-attachment: fixed; /* 让背景图基于容器大

css设置全屏背景图,background-size 属性

在写主题样式的时候经常会碰到用背景图铺满整个背景的需求,这里分享下使用方法 需要的效果 图片以背景的形式铺满整个屏幕,不留空白区域 保持图像的纵横比(图片不变形) 图片居中 不出现滚动条 多浏览器支持 以图片bg.jpg为例 最简单,最高效的方法 CSS3.0 归功于css3.0新增的一个属性background-size,可以简单的实现这个效果,这里用fixed和center定位背景图,然后用background-size来使图片铺满,具体css如下 -webkit-background-si

html全屏背景图css写法

<div id="web_bg" style="position:absolute; width:100%; height:100%; z-index:-1"> <img style="position:fixed;" src="www.xxxx.com/images/5.jpg" height="100%" width="100%" /> </div>

Android开发中的全屏背景显示方案

引子 不管是Android还是iOS平台中,都可以看到一些应用在启动的时候会先出现一个启动画面(Splash Activity),如QQ.微信等.这个启动画面中往往会将ActionBar和Status Bar隐藏掉,然后用户进入一种沉浸的状态,形成更强烈的视觉冲击.一方面,这可以给用户留下更深刻的使用体验,从而产生一定品牌效应:另一方面,也给应用的启动初始化留下了充裕的时间,避免因为启动时间过长而给用户留下不良的印象.因此,全屏显示在手机应用中得到了广泛的应用.那么这篇博客中就记录下全屏显示的一

非常精美的jQuery背景动画全屏焦点图(附源码)

1.  jquery背景动画个性全屏焦点图 源码下载  /  在线演示 2. 圣诞快乐礼盒破裂HTML5特效 源码下载 /  在线演示 3. JS+CSS3实现时间日期特效 源码下载/   在线演示 非常精美的jQuery背景动画全屏焦点图(附源码)

全屏背景:15个jQuery插件实现全屏背景图像或媒体

动态网站通常利用背景图像或预加载屏幕,以保证所有资源都加载到页面上,在浏览器中充分呈现.现在很多网站都炫耀自己的图像作为背景图像全屏背景,追溯到旧的Flash网站却用自己的方式在HTML资源重布局. 本综述我们列出15最好的jQuery全屏背景图像的插件,可以帮助你增加你的图像到您的网站,让他们看起来惊人的美丽.这个插件创建一些华丽的背景,幻灯片,你的网站让他们美丽的动画和过渡. 1. MaxImage maximage 2.0是一个全屏背景slideshow utilizes jQuery的插

HTML5全屏背景视频与 CSS 和 JS(插件或库)

译文原链接:http://codetheory.in/html5-fullscreen-background-video/ 前言: 当网页载入时,自动播放的全屏背景视频已经成为当前颇受欢迎的趋势. 就个人而言,我认为自动播放.质量好的视频会增加用户/客户的参与度.应该记住,视频的故事必须与品牌相关. 近年来,我们被FB和Twitter等社交网络上的大量视频所包围. 据研究由此引起了用户更多的参与. 最近我不得不在一个网站上实现相同的功能,因此我决定构建一个用到 HTML5 视频元素并且易于使用的

17种常用的jQuery全屏焦点图代码

jQuery全屏焦点图特效制作带标题的焦点图切换代码 jQuery背景和banner图片一起切换全屏焦点图切换代码 jQuery仿音悦台网站全屏带标题的焦点图轮播代码 jQuery响应式焦点图插件制作响应式全屏焦点图切换代码 jquery html5响应式幻灯片插件网站响应式全屏幻灯片轮播代码 jquery html5步步高vivo官网全屏焦点图片动画效果代码 jquery带左右按钮的全屏焦点图片切换代码 jQuery.skipper全屏响应式图片幻灯片轮播切换代码 modernizr html