游戏中的画面是怎样呈现在屏幕上的?GPU是怎样协助CPU去渲染图形的呢?nVIDIA和AMD的显卡和GPU的概念是怎样牵连到一起的? 现在很火爆的VR到底是个什么原理?OpenGL、DirectX是什么鬼?怎么游戏引擎有那么多种呢?夕阳产业Flash Player到底是怎么回事?

以上的这些问题,都会在本文中用最浅显的语言来解答,就算你不懂C/C++,甚至连代码也没有敲过,也能懂到底是什么回事。本文不会很深入,只是给一个入门者一个大概的轮廓,前一部分内容可以面向所有有阅读能力的人,后面一部分内容面向所有的计算机图形技术入门者。

计算机的显示技术

每天打开显示器,或者点亮手机屏幕,你就能体会到当今世界的计算图形技术。这个计算机世界的窗口————显示器,其实只是一个呈现器。我们对计算机的渲染技术的探索,将从这个呈现器起步。

  • 基础的呈现原理

我们的纸张、布料等是原始的呈现器,我们可以用笔,用涂料在上面绘制出我们想要的图案。而显示器是另一种呈现器,它的呈现原理和纸张既相同又不同,相同的地方是,都是用不同的颜色来呈现图案(或者说信息),不同的地方,是纸张的呈现是连续的(自然的),而显示器的呈现是不连续的(离散的)————人类充分地利用离散的技术,构建了我们现在的计算机技术。

什么叫离散呢?举个例子,对于一副油画作品,我们将它切割成许多个很小的区域,然后在新的画布上,我们同样切割成许多很小的区域,在每个区域里,根据原画的对应区域,只取其主要颜色,或者几种颜色的混合(成一种颜色),然后把这个颜色涂满这个小区域。只要这个区域足够小,最后我们复制出来的新油画,就和原来的油画是几乎一样的。(当然只是视觉上的)。

  • 三原色

学过一点点美术基础的都知道三原色(小学知识?)。通过黄、品红、青三种颜色的混合,可以调制出除了白色以外的各种颜色。计算机也同样利用了这个原理,只不过计算机的三原色是红蓝绿(见过RGB这个词汇没有)。显示器(先不说Kindle那种显示器)的三原色和美术颜料的三原色在物理上有一点不一样,简单的说,就是颜料是不发光的颜色,而显示器用的是颜色光。这种不同还体现在,计算机的红蓝绿可以调出白色。因此,一个想要呈现出任意颜色的颜色单位,只要包含有这三个颜色光,通过调节每个颜色光的亮度,就能混合出各种颜色。还有一个前提,就是让这个颜色单位足够小,让肉眼无法区分出三个颜色光。

  • 从三原色到显示器

显示器的发展以及有很多代了,在千禧年至今,从厚厚的显示器(CRT显示器),到今天的各种液晶(LCD)显示器技术。虽然技术上的很大的不同,但它们的本质是一样的,就是让显示屏上每个颜色单位的三个颜色光各自发出指定的亮度。现在说的2K显示器(分辨率2048×1080),拥有2048×1080个颜色单位,这样的显示器就需要时时刻刻去调整这么多个颜色单位里的三个颜色光的各自亮度。

  • 显示器的输入

在纸上作画,是直观的输入,而显示器的输入,则没有那么直观了。我们已经知道,显示器呈现的画面是离散的,也就是由许多个颜色单位组合成的,要怎么控制颜色单位发出不同的色彩呢?我们已经知道,发光单位由RGB三种颜色组成,通过调节每个原色的发光亮度,就可以调节成各种颜色。当我们对画面切割成许多个小网格时,这是第一次使用离散处理问题,接下来我们对颜色的亮度做第二层的离散化处理。目前,我们可以让每个颜色单位里的每个原色发光体的调节做成256级。为什么切割成256级呢,我们只要意识到一点就行,这样的切割,我们的肉眼不能分辨出相邻亮度的区别,我们会觉得颜色是渐变的。通过这种处理,一个发光单位可以显示出256x256x256(1600万)种颜色,肉眼能够区分的颜色其实没有这么多,因此,这已经满足我们描述这个自然界的各种颜色了。

有了离散化,我们就可以用数字去表达颜色。例如红色是(255,0,0),蓝色是(0,0,255),白色是(255,255,255)。

显示器要显示画面,就需要输入这个画面上的所有颜色单位的颜色值。显示器一般有2根线,一条是电源线,另一条是数据线,这个数据线就是来传输这些颜色数据用的。显示器的分辨率越高,就需要传入更多的数据。

  • 给科普读者的小结

对于科普读者来说,读到这里就懂得显示器的显示原理了。接下来的部分,是计算机部分了。计算机为了呈现出稳定的画面,就需要时时刻刻输出计算机画面的数据。显示器要显示什么样的画面,都是由计算机的主机来决定,各种各样奇幻的计算机视觉,全部都是主机的CPU计算好,然后发送给显示器,显示器显示出来。显示器本身也有个微型的计算机控制着计算机呈现效果,例如显示器的整体亮度。显示器控制亮度的界面,也是由显示器本身的微型计算机来输出的画面,跟计算机画面可以重叠在一起。

