关于unity里色彩空间与光照小记
2016-01-15 14:35
393 查看
gamma校正是因为显示器颜色通常是非线性的,所以要想看到电脑中正常定义的颜色,必须进行伽马校正,
gamma空间就是模拟电视屏幕之类上的(也就是现在通用的)色彩空间,这种色彩空间在直接显示图片的时候效果正常,但如果进行颜色混合,混合的效果就不正确,因为它采用的是非线性采样
sRGB是RGB是一种的一种特定类型,就是一般用的,色彩宽度小
线性混合是正确的混合
gamma混合会导致光混合地方更亮,而产生不正确的颜色(虽然可能艺术效果更好)
线性光照是指照明具有所有线性输入场景的过程。通常纹理存在预先应用给它们的伽玛值,这意味着当纹理在材质采样时,其是非线性的。如果这些纹理被使用于标准光照方程式,它将导致不正确的方程式,其期望使用前所有输入线性化。
当使用伽玛空间光照,颜色和纹理提供给着色器将应用其伽玛校正。当它们被用在高亮度的颜色着色器,实际上更亮,那么他们就应该用于线性照明。这意思是灯光强度增加,表面将以非线性方式增亮。这将导致在更多地方照明太亮,并给予模型和场景一个褪色的感觉。当使用线性照明,随着光照强度的增加,从表面的反应仍然是线性的。这导致更加真实的表面着色以及更好的表面颜色反应。
具体还可以参考这里
http://blog.csdn.net/golden_shadow/article/details/40183561 http://www.ceeger.com/Manual/LinearLighting.html
2.27.2016补充
还是补充在这里吧
就是关于shader中的光照
关于逐顶点光照(Per-vertex Lighting)效果差不多,速度快 其实区别不大
每顶点光照是标准的Direct3D/OpenGL光照模式,通过计算每个顶点的光照来完成。Lighting on命令开启光照。而我们知道,光照被材质块,颜色材质和平行高光等命令所影响。
关于逐像素光照(Per-pixel Lighting)效果更好,速度稍慢
每像素光照管线通过多次通道渲染对象来完成。Unity渲染对象一次来获取阴影色和任何顶点光照。然后再在额外的并行通道中渲染出每像素光照的效果。
下面是对比图
左 逐顶点 右逐像素
gamma空间就是模拟电视屏幕之类上的(也就是现在通用的)色彩空间,这种色彩空间在直接显示图片的时候效果正常,但如果进行颜色混合,混合的效果就不正确,因为它采用的是非线性采样
sRGB是RGB是一种的一种特定类型,就是一般用的,色彩宽度小
线性混合是正确的混合
gamma混合会导致光混合地方更亮,而产生不正确的颜色(虽然可能艺术效果更好)
线性光照是指照明具有所有线性输入场景的过程。通常纹理存在预先应用给它们的伽玛值,这意味着当纹理在材质采样时,其是非线性的。如果这些纹理被使用于标准光照方程式,它将导致不正确的方程式,其期望使用前所有输入线性化。
当使用伽玛空间光照,颜色和纹理提供给着色器将应用其伽玛校正。当它们被用在高亮度的颜色着色器,实际上更亮,那么他们就应该用于线性照明。这意思是灯光强度增加,表面将以非线性方式增亮。这将导致在更多地方照明太亮,并给予模型和场景一个褪色的感觉。当使用线性照明,随着光照强度的增加,从表面的反应仍然是线性的。这导致更加真实的表面着色以及更好的表面颜色反应。
具体还可以参考这里
http://blog.csdn.net/golden_shadow/article/details/40183561 http://www.ceeger.com/Manual/LinearLighting.html
2.27.2016补充
还是补充在这里吧
就是关于shader中的光照
关于逐顶点光照(Per-vertex Lighting)效果差不多,速度快 其实区别不大
每顶点光照是标准的Direct3D/OpenGL光照模式,通过计算每个顶点的光照来完成。Lighting on命令开启光照。而我们知道,光照被材质块,颜色材质和平行高光等命令所影响。
关于逐像素光照(Per-pixel Lighting)效果更好,速度稍慢
每像素光照管线通过多次通道渲染对象来完成。Unity渲染对象一次来获取阴影色和任何顶点光照。然后再在额外的并行通道中渲染出每像素光照的效果。
下面是对比图
左 逐顶点 右逐像素
相关文章推荐
- unity中的MonoBehaviour.OnMouseDown()
- 使用unity进行测试驱动开发的方法
- Unity3d之NGUI制作技能冷却
- unity移动平台阴影解决方案
- Unity3d 10000 Update() calls 性能优化
- unity3d打APK包时出现的内部构建错误(笔记)
- Unity3D——单词
- XML的使用,增删改查(Unity中的)
- 如何使用vs2012单步调试uGUI(unity3d 5.3f4)
- UGUI Unity内建UI系统的认识和一些问题的解决方案
- Unity3D游戏开发技巧Camera实现效果
- Unity3D 5.3 32位安装 No Unsupported Target module loaded
- Unity GameObject.activeSelf, GameObject.activeInHierarchy,GameObject.SetActive和SetActiveRecursively
- Unity3D ParticleSystem粒子系统(3.5版
- unity3d扩展编辑器
- 在Unity中使用UGUI修改Mesh绘制几何图形
- Unity中C#单例模式使用总结
- 其实Unity界面还是非常可爱的
- 【我的书】Unity Shader的书 — 文件夹(2015.12.21更新)
- 使用Visual Studio 2015 Community 开发windows服务