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

计算机图形系统发展的前世今生

1.概述

在文字出现以前,人类就是依据各种图形符号进行记事与交流,直至图形演变为简单的文字。在古代,图形符号常用于传达文化、宗教或社会信息,帮助人们理解历史和信仰,通过代代相传的图形符号,文化和传统得以保留和延续。图形符号不仅是艺术的表现形式,也在社会、文化和历史的演变中发挥了重要作用。

分别为文字的演化、良渚古城遗址纹饰图案,来源:昵图网

2.图形系统的发展史

上世纪50年代,计算机科学家们开始尝试使用计算机来生成图形。这些早期的图形只是一些简单的几何形状,如线段、圆、椭圆等。

1952年,Benjamin Francis Laposky利用计算机做出了抽象图像,他被认为是第一个利用计算机进行绘图的人,使用了一种示波器来创作抽象艺术。

1961年John Whitney用计算机创作了艺术抽象动画,他被称为"计算机图像之父"。

来源:John Whitney-Permutations (1966)- YouTube

1962年,计算机图形学之父和虚拟现实之父伊凡·苏泽兰(Ivan Edward Sutherland)基于他的博士研究课题「三维交互式图形系统」,设计出画板程序,开创了交互式电脑绘图的先河,奠定了计算机图形学的基础。

Ivan Edward Sutherland画板程序,来源:Ivan Sutherland Sketchpad Demo - YouTube

1963年Edward Zajac创作了第一部计算机生成的图形动画,他在动画中模拟物体得仰俯、滚动和偏航等运动。

第一部计算机生成的图形电影,来源:The First Computer Generated Film- YouTube

1966年,Lvan sutherland和他的学生们开发了一套名为“The Sword of Damocles(达摩克利斯之剑)”的系统,这套系统被普遍认为是HMD(头戴式显示器)以及VR的雏形。

来源:Sword of Damocles (1966) - YouTube

1969 年 IBM 的 Arthur Appel 首次提出光线投射(Ray Casting)的概念,这是光线追踪算法的起源。

Phong Shading 的效果,来源:真实感图形

1972年,Edwin Catmull在Utah大学的计算机科学课程上,提交了一个课程项目《A Computer Animated Hand》,这是是最早的CG动画实验之一,它是纹理映射的先驱。

来源:A Computer Animated Hand (1972) HQ- YouTube

1991年,中国CAD与计算机图形学领域巨匠齐东旭教授使用计算机,制作出了中央电视台《新闻联播》片头旋转地球的动画,为中国计算机动画探索了道路。

来源:1991年6月1日新闻联播片段

2002年, 卜桦使用动画制作软件Flash创作了《猫》,这是中国Flash独立动画发展历程中的里程碑作品。卜桦也是中国Flash应用方面最杰出的艺术家之一。

来源:卜桦《猫》

3.图形系统的应用领域

(1)游戏开发

游戏一直是推动图形学发展的一大动力,随着硬件技术的进步,使得全局光照和物理仿真等技术能够应用在各种图形中,Unreal、Unity 3D、RAGE、Cry Engine 3、Source Engine 等游戏引擎也已经发展为各种从建模、动画到光影、粒子特效,从物理系统、碰撞检测到文件管理、网络特性等多个子系统共同构成的复杂系统,还有专业的编辑工具和插件。

来源:游戏《黑神话悟空》

(2)电影与动画

好莱坞大片越来越依靠计算机制作的特效,动画人物的衣物、头发、皮肤、表情等普遍通过物理仿真技术生成,而光线追踪等物理真实渲染技术也被大量使用。

来源:电影《疯狂动物城》

(3)数字孪生

计算机图形学在数字孪生中的应用至关重要,它通过高精度建模和实时渲染技术,创建与现实世界物体精确对应的三维模型。这样的模型不仅能够动态展示系统状态,还能将复杂数据可视化,帮助用户理解运行性能和潜在问题。

Mapmost SDK for WebGL地图引擎制作数字孪生城市,来源:Mapmost平台

(4) 科学计算可视化

