美文网首页
UGUI中的粒子特效如何与屏幕适配

UGUI中的粒子特效如何与屏幕适配

作者: silekey | 来源:发表于2020-01-22 17:20 被阅读0次

该文解决如下问题

  • 美术特效在制作UI特效的时候无法保证在运行中的效果
  • 在不同屏幕分辨率下ui 特效与UI不匹配
  • 特效需要直接挂载到ui上

解决方案

  • 在粒子特效创建时修改缩放
  • 在游戏启动时修改 Camera 的 size 属性

对比两个方案明显修改Camera 属性更简单, 并且对性能没有影响

规则

规定UI运行的基础环境

  • 游戏是横板游戏
  • 定义一个基础分辨率 比如1136x640
  • 定义基础像素与Unity 单位的转换 (默认是100)
  • Canvas Render Mode 为Screen Space
  • Canvas Scaler 为 Scale Width Screen Size
  • Canvas Match With Or Height值为0 , (尽量匹配屏幕宽度, 高度自适应)
  • UI 摄像机为 Orghographic.
  • UI摄像机的基础Size = 640 / 100 / 2 = 3.2

在游戏启动时动态修改

float defaultRadio = 1136f/ 640f; // 获得默认的宽高比例
float defaultSize = 640f / 100 / 2;
float radio = (float)Screen.width / (float)Screen.height;
float scale = radio >= defaultRadio ? 1 : defaultRadio / radio;
float cameraSize = defaultSize  * scale;
GetUICam().size = cameraSize;

背后机制

在正交摄像机中size 的含义是从屏幕中心到屏幕顶部之间的距离,而这个距离
是以1个Unity单位来定的,一般我们可以理解为(米),其中一个单位可以
以一个Unity Cude 的默认宽高来确定,比如下面:


property.png screen.png

题外话

那我如果ui 想用 透视投影该怎么弄?
首先是计算高度 height = distance * tan(fov/2)

根据实际项目, 我把问题限制在如何在

适配方案是通过屏幕分辨率动态调整Camera 中的Size 以达到UI 与特效匹配的效果.

流程如下:
1> 首先定义

相关知识点:
什么是Pixels Per Unit?
正交相机中的Size 是什么含义?
Canvas Scaler 中的Scale Width Scene Size 会如何影响到UI特效的播放?

适配中的难题是:
UGUI 会根据屏幕改变, 特效也是. 而UGUI 中使用的是像素单位.

相关文章

  • UGUI中的粒子特效如何与屏幕适配

    该文解决如下问题 美术特效在制作UI特效的时候无法保证在运行中的效果 在不同屏幕分辨率下ui 特效与UI不匹配 特...

  • UGUI粒子特效层级

    昨天,在做一个功能,结算功能,其中特效用到了粒子+Animation。 很尴尬的是特效被其他界面挡住了。 当然此时...

  • UGUI基础:屏幕适配

    屏幕适配只是相对于UI而言的。 1、Canvas选择一定的分辨率,比如手机横屏通常选择1344*750。2、UI ...

  • NGUI与UGUI的区别

    总结: 1、NGUI与UGUI的区别 2、uGUI的Canvas 有世界坐标和屏幕坐标 3、uGUI的Image可...

  • Unity-uGUI与NGUI

    一、 uGUI与NGUI的区别 1、uGUI的Canvas 有世界坐标和屏幕坐标。 2、uGUI的Image可以使...

  • ugui权重适配手机屏幕

    需求: 1、场景底部UI包含3个按钮;2、3个按钮宽度相同,并能自适应各种尺寸的手机屏幕;3、容器与按钮之间有pa...

  • iOS中粒子发射(封装下雨,下雪,喷火等特效)

    在iOS中实现粒子特效,有对应的的属性CAEmitterLayer,它是Layer的子类,用它来实现粒子特效不会怎...

  • NGUI与UGUI的优缺点

    1. NGUI与UGUI的区别 uGUI的Canvas 有世界坐标和屏幕坐标 uGUI的Image可以使用mate...

  • 屏幕适配

    屏幕适配 本章节主要还是说明如何让应用程序能够适配在苹果不同的屏幕和如何让应用中的内容在不同的屏幕下能够正常的放置...

  • unity相关

    1.粒子系统 介绍:Unity基础:粒子效果面板 - XTStarry的博客 - CSDN博客 粒子特效与UI的遮...

网友评论

      本文标题:UGUI中的粒子特效如何与屏幕适配

      本文链接:https://www.haomeiwen.com/subject/retezctx.html