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

Color与Linear Color

简单来说Color是给“人眼”看的颜色而Linear Color是给“电脑引擎”算的纯粹数据。在虚幻引擎以及所有现代 3D 渲染引擎中区分这两者是非常核心的图形学概念。下面是它们具体的区别1. Color (sRGB 空间) —— 用于“视觉色彩”我们在电脑屏幕上看到的图片或者从网上下载的照片绝大多数都是位于 sRGB 色彩空间的。为什么要这样做因为人眼的生理结构对“暗部”的细节变化极其敏感而对“亮部”的变化不那么敏感。为了节省存储空间图片在保存时会偷偷把暗部的数据“提亮”这个过程叫 Gamma 校正。这样显示器在显示时再压暗正好符合人眼的观感。特点数值不是线性的。比如一张图里 0.5 的中灰色在物理光子数量上并不是 0 和 1 的绝对中间值。使用场景任何直接决定物体表面颜色的贴图。例如漫反射贴图Base Color、自发光贴图Emissive。2. Linear Color (线性空间) —— 用于“数学数据”顾名思义Linear线性意味着它是一根笔直的直线。没有经过任何 Gamma 校正数值是多少就是多少。特点0.5 就是绝对的 50%0.2 就是绝对的 20%。它代表的是纯粹的物理量或数学权重。使用场景任何不代表“颜色”而是代表物体物理属性或数学遮罩的贴图。例如粗糙度Roughness、金属度Metallic、法线贴图Normal、以及你刚才用到的噪波图/扭曲图Noise / Mask。 为什么你刚才选错会报错核心原因如果你把一张用来提供纯粹数学数据的噪波图比如你想让水面扭曲 50%所以画了 0.5 的灰度放到了普通的Color采样器里引擎会怎么想引擎会认为“哦这是一张给人眼看的普通颜色图。由于 Gamma 校正的原理我需要把它的数值转换回真实的物理线性空间再做计算。”引擎会在后台默默做一次数学运算将你的数值求大约 2.2 次方$Output Input^{2.2}$。你的噪波图明明是 0.5 的灰度。引擎把它当Color读取后变成了$0.5^{2.2} \approx 0.218$。结果就是你的数据完全被“压暗”和扭曲了原本你想扭曲 50% 的力度结果只剩下了不到 22% 的力度。这就是为什么引擎强制要求你“既然这是数据图请老老实实选 Linear Color别让我对它做多余的 Gamma 颜色计算。”直观地感受一下同一个像素值被引擎当作Linear Color和当作普通Color读取时最终拿到的数据偏差有多大在虚幻引擎中贴图分为两类看“颜色”的图比如砖块、木头的彩色基础贴图Base Color。它们通常开启了 sRGB伽马校正在材质里对应的采样器必须是Color。读“数据”的图比如你用的噪波图Noise、粗糙度遮罩、金属度遮罩等。这些图纯粹是为了给引擎提供 0 到 1 的数学数据不需要进行颜色的视觉校正因此它们通常会关闭 sRGB处于线性色彩空间。对于这种图材质采样器就必须对应设置为Linear Color。
http://www.zskr.cn/news/1376171.html

相关文章:

  • 【Rust 开发者们,工具链管理终于可以这么丝滑了!—— rust-verse(Rust Manager)最新版深度体验分享】
  • 【理论】Harness Engineering:从 Anthropic 的 4 小时 DAW 实验到 AI 原生开发的新范式
  • 最新企业级AI编程工具权威推荐,团队研发效率提升必看
  • MPC5604B/C CAN Sampler 和 FlexCAN 全解
  • 别再只盯着DAVIS数据集了!手把手教你用Python复现Space-Time Memory Networks(附代码)
  • 浔川代码编辑器 v4.1.0 正式版重磅上线!AI 加持,轻量高效,开箱即用
  • 企业微信官方API不够用时,还有别的实现方式吗?
  • 工业异常检测实战:从多模态数据集构建到AI模型评估全解析
  • HMAC-SHA256签名机制实战:构建前后端可信API通信链
  • 共线性下变量重要性评估:LOCO与t统计量的理论桥梁与实践指南
  • 数据驱动负载减载:应对电力系统网络攻击的智能稳定控制
  • 【Verilog代码规范引起的国产安路编译器不能识别寄存器】
  • common lisp 张量,矩阵计算库介绍
  • git--github
  • 从NCM格式束缚到MP3音乐自由:3步解锁你的网易云音乐收藏
  • PHP无参RCE
  • 苏州相城区宠物基地口碑推荐榜单一览 - 品牌排行榜
  • 智慧树自动刷课插件:3步安装指南,彻底解放学习时间
  • 3分钟快速修复:洛雪音乐六音音源终极解决方案
  • ARM ETE协议异常处理与指令追踪技术解析
  • 增强采样与力匹配结合:高效构建高精度粗粒化分子动力学模型
  • 从人工标注到模型上线:一个多月搞定裂缝检测数据集的实战复盘(含YOLO/VOC格式)
  • 原码、反码、补码:概念解析与记忆方法
  • 我用 GPT-5.5 跑了一周行政工作:会议纪要、邮件整理,到底能省多少时间?
  • 3.RAG
  • 引力波透镜探测:参数偏移与似然比检验的统计框架与应用
  • 从CentOS迁移到openEuler?手把手教你在vSphere ESXi 7.0上搭建测试环境
  • 用信息架构拆解豪芬车载香薰官网
  • 2026年学习Java还有前景吗?如何看待2026Java程序员就业难现状?
  • 机器学习优化活性粒子信息引擎:突破热力学极限的非平衡控制