Unity3D Linear和Gamma渲染

原创 2017年08月17日 11:31:37

笔者介绍:姜雪伟,IT公司技术合伙人,IT高级讲师,CSDN社区专家,特邀编辑,畅销书作者,已出版书籍:《手把手教你架构3D游戏引擎》电子工业出版社和《Unity3D实战核心技术详解》电子工业出版社,《Cocos2d-x 3.x图形学渲染技术讲解》电子工业出版社等。

CSDN视频网址:http://edu.csdn.net/lecturer/144

最近项目开发中在渲染3D模型时,遇到了Linear和Gamma两种不同的设置出现不同的效果问题,查阅了一下Unity官方blog,看到目前在Unity5.5新增加了linear Rendering 同时支持Android和IOS,但是它使用的OpenGLES3.0,而现在大部分Android手机只支持OpenGLES2.0。所以只能选择Gamma。二者在效果是不同的:

通过上图可以看出,由于线性和伽玛渲染之间的主要差异,这意味着使用线性渲染的游戏不能在仅支持OpenGL ES 2.0的Android和iOS设备上运行。

由此我们可以得出结论:使用Unity 5.5,Android和iOS上现在可以使用线性渲染。 在Android上,线性渲染需要OpenGL ES 3图形API,占61.1%的Android设备。 在iOS上,线性渲染需要Metal图形API,占71.1%的iOS设备。

此外,Unity 5.3在Windows编辑器中引入了对OpenGL ES图形API的支持,在Windows上使用OpenGL ES进行线性渲染。 GeForce 376.09驱动

程序已经可以使用此功能。

目前,WebGL 2.0不支持Unity中的线性渲染,后面Unity肯定会加上另外,线性渲染和Gamma渲染在Unity中的设置如下所示:

线性渲染代码下载地址:here


版权声明:本文为博主原创文章,未经博主允许不得转载。

Unity - 杂 - 使用Linear还是Gamma

概述线性渲染就是渲染场景所有输入都是线性的。一般来说存在的纹理都是经过Gamma矫正了的,也就是说当纹理被采样到一个材质上时,颜色值已经不是线性的了。如果这些纹理用通常的计算方式去计算光照和图片效果,...
  • radiocat520
  • radiocat520
  • 2016年09月12日 16:58
  • 2641

线性渲染(Linear Rendering)和Gamma Correction

概述线性渲染就是渲染场景所有输入都是线性的。一般来说存在的纹理都是经过Gamma矫正了的,也就是说当纹理被采样到一个材质上时,颜色值已经不是线性的了。如果这些纹理用通常的计算方式去计算光照和图片效果,...
  • k46023
  • k46023
  • 2016年09月09日 17:30
  • 5049

unity默认是错误的gamma space,而不是linear space,原因是什么?

根据unity的manual In the gamma rendering pipeline all colors and textures are sampled in gamma space...
  • liqiang981
  • liqiang981
  • 2016年05月18日 10:54
  • 1180

[Unity3d]总结Gamma Space与Linear Space

这篇文章是gama相关内容的读后总结,看了一些gama的文章画了个图总结一下unity3D中选择不同color space时候的流程。...
  • ngrandmarch
  • ngrandmarch
  • 2015年06月08日 01:36
  • 4574

OpenglES 3.0基础知识

一、Opengles特性 1.对Opengl的简化,比如OGL指定网格数据,可以用立即模式,可以显示列表,和顶点数组;但是Opengl es上只能用顶点数组方式传递几何数据。 2.对Opengl兼容,...
  • Blues1021
  • Blues1021
  • 2017年03月04日 18:14
  • 1647

游戏引擎中三大及时光照渲染方法介绍(以unity3d为例)

重要:在目前市面上常见的游戏引擎中,主要采用以下三种灯光实现方式: 顶点照明渲染路径细节 Vertex Lit Rendering Path Details 正向渲染路径细节 Forwar...
  • damenhanter
  • damenhanter
  • 2015年11月20日 18:29
  • 2142

我的Unity(6)一点一滴 使用线性渲染出现移动路线

这里需要实现的效果,自动导航,沿着轨迹行走,后面出现移动轨迹。 需要组件,一个是NavMeshAgent,一个是LineRenderer组件,//绘制线条的核心代码: ...
  • m_cainiaokuaifei
  • m_cainiaokuaifei
  • 2016年12月07日 23:19
  • 631

Unity3D Linear和Gamma渲染

笔者介绍:姜雪伟,IT公司技术合伙人,IT高级讲师,CSDN社区专家,特邀编辑,畅销书作者,已出版书籍:《手把手教你架构3D游戏引擎》电子工业出版社和《Unity3D实战核心技术详解》电子工业出版社,...
  • jxw167
  • jxw167
  • 2017年08月17日 11:31
  • 762

一定要在线性空间(Linear Space)中做光照计算

啥是Gamma Correction?什么是在线性空间(Linear Space)中做光照计算? 线性空间这玩意已经说烂了,不过再烂也不是生而知之,该学还得学,这里总结一下。 先介...
  • pianpiansq
  • pianpiansq
  • 2017年01月21日 14:09
  • 771

PBR基础知识干货总结(1)

(一)光线 1-光在透明均匀表面沿直线传播。 2-入射光线:射向物体表面的光线。 3-入射角:入射光线与法线夹角为入射角。 光线命中表面后,会发生两件事 反射:入射光线遵从反射定律被反射,反...
  • WangHaoDiablo
  • WangHaoDiablo
  • 2017年04月30日 11:03
  • 298
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:Unity3D Linear和Gamma渲染
举报原因:
原因补充:

(最多只允许输入30个字)