U3D 从NGUI进阶到UGUI扩展学习1 - Canvas

Canvas

Render Mode - UGUI不像NGUI,它没有UI摄像机。但有时候需要做相机动画就要调出来。

在Canvas里设置第二个选项即可调出。

Pixel Perferct - 这个似乎是可以得到更好的像素显示但牺牲宽度高度,就是以前对齐的UI,现在显示效果更好但对不齐。NGUI里UI如果有小数点会模糊,我不知道和这个有没有关,但我在Unity试了,有小数点和没小数点都一样。和开不开这个选项没关系

论坛了看下,官方是这么说的:(LINK)

Hi,

I just investigated your bug with Runes help. And we have bad news and good news. 

Let‘s start with the bad one: What you describe is by design.
When pixel snapping elements that don‘t have a integer sizes, you have two options, either you guaranteed that their sizes will be constant, but the spacing between elements can vary, or you guarantee that their sizes can vary but the spacing between elements will remain constant.
We have chosen to make the spacing constant, this guarantees for instance that if you put two elements besides each other without a gap, if you move or resize them, there will be no gap between them.

Now let‘s go to the good news: There is a simple workaround you can use to make sure your elements do not resize while moving.
Instead of moving the element directly, create an empty GameObject and make it the elements parent, and use the parent to move it instead. This should fix your issues.

Hope this helps

Canvas Scaler

这个和NGUI差不多,其实是设置宽高比。这里摘自某位朋友博客

Constant Pixel Size:保持UI元素大小不变,无论屏幕尺寸如何变化。

Scale Factor:保持大小的比例 。原图100x100    原始大小1=100x100  原来的2倍大 2=200x200

Reference Pixels Per Unity  100   Unity里的1单位大小代表100像素

Scale With Screen Size:UI元素大小跟随屏幕分辨率的大小变化而变化。

Reference Resolution:参考分辨率,该分辨率越大,Canvas Scale越小。

Screen Match Mode:

Match Width Or Height:根据参考分辨率的高或宽,来缩放UI元素。

Expland:分辨率设置不会小于Canvas设置的分辨率。

Shrink:分辨率不会大于Canvas设置的分辨率。

Match:  Width缩放参考Width。 此时拉伸Reference Resolution Y是无效的。

Constant Physical Size:UI元素保持 Physical Size,无论屏幕大小如何变化。

Physical Unit:物理单位

Fallback Screen DPI:

Default Sprite DPI:

时间: 2024-10-26 10:18:32

U3D 从NGUI进阶到UGUI扩展学习1 - Canvas的相关文章

《PHP扩展学习系列》系列技术文章整理收藏

<PHP扩展学习系列>系列技术文章整理收藏 1PHP扩展之文本处理(二)--PCRE正则表达式语法10--后向引用http://www.lai18.com/content/321526.html 2PHP扩展之文本处理(二)--PCRE正则表达式语法9--重复/量词http://www.lai18.com/content/321525.html 3PHP扩展之文本处理(二)--PCRE正则表达式语法11--断言http://www.lai18.com/content/321527.html 4

html5学习(一)--canvas画时钟

利用空余时间学习一下html5. 1 <!doctype html> 2 <html> 3 <head></head> 4 <body> 5 <canvas id="clock" width="500" height="500"></canvas> 6 <script> 7 var clock=document.getElementById('cloc

【猪猪-前端】微信打飞机高质量Demo,学习HTML5+Canvas技术编写,下载即可使用,注释齐全。

原文:[猪猪-前端]微信打飞机高质量Demo,学习HTML5+Canvas技术编写,下载即可使用,注释齐全. 源代码下载地址:http://www.zuidaima.com/share/1553027668610048.htm //获取绘图环境 02 var canvas=document.getElementById('canvas'); 03 var context=canvas.getContext('2d'); 04   05   06 //创建对象集合 (集合所有精灵) 07 var 

学习HTML5 canvas遇到的问题

学习HTML5 canvas遇到的问题 1. 非零环绕原则(nonzZero rule) 非零环绕原则是canvas在进行填充的时候是否要进行填充的判断依据. 在判断填充的区域拉一条线出来,拉到图形的外面,这条拉出来的线就是辅助线.判断绘制的线是否是从辅助线的左边穿过到辅助线的右边,此时这种穿过的方式记录为+1;如果是从辅助线的右边穿到辅助线的左边,就记做-1.最后将所有记录的数字进行求和,如果求和的结果为0,代表这块区域不要填充,否则,必须填充 上面的原理较难理解,可以这样理解,当在大矩形中绘

转载《学习HTML5 canvas遇到的问题》

学习HTML5 canvas遇到的问题 1. 非零环绕原则(nonzZero rule) 非零环绕原则是canvas在进行填充的时候是否要进行填充的判断依据. 在判断填充的区域拉一条线出来,拉到图形的外面,这条拉出来的线就是辅助线.判断绘制的线是否是从辅助线的左边穿过到辅助线的右边,此时这种穿过的方式记录为+1;如果是从辅助线的右边穿到辅助线的左边,就记做-1.最后将所有记录的数字进行求和,如果求和的结果为0,代表这块区域不要填充,否则,必须填充 上面的原理较难理解,可以这样理解,当在大矩形中绘

Android_2D绘图的学习Paint,Canvas(二)

前言 上一节,学会了Paint,Canvas的基本用法后,这一节,学习Paint的高级用法.还没看过上一节的请点击这里:Android_2D绘图的学习Paint,Canvas(一). 一,文字的绘制 在做UI的时候,常常会绘制文字,Canvas绘制文字时,主要考虑到字体的宽度和高度问题.字体的宽度比较好理解,这里我们主要考虑一下字体的高度. 先看一张图,网上搜的: 这里说明了在安卓中绘制字体时对于高度的划分:top,ascent,baseLine,descent,bottom.有点类似我们刚开始

Android_2D绘图的学习Paint,Canvas(三)

前言 上一节,学习了Paint的高级用法后,这一节我们将canvas的用法.主要涉及到canvas的绘制坐标变换translate,rotate.还没看过上一节的请点击这里:Android_2D绘图的学习Paint,Canvas(二). 一,translate translate在很多语言的图像处理中都存在,意思是平移,在canvas中,他表示平移坐标原点.比如说,你要在一个View的中心点画一个半径为r圆.你可以这样直接画:canvas.drawCircle(getWidth()/2,getH

UGUI初学习--------Canvas

今天仔细研究了一下UGUI觉得有必要写一篇文章来分享一下.废话不多说直接开码字..... 作者之前也学过NGUI.这里来说明一下,UGUI和NGUI的渲染结构略有不同,UGUI中将NGUI中的深度处理项取消了.UGUI的渲染是按照Hierarchy的UI游戏对象的排列顺序从上到下依次渲染的,重叠部分后渲染的会把先渲染的挡住.总结一句话:下在上前,子在父前.为了修改各个UI控件的绘制顺序,开发者可以采用以下两种方法:拖动Hierarchy视图里的各UI控件对象,改变它们在Canvas下的排列顺序:

DOM扩展学习笔记

对DOM的两个主要扩展是Selectors API(选择符API)和HTML5,还有一个不太瞩目的Element Traversal元素遍历规范为DOM添加了一些属性,另外还有一些专有扩展. 选择符API 元素遍历 HTML5 专有扩展 选择符API 让浏览器原生支持css查询,原理就是所有实现这一功能的JavaScript库都会写一个基础的CSS解析器,然后再使用已有的DOM方法查询文档并找到匹配的节点.当把这个功能变成原生API后,解析和树查询操作可以在浏览器内部通过编译后的代码来完成,极大