目前科学计算可视化广泛应用于医学、流体力学、有限元分析和气象分析当中。尤其在医学领域,可视化有着广阔的发展前途。依靠精密机械做脑部手术是目前医学上很热门的课题,而这些技术的实现基础则是可视化。当医生做脑部手术时,可视化技术将医用 CT 扫描的数据转化成图像,使得医生能够看到并准确地判别病人的体内患处,然后通过碰撞检测异类的技术实现手术效果的反馈,帮助医生成功完成手术。

(5) 计算机辅助设计与制造

CAD/CAM 是计算机图形学在工业界最广泛、最活跃的应用。计算机图形学被用来进行土建工程、机械结构和产品的设计,包括设计飞机、汽车、船舶的外形和发电厂、化工厂等的布局以及电子线路、电子器件等。CAD 是基于工程图纸的三维形体建模。三维形体建模就是从二维信息中提取三维信息,通过对这些信息进行分类、综合等一系列处理,在三维空间中重新构造出二维信息所对应的三维形体,恢复形体的点、线、面及其拓扑关系,从而实现形体的重建。

参考:

《中国字的魅力》

从计算机图形学的发展简史看GPU的演进

计算机平面图形的发展

"计算机图形学"中的技术和应用

相关文章:

  • 北京网站建设多少钱?
  • 辽宁网页制作哪家好_网站建设
  • 高端品牌网站建设_汉中网站制作
  • 计算机毕业设计 基于SpringBoot的课程教学平台的设计与实现 Java+SpringBoot+Vue 前后端分离 文档报告 代码讲解 安装调试
  • 【深度学习】【onnxruntime】C++调用onnx
  • 三维动画|创意无限,让品牌传播更精彩!
  • 2024年第十五届蓝桥杯青少组国赛撞期GESP认证、放弃那个?
  • C语言:刷题日志(3)
  • Golang | Leetcode Golang题解之第393题UTF-8编码验证
  • 【系统架构设计师-2015年】案例分析-答案及详解
  • 使用Azure+C#+visual studio开发图像目标检测系统
  • 《黑神话.悟空》与人工智能AI重塑经典与探索未来的交织
  • Android内存知识总结
  • JAVA毕业设计173—基于Java+Springboot+vue3的酒店民宿管理系统(源代码+数据库)
  • 浙大数据结构:03-树2 List Leaves
  • 数据库MySQL
  • 源码到class字节码的编译流程 字节码到内存的Java类加载流程
  • 算法提高模板强连通分量tarjan算法
  • 《Java8实战》-第四章读书笔记(引入流Stream)
  • 【node学习】协程
  • 0x05 Python数据分析,Anaconda八斩刀
  • HTTP--网络协议分层,http历史(二)
  • javascript从右向左截取指定位数字符的3种方法
  • mongo索引构建
  • nginx(二):进阶配置介绍--rewrite用法,压缩,https虚拟主机等
  • nodejs:开发并发布一个nodejs包
  • RedisSerializer之JdkSerializationRedisSerializer分析
  • Wamp集成环境 添加PHP的新版本
  • 包装类对象
  • 第2章 网络文档
  • 对象引论
  • 分享几个不错的工具
  • 浮动相关
  • 猴子数据域名防封接口降低小说被封的风险
  • 记录一下第一次使用npm
  • 利用DataURL技术在网页上显示图片
  • 利用阿里云 OSS 搭建私有 Docker 仓库
  • 聊一聊前端的监控
  • 面试遇到的一些题
  • 如何用vue打造一个移动端音乐播放器
  • 探索 JS 中的模块化
  • Redis4.x新特性 -- 萌萌的MEMORY DOCTOR
  • # Spring Cloud Alibaba Nacos_配置中心与服务发现(四)
  • #### golang中【堆】的使用及底层 ####
  • #define 用法
  • #LLM入门|Prompt#1.8_聊天机器人_Chatbot
  • #pragma data_seg 共享数据区(转)
  • #QT(一种朴素的计算器实现方法)
  • #我与Java虚拟机的故事#连载17:我的Java技术水平有了一个本质的提升
  • (2022版)一套教程搞定k8s安装到实战 | RBAC
  • (23)Linux的软硬连接
  • (4.10~4.16)
  • (NSDate) 时间 (time )比较
  • (机器学习的矩阵)(向量、矩阵与多元线性回归)
  • (六)Hibernate的二级缓存
  • (十六)Flask之蓝图
  • (一)SvelteKit教程:hello world
  • (已解决)什么是vue导航守卫