出版时间:2010-9 出版社:机械工业出版社 作者:王长波,高岩 编著 页数:253
Tag标签:无
前言
随着计算机软硬件技术的进步,计算机图形学技术发展很快,在各方面的应用也越来越广。特别是近几年以动画、游戏为代表的数字娱乐产业的迅猛发展,极大地推动了计算机图形学相关学科的发展。目前计算机图形学是计算机应用、软件工程、数字媒体等专业的核心课之一。 我们自2005年开始教授计算机图形学课程以来,一直较难找到一本合适的教科书,目前市面上的教材中虽然不乏优秀之作,但我们发现这些教材在用于实际教学时还存在以下一些问题: 1)多以二维图形和理论阐述为主。对直线、圆、曲线等基本图形算法讲述较多,但是目前的图形学应用主要是3D的,二维图形算法已经非常成熟和硬件化了。 2)对当前应用领域中所用到的最新图形技术涉及较少。随着动画、游戏等技术的发展,计算机图形技术涌现了越来越多的新方法和新技术,但现有的教材无法紧跟最新技术的发展,内容陈旧。 3)实践案例教学内容欠缺。目前的教材没有理论结合实践,缺乏讲解具体算法的实现方法,要么主要讲理论,要么讲程序语言OpenGL的简单使用方法,与实际应用需求严重脱节,使得学生学习一学期后也无法进行具体的图形编程。 为此,迫切需要有一本教学内容与时俱进、理论与实践并重的教材,不仅要把经典计算机图形学的基本原理讲透,而且能适当融合当前三维计算机图形技术的最新发展,并结合具体实践开展案例教学。基于上面的考虑,我们编写了这本教材,并已经以讲义的形式进行过几年的教学,效果良好。 本书在内容上偏重于三维计算机图形的最新技术,在介绍基本图形生成处理技术的基础上,进一步介绍了特效绘制技术、LOD技术、GPU加速技术等,以及3D图形开发技术的最新进展。同时本书将理论与实际相结合,着重培养学生的编程实现能力,即利用DirectX或OpenGL进行图形编程的能力。此外,本书通俗易懂、深入浅出,并较多地融合了最新3D游戏图形开发技术以及作者在相关领域的科研成果。作者还根据教学实践开发了一套辅助教师教学的“3D图形教学辅助演示系统”,该系统可以交互地演示图形生成过程,效果直观,交互方便,便于学生理解。 本书的主要特色: 1)偏重最新的3D计算机图形技术。用较少的篇幅介绍最经典的二维图元绘制算法,然后重点介绍当前用得最广泛的三维图形技术,融合最新3D游戏图形开发技术和作者在相关领域的科研成果。 2)理论结合实际。在每一章讲完理论后,紧接着介绍如何采用DirectX或OpenGL进行具体编程实现的方法和步骤,使学生可以利用所学知识做出自己的图形,提高了学生的学习兴趣与编程能力。
内容概要
本书重点介绍三维计算机图形学的基本概念、算法与编程实现,以及3D图形开发技术的最新进展。主要内容包括:计算机图形学概述、基本图形生成算法、3D图形数学基础、图形变换、三维场景的绘制基础、真实感图形光照处理、纹理映射技术、场景组织与管理技术、游戏特效绘制技术、地形绘制技术、阴影绘制技术、碰撞检测技术、计算机动画技术、GPU硬件加速技术等。 本书理论结合实际,图文并茂,注重培养学生的编程实现能力,可作为高等院校本科生或研究生计算机图形学课程的教材,也可供从事计算机图形学、游戏动画开发等工作的研究人员参考。封底无防伪标均为盗版版权所有,侵权必究 本书法律顾问北京市展达律师事务所
书籍目录
前言教学建议第1章计算机图形学 1?1计算机图形学概述 1?2计算机图形学的发展历史 1?3计算机图形学的应用领域 1?3?1计算机辅助设计 (CAD/CAM) 1?3?2科学计算可视化 1?3?3图形化的用户界面 1?3?4电脑游戏 1?3?5动画特效 1?3?6地理信息系统 1?3?7虚拟现实系统 1?3?8计算机艺术 1?4计算机图形设备与图形系统 1?4?1计算机图形设备 1?4?2计算机图形系统 1?5计算机图形的最新发展动向 本章小结 习题第2章基本图形生成算法 2?1图形光栅化的原理 2?2直线的光栅化算法 2?2?1逐点比较法 2?2?2数值微分法 2?2?3中点Bresenham算法 2?3圆的光栅化算法 2?3?1简单方程法产生圆弧 2?3?2Bresenham算法产生圆弧 2?4其他图形的光栅化算法 2?5基本图元的代码实现 2?5?1基本图元的C语言实现 2?5?2基本图元的MFC实现 2?6多边形填充 2?7宽图元 2?7?1复制像素画宽图元 2?7?2移动画笔画宽图元 本章小结 习题第3章3D图形中的数学基础 3?1坐标系 3?2向量 3?2?1向量的基本概念 3?2?2向量的基本运算 3?2?3向量的代码实现 3?3矩阵 3?3?1矩阵的基本概念 3?3?2矩阵的基本运算 3?3?3Direct3D中的矩阵 3?4空间几何的运算 3?4?1几何形体的表达 3?4?2几何体之间的空间关系 本章小结 习题第4章图形变换 4?1二维及三维图形几何变换 4?1?1二维图形几何变换 4?1?2三维图形几何变换 4?2投影与投影变换 4?2?1平行投影 4?2?2透视投影 4?3图形变换的实现 4?3?1Direct3D中的矩阵 4?3?2Direct3D中的矩阵变换 4?4编程实例 本章小结 习题第5章三维场景绘制基础 5?1三维场景绘制流水线 5?1?1世界变换 5?1?2观察空间变换 5?1?3背面拣选 5?1?4光照 5?1?5裁剪 5?1?6投影 5?1?7视口变换 5?1?8光栅化 5?2Direct3D的绘制流程 5?2?1创建场景 5?2?2绘制场景 5?2?3Direct3D绘制流水线 本章小结 习题第6章真实感图形光照处理 6?13D图形的颜色原理 6?1?1颜色的光学性质 6?1?2CIE色度图 6?1?3颜色空间模型 6?2光照明模型 6?2?1简单光照明模型 6?2?2基于简单光照明模型的多边形绘制 6?2?3整体光照明模型和光线跟踪算法 6?3光照的Direct3D编程实现 6?3?1Direct3D颜色定义 6?3?2光源 6?3?3材 6?3?4Direct3D顶点颜色 本章小结 习题第7章纹理映射技术 7?1纹理映射的基本原理 7?1?1纹理的基本概念 7?1?2纹理映射的概念 7?1?3纹理映射中的几何关系 7?2纹理映射的实现过程 7?2?1纹理映射的OpenGL实现 7?2?2纹理映射的Direct3D实现 7?3高级纹理映射技术 7?3?1纹理的优化处理技术 7?3?2多重纹理映射 7?3?3凹凸纹理 7?3?4环境映射技术 本章小结 习题第8章场景组织与管理技术 8?13D场景组织方式 8?1?1场景图 8?1?2基于绘制状态的场景管理 8?2优化场景绘制的几何剖分技术 8?2?1四叉树 8?2?2八叉树 8?2?3BSP树 8?3三维场景的快速可见性判断 8?3?1入口技术 8?3?2遮挡剔除 8?3?3潜在可见集方法 8?4LOD加速绘制技术 8?4?1LOD技术分类 8?4?2LOD的主要简化方法分类 8?4?3典型LOD的简化方法 本章小结 习题第9章游戏特效绘制技术 9?1广告牌技术 9?2粒子系统技术 9?2?1粒子的属性 9?2?2粒子系统的创建 9?3精灵动画技术 9?5烟、雾、火特效技术 9?5?1粒子系统 9?5?2分形几何 9?5?3过程纹理 9?5?4细胞自动机 9?5?5基于物理的方法 9?6眩光特效技术 9?6?1太阳及镜头光晕的绘制 9?6?2光晕淡入淡出效果 9?6?3可见性判断 本章小结 习题第10章地形绘制技术 10?1地形绘制的基本理论 10?1?1地形生成 10?1?2地表纹理 10?1?3地形光照 10?1?4地形的雾化效果 10?2简单地形的绘制方法 10?2?1生成地形高度数据 10?2?2创建地形网格 10?2?3添加纹理 10?2?4计算阴影 10?2?5添加雾化效果 10?3高级地形绘制技术 10?3?1地形LOD技术简介 10?3?2基于GeoMipmapping的地形LOD技术 本章小结 习题第11章阴影绘制技术 11?1阴影的基本原理 11?2平面阴影技术 11?2?1投影矩阵 11?2?2模板缓存 11?2?3绘制过程 11?3复杂阴影实现技术 11?3?1阴影图算法 11?3?2阴影体算法 本章小结 习题第12章碰撞检测技术 12?1碰撞检测的基本原理 12?1?1概念 12?1?2碰撞检测问题描述 12?1?3碰撞检测算法分类 12?2高级碰撞检测技术 12?2?1基于图像空间的碰撞检测算法 12?2?2基于一般表示模型的碰撞检测算法 12?2?3面向可变形体的碰撞检测算法 12?3基本碰撞检测算法实现 12?3?1使用边界框测试碰撞 12?3?2使用边界球测试碰撞 12?4示例程序 12?4?1边界框碰撞 12?4?2边界球碰撞 本章小结 习题第13章计算机动画技术 13?1计算机动画概述 13?2计算机三维动画过程 13?3关键帧动画 13?4过程动画 13?4?1三维纹理映射与过程纹理 13?4?2L系统 13?4?3傅里叶合成技术 13?5变形动画 13?6基于物理模型的动画 13?6?1刚体动力学模拟 13?6?2弹性变形体模拟 13?6?3流体模拟 13?7人体和关节动画 13?7?1人体骨架模型 13?7?2运动学方法 13?7?3动力学方法 13?7?4基于运动捕获的方法 本章小结 习题第14章GPU硬件加速技术 14?1GPU硬件加速的原理 14?2GPU与CPU比较 14?3HLSL着色器 14?3?1HLSL简介 14?3?2HLSL的数据类型 14?3?3编写HLSL着色器代码 14?3?4在Direct3D程序中加载 14?3?5HLSL的Effect框架 14?3?6基于HLSL的光照效果程序 14?4GLSL着色器 14?4?1GLSL数据类型 14?4?2GLSL的输入输出 14?4?3顶点着色器与片段着色器操作 14?4?4GLSL光照示例程序 本章小结 习题附录A图形开发库Direct3D编程入门附录BOpenGL简介参考文献
章节摘录
插图:客观世界中的事物是多姿多彩的,而呈现在我们眼前的往往是它们的外观,通过外观人们进一步地认识及研究它们。以图画为表现形式的图形信息在人类的社会生活中起着非常重要的作用,与其他的信息表现形式相比,图形信息具有容易理解、容易记忆、直观等特点。随着现代科学技术的发展,用计算机来处理图形的信息,完成图形的构造、显示与分析,很自然地就成为人们研究与探索的方法。经过30多年的发展,计算机图形学已成为计算机科学中最为活跃的分支之一,并得到广泛的应用。本章将介绍计算机图形学的研究内容、发展历史、应用领域等,使读者对计算机图形学的基本内容有大致的了解。1.1计算机图形学概述首先,我们来看什么是计算机图形学?简单来说,计算机图形学是指用计算机把对象的图形进行输出的技术。更确切地说,计算机图形学是利用计算机研究图形的表示、生成、处理、显示的学科,它综合了应用数学、计算机科学等多方面的知识。例如要表现一个桌子的图形,我们需要先研究如何在计算机上表示这个图形,并准备表现该图形所需的数据,如桌子的长、宽、高等,这是建模的过程;接着我们需要考虑如何显示已准备好的图形,这是绘制的过程;当然中间还要考虑人与图形的交互和参数化,这是交互式图形学的主要内容。计算机图形学的研究内容非常广泛,如图形硬件、图形标准、图形交互技术、光栅图形生成算法、曲线(曲面)造型、实体造型、真实感图形绘制技术,以及科学计算可视化、计算机动画、自然景物仿真、虚拟现实等。
编辑推荐
《3D计算机图形学》结合了作者多年教授计算机图形学课程及从事相关领域研究的经验编写而成,是一本教学内容与时俱进、理论与实践并重的教材,不仅透彻地讲解了经典计算机图形学的基本原理,而且融合了当前3D计算机图形技术的最新发展,并结合具体实践开展案例教学,使学生能快速掌握3D计算机图形学技术。《3D计算机图形学》特点着重介绍最新的3D计算机图形技术,融合了作者在相关领域的科研成果。理论结合实际,培养学生的编程实现能力。图文并茂,交互演示。书中含有大量的图例和项目应用实例。《3D计算机图形学》为授课教师免费提供电子教案和教辅,其中包括作者自主开发的“3D图形教学辅助演示系统”,生动形象,直观易懂,在实际教学中获得了广泛的好评。
图书封面
图书标签Tags
无
评论、评分、阅读与下载