当前位置: 首页 > news >正文

URP 线性空间 ui资源制作规范

前言:

关于颜色空间的介绍,可参阅 unity 文档 Color space

URP实现了基于物理的渲染,为了保证光照计算的准确,需要使用线性空间;

使用线性空间会带来一个问题,ui资源在unity中进行透明度混合时,与PS中的效果不一致;

原理:

        使用线性空间时,伽马空间制作的贴图在采样时需移除伽马编码转化为线性空间中的值,透明度混合是基于线性值进行的;而在PS中,混合是基于当前的伽马值进行的,因此导致unity中的效果与ps中的不匹配;为了实现PS中的效果与Unity中的匹配,需在PS中需进行相关的设置,以达到使用线性空间中的值进行透明度混合;

制作规范:

PS 编辑 > 颜色设置:

注意,PS的工作空间位于 sRGB 伽马空间中,只是透明度混合时使用伽马值对应的线性值进行混合,以达到和unity相同的计算处理;

顺便一提,如果需要PS工作在线性空间,则需要自定义 RGB工作空间:

(线性空间下灰度系数为1)

图片制作好后,注意保存文件时 是否转化为 sRGB:

由于我们工作空间 RGB 已经设置为 sRGB IEC61966-2.1,保存文件时勾不勾选 sRGB都没有影响,因为已经位于sRGB工作空间;这里需要注意,如果工作空间不是 sRGB,保存文件勾选sRGB的话会转化到sRGB中,使得保存图像的颜色值与在 PS 看到的有些许差别,因此保存文件时就不需要勾选 转化为sRGB,使用原来的色彩空间;

实验时创建3个图层,对应3张png图片:

(红绿蓝颜色值分别为128,不透明度为50%),导出3张png图片到Unity;

Unity贴图设置:

(由于我们的贴图是在伽马空间制作的,需要勾选 sRGB 来转换到线性空间)

使用 UGUI 显示图片结果为:

        (左边ugui显示,右边ps显示,结果是一样的)

对于半透明文本:

        (PS)

        (Unity)

显示颜色也是一样的;

参阅别人的文档时,发现在用灰度系数1混合RGB颜色时,PS合并图层有问题,但是笔者使用的PS2022功能是正常的,应该是PS修复了Bug了吧;

参阅文档:

Unity & PS Linear Workflow - Unity 和 PS 的线性工作流实践 - 简单配置示例

http://www.lryc.cn/news/438507.html

相关文章:

  • 如何精确统计Pytorch模型推理时间
  • Mybatis-plus-Generator 3.5.5 自定义模板支持 (DTO/VO 等) 配置
  • C#环境下MAC地址获取方法解析
  • (k8s)Kubernetes 从0到1容器编排之旅
  • Rust Web开发框架对比:Warp与Actix-web
  • F12抓包12:Performance(性能)前端性能分析
  • 数据结构(Day13)
  • 链表的快速排序(C/C++实现)
  • css总结(记录一下...)
  • SpringBoot 处理 @KafkaListener 消息
  • Spring Boot-API版本控制问题
  • Git 提取和拉取的区别在哪
  • 【数据结构与算法 | 每日一题 | 力扣篇】力扣2390, 2848
  • 破解信息架构实施的密码:常见挑战与最佳解决方案全指南
  • CodeChef Starters 151 (Div.2) A~D
  • Redis学习——数据不一致怎么办?更新缓存失败了又怎么办?
  • 跨境电商代购新纪元:一键解锁全球好物,系统流程全揭秘
  • Mac 上终端使用 MySql 记录
  • 461. 汉明距离
  • 开发指南061-nexus权限管理
  • Qt 弹出菜单右键菜单 QMenu 设置不同颜色的子项
  • Git换行符自动转换参数core.autocrlf的用法
  • C语言的结构体类型
  • illustrator 收集字体插件VBscript
  • 【LLM多模态】文生视频评测基准VBench
  • 通过覆写 url_for 将 flask 应用部署到子目录下
  • 攻防世界---->埃尔隆德32
  • redis短信登录模型
  • 【React】React18.2.0核心源码解读
  • 深度学习-目标检测(四)-Faster R-CNN