计算机基本颜色以及运算

2. 计算机基本颜色以及运算

  1. 颜色运算

    1. RGB(red, green, blue)

      (0, 1, 0),强度为0的红光、强度为1的绿光、强度为0的蓝光=》绿

    2. Unity

      RGB:0 - 255,方便处理 规划 0-1

    3. 使用向量表示颜色

      1. 加法:

        设:红光(1,0,0)、绿光(0,1,0)

        (1, 0, 0) + (0, 1, 0) = (1, 1, 0) =>黄光

      2. 减法:

        设黄光(1, 1, 0),绿光(0, 1, 0)

        (1, 1, 0) - (0, 1, 0) = (1, 0, 0) =>红光

      3. 标量乘法:

        设白光(1,1,1)

        5 * (1, 1, 1) = (0.5, 0.5, 0.5) => 灰光

      4. 点积和叉积对于颜色运算来说没有任何意义。

        点积:得到标量 颜色没有几何意义

      5. 分量乘法:

        (R0, G0, B0) x (R1, G1, B1) = (R0R1, G0G1, B0B1)

        太阳光和吸收率 例子 反射率分量乘法

        设:C0 = (1, 1, 1);C1 = (0.75, 0.25, 0.5)

        C0 x C1 = (0.75, 0.25, 0.5)

  1. 32位颜色

    1. 我们使用8位来表示一个颜色分量,那么2的8次方其实就是256。计算机下标从0开始,也就变成了0到255。既然每个分量都有256种表示,那么三个颜色分量的组合就是256x256x256约等于1600万色。我们提供给美术同学的颜色分量用0-255来表示,但是在3D里面我们使用[0, 1]区间,因此我们需要将[0, 255]映射到[0, 1]。我们只要除以255就可以映射过去。
    2. 加入一个分量Alpha来表示透明度,最终为RGBA,这个也就是我们常说的32位色。
  2. Unity各种格式

    Texure Type设置为Advanced时纹理的格式列表

    • 格式

      详解

    1. Automatic Compressed

      压缩RGB纹理,默认选项,常用的漫反射纹理格式。4位/像素(32KB, 256x256)

    2. RGB Compressed DXT1

      压缩的RGB纹理。常用的漫反射纹理格式。4位/像素(32KB, 256x256)

    3. RGBA Compressed DXT5

      压缩的RGBA纹理。是漫反射和高光控制纹理的主要格式。1字节/像素(64KB, 256x256)

    4. RGB Compressed ETC 4bits

      压缩的RGB纹理,是Android工程默认的纹理格式,不支持alpha通道。(32KB, 256x256)

    5. RGB Compressed PVRTC 2bits

      压缩的RGB纹理,支持Imagination PowerVR GPU2位/像素(16KB, 256x256)

    6. RGBA Compressed PVRTC 2bits

      压缩的RGBA纹理,支持Imagination PowerVR GPU2位/像素(16KB, 256x256)

    7. RGB Compressed PVRTC 4bits

      压缩的RGB纹理,支持Imagination PowerVR GPU4位/像素(32KB, 256x256)

    8. RGBA Compressed PVRTC 4bits

      压缩的RGBA纹理,支持Imagination PowerVR GPU

      4位/像素(32KB, 256x256)

    9. RGB Compressed ATC 4bits

      压缩的RGB纹理,支持Qualcomm Snapdragon,4位/像素(32KB, 256x256)

    10. RGBA Compressed ATC 8bits

    压缩的RGB纹理,支持Qualcomm Snapdragon,8位/像素(64KB, 256x256)

    1. Automatic 16bits

      RGB彩色,16位彩色图最多可以有2的16次方种颜色(低质量真彩色)

    2. RGB 16bits

      65万色不带alpha,比压缩的格式使用更多的内存,适用UI纹理(128KB,256x256)

    3. ARGB 16bits / RGBA 16bits

      低质量真彩色,具有16级的红绿蓝和alpha通道(128KB, 256x256)

    4. Automatic Turecolor

      最高质量的真彩色,也就是32位的色彩(256x256的纹理大小为256KB)

    5. RGB 24bits

      真彩色不带alpha通道(192KB, 256x256)

    6. Alpha 8bits

      高质量alpha通道,不带颜色(64KB, 256x256)

    7. ARGB 32bits /RGBA 32bits

      真彩色带alpha通道(256KB, 256x256)

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

  • 版权声明:本文为Jumbo原创文章,采用[知识共享 署名-非商业性使用-禁止演绎 4.0 国际 许可协议],转载前...
    JumboWu阅读 2,670评论 0 6
  • 卷首语 欢迎来到 objc.io 的第三期! 这一期都是关于视图层的。当然视图层有很多方面,我们需要把它们缩小到几...
    评评分分阅读 1,898评论 0 18
  • 前言 本文主要是对OpegGL ES的api做一些资料上的搜集,给大家推荐一个中文详解网站:链接,虽然作者还没有写...
    Link913阅读 2,592评论 1 6
  • 绘制像素到屏幕上 answer-huang22 Mar 2014 分享文章 一个像素是如何绘制到屏幕上去的?有很多...
    阿狸旅途T恤阅读 1,744评论 0 7
  • 我还是不太懂这个世界。 昨天给一些朋友,陌生人群发了一句 :日子清白而单薄,这样就很好。朋友,你觉得呢?晚安。因为...
    羞羞的麦穗阅读 183评论 0 0

友情链接更多精彩内容