Unity中颜色空间Gamma与Linear

news2024/12/24 11:32:44

文章目录

  • 前言
  • 一、人眼对光照的自适应
    • 1、光照强度与人眼所见的关系
    • 2、巧合的是,早期的电子脉冲显示屏也符合这条曲线
    • 3、这两条曲线都巧合的符合 y = x^2.2^(Gamma2.2空间)
  • 二、Gamma矫正
    • 1、没矫正前,人眼看电子脉冲显示屏,看见的颜色会更暗
    • 2、所以有了Gamma矫正,让人眼看显示屏的效果和看现实一样
  • 三、Unity中的Gamma空间
  • 四、Unity中的Linear空间


前言

Unity中颜色空间Gamma与Linear


一、人眼对光照的自适应

1、光照强度与人眼所见的关系

在下图中,先打开一盏灯,再打开一盏灯,光照强度在现实中应该是增加两倍,但是我们眼睛看见的却只是变亮了一点。

在这里插入图片描述

人眼看见的亮度,会呈现一个下凹曲线,不会与实际亮度值相同

在这里插入图片描述

2、巧合的是,早期的电子脉冲显示屏也符合这条曲线

在这里插入图片描述

达到屏幕的电子脉冲是线性的,但是屏幕显示的却和人眼一样呈现下凹
在这里插入图片描述

3、这两条曲线都巧合的符合 y = x2.2(Gamma2.2空间)

在这里插入图片描述


二、Gamma矫正

1、没矫正前,人眼看电子脉冲显示屏,看见的颜色会更暗

  • y2 = y2.2 = (x2.2)2.2
    在这里插入图片描述

2、所以有了Gamma矫正,让人眼看显示屏的效果和看现实一样

在这里插入图片描述

  • 矫正使用的是 y = x0.45

我们在Unity纹理中,看见的 sRGB 就是Gamma0.45所在的空间

在这里插入图片描述


三、Unity中的Gamma空间

在这里插入图片描述

在这里插入图片描述

  • 在Gamma空间下,原始贴图不管是不是sRGB。在存储时,统一认为sRGB
  • 在该贴图进入Shader着色器后,没有进行颜色修正,导致采样的结果是存在误差的
  • 所以,Gamma空间下看见的颜色会 过亮 或 过曝

在Gamma空间下,是不是sRGB都是一个色
在这里插入图片描述


四、Unity中的Linear空间

在这里插入图片描述

在这里插入图片描述

  • 在Linear空间下,作为颜色贴图的纹理需要勾选 sRGB,这样才会开启移除Gamma矫正
  • 在Linear空间下,作为控制数值的纹理不需要勾选 sRGB,这样采样的值才会和原本的一样
  • Linear空间与Gamma空间,不同在 进入Shader前的移除Gamma矫正 和 Shader输出后的Gamma矫正,这样可以消除Shader采样时的误差

不勾选sRGB的话,最后输出的颜色就会过亮
在这里插入图片描述
在Linear空间下
勾选sRGB:
在这里插入图片描述
不勾选sRGB:
在这里插入图片描述

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1241678.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

数据结构与算法编程题13

设计算法将一个带头结点的单链表A分解为两个具有相同结构的链表B、C,其中B表的结点为A表中值小于零的结点,而C表的结点为A表中值大于零的结点(链表A中的元素为非零整数,要求B、C表利用A表的结点) for example: A -1 2 …

使用C语言统计一个字符串中每个字母出现的次数

每日一言 Wishing is not enough; we must do. 光是许愿望是不够的; 我们必须行动。 题目 输入一个字符串,统计在该字符串中每个字母出现的次数 例如: 输入:i am a student 输出:a:2 d:1 e:1 i:1 m:1 n:1 s:1 t:2 u:1 大体思路…

第十一章 docker swarm集群部署

文章目录 前言一、安装docker1.1 解压1.2 配置docker 存储目录和dns1.3 添加docker.service文件1.4 docker 启动验证 二、docker swarm 集群配置2.1 关闭selinux2.2 设置主机名称并加入/etc/hosts2.3 修改各个服务器名称(uname -a 进行验证)2.4 初始化sw…

【Flask使用】全知识md文档,4大部分60页第3篇:Flask模板使用和案例

本文的主要内容:flask视图&路由、虚拟环境安装、路由各种定义、状态保持、cookie、session、模板基本使用、过滤器&自定义过滤器、模板代码复用:宏、继承/包含、模板中特有变量和函数、Flask-WTF 表单、CSRF、数据库操作、ORM、Flask-SQLAlchemy…

高通OTA升级方案介绍

高通OTA升级方案介绍 1. 高通LE OTA1.1 背景1.2 Recovery系统 2. SDX12 OTA方案3 OTA包的加密 3UK Penetration Test对于OTA升级也有严格的安全要求,下面是几条用例要求: Firmware: A sufficiently strong signing key MUST be in use. Signing keys MUS…

重要的保护: DC电源模块短路保护

重要的保护:BOSHIDA DC电源模块短路保护 DC电源模块是实验室和工业中非常常见的电源,它能够提供稳定的电压和电流输出,以满足各种设备和电路的需求。然而,如果DC电源模块没有短路保护,它可能会对所连接的仪器和设备造…

python-opencv划痕检测