计算机的图形渲染机制相关推荐

  1. 我国计算机软件著作权登记的性质是,我国计算机软件著作权登记机制的反思与完善.PDF...

    我国计算机软件著作权登记机制的反思与完善.PDF 31 5 Vol . 3 1 ,No. 5 第 卷第 期 河 北 法 学 2 0 1 3 5 Hebei Law Science May ,2 0 1 ...

  2. 计算机缓存Cache机制理解

    1.计算机存储体系简介 存储器是分层次的,离CPU越近的存储器,速度越快,每字节的成本越高,同时容量也因此越小.寄存器速度最快,离CPU最近,成本最高,所以个数容量有限,其次是高速缓存(缓存也是分级, ...

  3. 计算机底层运转机制:多核、缓存、CPU、CU、ALU、Cache

    现代CPU <编译型语言与解释型语言如何在计算机底层运行>中提到,计算机依靠编译器将源代码(编译型编程代码:C之类)编译成机器码执行,准确说,就是用CPU执行. 冯 诺伊曼架构 冯⋅\cd ...

  4. 黄聪:Python+NLTK自然语言处理学习(三):计算机自动学习机制

    本文演示使用NLTK让计算机学习如何通过名字识别性别. 1.导入NLTK: import nltkfrom nltk.book import * 2.定义学习方法 def gender_feature ...

  5. 计算机NLP注意力机制思想和实现原理讲的较清晰

    https://blog.csdn.net/hpulfc/article/details/80448570

  6. 计算机高级通信机制,深入电脑运行原理之进程通信(Operating System四级内容)...

    开篇语 生活不易,正在打电话(不想挂),没法看视频,所以先写简书吧.好吧,刚写完这句话就被挂了.感觉自从某位神秘存在的神秘亲戚来了之后,我就被降级---打下神坛了..心酸

  7. 计算机内部的物理运行机制,许多人具有应用物理、计算机、经济、心理学以及运筹学的背景,因...

    许多人具有应用物理.计算机.经济.心理学以及运筹学的背景,因此他们对于同一个问题有着非常不同的思考方式. 相关句子 1.从更广泛的意义上看,借助计算机科学,我们可以了解人类思想的本质和理性的意义,学会 ...

  8. 探秘区块链技术在计算机取证过程中的机制与应用

    本文讨论区块链技术在计算机取证过程中扮演什么角色以及发挥的作用,同时,以实际案例论述其发挥作用的机制与原理. 摘要:本文讨论区块链技术在计算机取证过程中扮演什么角色以及发挥的作用,同时,以实际案例论述 ...

  9. 【连载】IOS开发-图形渲染(一)

    本文首发来自微信公众号 程序员华仔 --------------------- 做IOS开发,特别是做界面部分的同学,不得不掌握图形的渲染原理.这里包括不限于图形渲染机制.离屏渲染.png图片渲染等重 ...

最新文章

  1. 树莓派上传文件到服务器,05_树莓派图片定时上传到服务器
  2. AI只跟科技巨头有关?小公司如何在AI时代竞争?
  3. Balsamiq Mockups --- 产品设计的利器
  4. some understandings about 《Learning representations by back-propagating errors》
  5. 二分查找/折半查找算法
  6. 2018年计算机学校迎新标语,2018学校迎新标语大全.doc
  7. 黑客声称攻陷并加密白俄罗斯国家铁路的服务器
  8. python数组切片赋值_基于numpy中数组元素的切片复制方法
  9. 微软为 Chrome 带来更流畅的页面滚动效果,来自 Edge
  10. kubernetes 一个窗口可以使用kubectl 另一个窗口不可以The connection to the server localhost:8080 was refused - did you
  11. [it-ebooks]电子书列表v0.1.1
  12. java tostring apache,Java如何使用Apache Commons Lang ToStringBuilder类?
  13. 杨玲 徐思 《面向对象程序设计(java)》第十一周学习总结
  14. 老年手机英文改中文_老年手机设置成英文怎么办
  15. Fork/Join 型线程池与 Work-Stealing 算法
  16. XML解析及JSON解析
  17. Python在Excel单元格中写入公式
  18. 娱乐_3D相册(HTML)_七夕
  19. 我们已在路上,希望就在前方
  20. android删除手机照片恢复软件,安卓手机上照片删除如何恢复?

热门文章

  1. 李彦宏:人工智能会让这个世界变得更美好吗?YES AI DO!
  2. 麒麟芯片AI首席科学家,解读AI芯片如何让手机更智能
  3. 2019年《自然》迎新子刊:机器智能、新陈代谢和综述物理
  4. 嘿,老李,又在写 BUG 呢?
  5. 蚂蚁上市分给员工 7000 亿股权,曾有人 28 岁财务自由,这次又将产生多少千万富翁?...
  6. Math类(工具类)
  7. PostCSS原理解析
  8. Android优化之内存优化倒计时篇
  9. sklearn—无监督最近邻
  10. 如何利用Docker构建基于DevOps的全自动CI