python-opencv划痕检测 这次实验,我们将对如下图片进行划痕检测,其实这个比较有难度,因为清晰度太差了。 我们做法如下: (1)读取图像为灰度图像,进行自适应直方图均衡化处理,增强图…

任意文件下载漏洞(CVE-2021-44983)

简介 CVE-2021-44983是Taocms内容管理系统中的一个安全漏洞,可以追溯到版本3.0.1。该漏洞主要源于在登录后台后,文件管理栏存在任意文件下载漏洞。简言之,这个漏洞可能让攻击者通过特定的请求下载系统中的任意文件,包括但不限于敏…

SAP LU04记账更改通知单创建转储单报错:L3094 记帐修改没有份存在

解决办法: 使用事务码LU02,修改过账更改状态,将过账更改状态改为U,强制关闭 1. LU04 查找记账更改通知单号 2. 事务码LU02修改状态 这个时候再用LU04去查看的时候,就不会再显示了

一个ETL流程搞定数据脱敏

数据脱敏是什么? 数据脱敏是指在数据处理过程中,通过一系列的技术手段去除或者替换敏感信息,以保护个人隐私和敏感信息的安全的过程。数据脱敏通常在数据共享、数据分析和软件测试等场景下使用,它旨在降低数据泄露和滥用的风险。…

redis运维(十三) hash哈希

一 哈希 ① 定义 hash: 散列说明:key对应是值是键值对[python中的字典],其中键在redis中叫field.形如:value[{field1,value1},...{fieldN,valueN}],值本身又是一种键值对结构 ② 优点和缺点 wzj_height 180wzj_age 18等价 -->…

PC端页面进去先出现加载效果

自定义指令v-loading&#xff0c;只需要绑定Boolean即可 v-loading“loading” <el-table :data"list" border style"width: 100%" v-loading"loading"><el-table-column align"center" label"序号" width"5…

Talk | UCSB博士生宋珍巧:基于人工智能的功能性蛋白质设计

本期为TechBeat人工智能社区第549期线上Talk。 北京时间11月22日(周三)20:00&#xff0c;UC Santa Barbara博士生—宋珍巧的Talk已准时在TechBeat人工智能社区开播&#xff01; 她与大家分享的主题是: “基于人工智能的功能性蛋白质设计”&#xff0c;介绍了如何利用机器学习算…

Course1-Week1:机器学习简介

Course1-Week1&#xff1a;机器学习简介 文章目录 Course1-Week1&#xff1a;机器学习简介1. 课程简介1.1 课程大纲1.2 Optional Lab的使用 (Jupyter Notebooks)1.3 欢迎参加《机器学习》课程 2. 机器学习简介2.1 机器学习定义2.2 有监督学习2.3 无监督学习 3. 线性回归模型3.1…

ssm+vue的物资物流系统的设计与实现(有报告)。Javaee项目,ssm vue前后端分离项目。

演示视频&#xff1a; ssmvue的物资物流系统的设计与实现&#xff08;有报告&#xff09;。Javaee项目&#xff0c;ssm vue前后端分离项目。 项目介绍&#xff1a; 采用M&#xff08;model&#xff09;V&#xff08;view&#xff09;C&#xff08;controller&#xff09;三层体…

SSM人事请假签到管理系统开发mysql数据库web结构java编程计算机网页源码eclipse项目

一、源码特点 SSM人事请假签到管理系统是一套完善的完整人事请假薪酬加班管理&#xff0c;结合SSM框架完成本系统&#xff0c;对理解JSP java编程开发语言有帮助系统采用SSM框架&#xff08;MVC模式开发&#xff09;&#xff0c;系统具有完整的源代码和数据库&#xff0c;系统…

巫溪家和计划——“平安快乐幸福家”宣传活动

8月&#xff0c;在重庆市婚姻收养登记管理中心的指导下&#xff0c;巫溪县民政局婚姻登记处、巫溪县同心社会工作服务中心在通城镇夏布坪海棠园会议室开展了“家和童行过暑假&#xff0c;平安快乐幸福家”安全教育活动&#xff0c;围绕防溺水安全、交通安全、消防安全、防拐怪防…

Linux中df命令使用

在Linux中&#xff0c;df命令用于显示磁盘空间的使用情况。它的基本语法如下&#xff1a; df [选项] [文件或目录]这个命令可以用来查看当前系统上各个磁盘分区的使用情况。如果没有指定文件或目录&#xff0c;则所有当前被挂载的文件系统的可用空间将被显示。 df命令的一些常…

促进材料基因工程基础理论、前沿技术和关键装备的发展和应用,第七届材料基因工程高层论坛将于12月重庆举办,龙讯旷腾出席会议

为了进一步促进材料基因工程基础理论、前沿技术和关键装备的发展和应用&#xff0c;加强国际交流&#xff0c;加速我国新材料的研发和应用&#xff0c;由中国材料研究学会、西部科学城重庆高新区管理委员会主办&#xff0c;重庆大学、北京科技大学、北京云智材料大数据研究院等…

SAP 锁机制及创建与使用介绍

一、SAP为什么要设置锁&#xff1a; 1&#xff0c;保持数据的一致性 如果几个用户要访问同样的资源&#xff0c;需要找到一种同步访问的方法去保持数据的一致性。比如说&#xff0c;在航班预订系统中&#xff0c;需要检查还有没有空座位&#xff0c;当检查的时候&#xff0c;你…