计算几何是一门计算机科学和数学的交叉学科,专注于解决几何问题的算法设计与分析。它主要研究如何利用算法来有效地处理几何对象,如点、线、多边形等,并解决诸如相交检测、凸包问题、最近邻搜索等问题。计算几何在图形学、机器人导航、地理信息系统(GIS)等领域有着广泛应用。
计算机图形学(英语:computer graphics,缩写为CG)是研究计算机在硬件和软件的帮助下创建计算机图形的科学学科,是计算机科学的一个分支领域,主要关注数字合成与操作视觉的图形内容。虽然这个词通常被认为是指三维图形,事实上同时包括了二维图形以及影像处理。
计算机图形学书籍列表
基础理论与技术
- Fundamentals of Computer Graphics - 计算机图形学的基础知识和核心概念。
- Computer Graphics Principles and Practice - 深入探讨计算机图形学的基本原理和实践方法。
- Computer Graphics Through OpenGL – From Theory to Experiments - 使用OpenGL介绍计算机图形学从理论到实验的知识。
- 3D Math Primer for Graphics and Game Development - 为图形和游戏开发提供必要的3D数学基础。
- Essential Mathematics for Games and Interactive Applications - 游戏和互动应用中使用的数学知识。
- Mathematics for 3D Game Programming and Computer Graphics - 针对3D游戏编程和计算机图形学的数学原理。
- Div, Grad, Curl, and All That - An Informal Text on Vector Calculus - 向量微积分的非正式介绍,适用于图形学。
- Introduction to Computer Graphics - A Practical Learning Approach - 实用学习方法入门计算机图形学。
- Computer Graphics - From Pixels to Programmable Graphics Hardware - 从像素到可编程图形硬件的全面介绍。
- An Integrated Introduction to Computer Graphics and Geometric Modeling - 图形学和几何建模的综合介绍。
- Vector Analysis for Computer Graphics - 针对计算机图形学的向量分析。
- Calculus for Computer Graphics - 计算机图形学中的微积分应用。
- Practical Linear Algebra - A Geometry Toolbox - 线性代数的实际应用,以几何工具箱形式呈现。
- Mathematical Basics of Motion and Deformation in Computer Graphics - 计算机图形学中运动和变形的数学基础。
渲染技术
- Physically Based Rendering From Theory To Implementation - 物理渲染从理论到实现的详尽指南。
- Real-Time Rendering - 实时渲染技术和算法的深入探讨。
- Ray Tracing in One Week - 一周内学习光线追踪的基础知识。
- Ray Tracing Gems - 光线追踪的最佳实践和技术细节。
- The Ray Tracer Challenge - A Test-Driven Guide to Your First 3D Renderer - 构建第一个3D渲染器的测试驱动指南。
- Ray Tracing - A Tool for All - 光线追踪技术的广泛应用。
- Advanced global illumination - 高级全局照明技术。
- Realistic Image Synthesis Using Photon Mapping - 使用光子映射进行逼真的图像合成。
- Efficient Illumination Algorithms for Global Illumination In Interactive and Real-Time Rendering - 交互式和实时渲染中的高效照明算法。
- Non-Photorealistic Rendering - 非真实感渲染技术。
- Non-Photorealistic Computer Graphics - Modeling, Rendering, and Animation - 非真实感计算机图形学的模型、渲染和动画。
- The Algorithms and Principles of Non-photorealistic Graphics - Artistic Rendering and Cartoon Animation - 非真实感图形学的算法和原理。
- Digital Lighting & Rendering - 数字照明和渲染技术。
- An Introduction to Ray Tracing - 光线追踪的入门介绍。
实时图形与游戏开发
- GPU Gems - GPU编程的技术和技巧。
- ShaderX - 着色器编程的高级技巧。
- GPU Pro - GPU编程的专业指南。
- GPU Zen - GPU编程的艺术和科学。
- GPU Pro 360 - GPU编程的最新进展。
- Foundations of Game Engine Development - 游戏引擎开发的基础。
- Game Engine Architecture - 游戏引擎架构的设计和实现。
- Game Engine Gems - 游戏引擎开发的宝贵经验。
- Game Physics Engine Development- How to Build a Robust Commercial-Grade Physics Engine for your Game - 如何构建一个健壮的游戏物理引擎。
- Game Physics Pearls - 游戏物理的最佳实践。
- Game Physics Cookbook - 游戏物理编程的实用指南。
- Physics for Game Developers - 游戏开发者必备的物理知识。
- Physics for Game Programmers - 游戏程序员的物理指南。
- Physics Modeling for Game Programmers - 游戏程序员的物理建模。
- AI Game Engine Programming - 游戏引擎的人工智能编程。
- AI Game Programming Wisdom - 游戏人工智能编程的智慧。
- Artificial Intelligence for Games - 游戏中的人工智能技术。
- Behavioral Mathematics for Game AI - 游戏AI的行为数学。
- Game Programming Gems - 游戏编程的宝贵资源。
- Introduction to 3D Game Programming with DirectX - 使用DirectX进行3D游戏编程的介绍。
- Practical Rendering and Computation with Direct3D 11 - 使用Direct3D 11进行实际渲染和计算。
- Real-Time 3D Rendering with DirectX and HLSL - A Practical Guide to Graphics Programming - 使用DirectX和HLSL进行实时3D渲染的实用指南。
- Beginning DirectX 11 Game Programming - DirectX 11游戏编程的入门指南。
- Direct3D Rendering Cookbook - Direct3D渲染的实用食谱。
- Tricks of the 3D Game Programming Gurus - Advanced 3D Graphics and Rasterization - 3D游戏编程大师的高级技巧。
- Video Game Optimization - 视频游戏的优化策略。
- Hands-On C++ Game Animation Programming - C++游戏动画编程的实战指南。
- Game AI Pro - Collected Wisdom of Game AI Professionals - 游戏AI专业人士的经验汇总。
- Game AI Pro 360 - 游戏AI的全方位视角。
物理模拟与动画
- Fluid Simulation for Computer Graphics - 计算机图形学中的流体模拟。
- The Nature of Code - Simulating Natural Systems with Processing - 使用Processing模拟自然系统。
- Game Physics - 游戏物理的基础知识。
- Cloth Simulation for Computer Graphics - 计算机图形学中的布料模拟。
- Character Animation With Direct3D - 使用Direct3D的角色动画。
- Real-time 3D Character Animation with Visual C++ - 使用Visual C++进行实时3D角色动画。
- Foundations of Physically Based Modeling and Animation - 基于物理的建模和动画基础。
- Computer Facial Animation - 计算机面部动画技术。
- Simulating Humans - Computer Graphics Animation and Control - 人类的计算机图形学动画和控制。
- Hands-On C++ Game Animation Programming - C++游戏动画编程的实战指南。
- Cloth Modeling and Animation - 布料建模和动画。
- Virtual Clothing - Theory and Practice - 虚拟服装的理论与实践。
高级图形API与编程实践
- OpenGL Programming Guide - OpenGL编程的官方指南。
- OpenGL SuperBible - OpenGL编程的圣经。
- OpenGL 4.0 Shading Language Cookbook - OpenGL着色语言的实用食谱。
- OpenGL Shading Language - OpenGL着色语言的详细讲解。
- Vulkan Programming Guide - The Official Guide to Learning Vulkan - 学习Vulkan的官方指南。
- Learning Vulkan - 学习Vulkan API的入门指南。
- Vulkan Cookbook - Work through recipes to unlock the full potential of the next generation graphics API-Vulkan - 解锁下一代图形API-Vulkan的全部潜力。
- GLSL Essentials - Enrich your 3D scenes with the power of GLSL - 使用GLSL增强3D场景的能力。
- WebGL Programming Guide - Interactive 3D Graphics Programming with WebGL - 使用WebGL进行交互式3D图形编程的指南。
- Mastering Graphics Programming with Vulkan - 掌握使用Vulkan进行图形编程。
- Practical Shader Development - Vertex and Fragment Shaders for Game Developers - 游戏开发者的实用着色器开发指南。
- The Modern Vulkan Cookbook - A practical guide to 3D graphics and advanced real-time rendering techniques in Vulkan - Vulkan中3D图形和高级实时渲染技术的实用指南。
新兴技术与应用
- Augmented Reality: Principles and Practice - 对增强现实技术进行深入探讨。
- Practical Augmented Reality: A Guide to the Technologies, Applications, and Human Factors for AR and VR - 提供了关于AR和VR的技术细节、应用实例以及人类因素方面的知识。
- VR Developer Gems - 针对虚拟现实开发的专业建议和技术指导。
图像处理与计算摄影学
- Digital Image Processing - 介绍了数字图像处理的基本理论和技术。
- Color Imaging: Fundamentals and Applications - 关于颜色成像的基础知识及其应用。
- High Dynamic Range Imaging - 探讨高动态范围成像技术。
数据结构与算法
- Data Structures and Algorithms for Game Developers - 专注于游戏开发者所需的数据结构和算法。
- Geometric Data Structures for Computer Graphics - 计算机图形学中的几何数据结构。
特定技术或工具的深入探讨
- GPGPU Programming for Games and Science - 广泛介绍通用图形处理单元编程的方法。
- The CUDA Handbook: A Comprehensive Guide to GPU Programming - 深入了解CUDA编程。
- Learn OpenGL - Learn modern OpenGL graphics programming in a step-by-step fashion - 学习现代OpenGL图形编程。
历史与未来趋势
- A Biography of the Pixel - 探索像素的历史及其在数字影像中的角色。
- The History of Visual Magic in Computers - How Beautiful Images are Made in CAD, 3D, VR and AR - 计算机视觉魔法的历史。
计算几何书籍列表
基础理论与算法
- Computational Geometry – Algorithms and Applications - 计算几何的基础算法及其应用。
- Computational Geometry:An Introduction - 对计算几何的基本概念、技术和算法的介绍。
- Computational Geometry in C - 使用C语言实现计算几何算法的指南。
- Guide to Computational Geometry Processing Foundations, Algorithms, and Methods - 提供计算几何处理的基础知识、算法和方法。
- Discrete and Computational Geometry - 这本书不仅介绍了离散和计算几何的基本概念,还探讨了一些最新的研究进展。
- Lectures on Discrete Geometry - 一本深入讲解离散几何学基础理论的书籍,适合希望深入了解该领域的读者
高级专题与技术
- Polygon Mesh Processing - 专注于多边形网格处理的技术和算法。
- Isosurfaces - Geometry, Topology, and Algorithms - 等值面的几何、拓扑结构及其算法分析。
- Effective Computational Geometry for Curves and Surfaces - 曲线和曲面上的有效计算几何方法。
- Nonlinear Computational Geometry - 非线性计算几何学的高级专题探讨。
- Algorithms in Combinatorial Geometry - 关注组合几何中的算法,是想要了解如何通过算法解决问题的人的好选择。
- Triangulations: Structures for Algorithms and Applications - 深入探讨三角剖分结构及其在算法和应用中的重要性。
应用与实践
- Geometric tools for computer graphics - 提供了大量用于计算机图形学中的几何工具和算法。
- Geometry for Computer Graphics - Formulae, Examples and Proofs - 包含了在计算机图形学中使用的公式、示例和证明。
- Curves and Surfaces for Computer Graphics - 介绍了计算机图形学中曲线和曲面的设计和实现。
- Robust and Error-Free Geometric Computing - 如何在几何计算中避免错误并提高鲁棒性。
- Geometric Folding Algorithms: Linkages, Origami, Polyhedra - 探讨了几何折叠算法的应用,包括连杆、折纸和多面体等领域。
- Delaunay Mesh Generation - 专注于Delaunay网格生成技术及其在工程和科学计算中的应用
几何代数与对象导向方法
- Geometric Algebra for Computer Science - An Object-Oriented Approach to Geometry - 利用几何代数的方法来处理计算机科学中的几何问题。
特殊表面与形状处理
- Computational Geometry on Surfaces - Performing Computational Geometry on the Cylinder, the Sphere, the Torus, and the Cone - 在圆柱体、球体、环面和锥体上执行计算几何操作。
- Implicit Curves and Surfaces - Mathematics, Data Structures and Algorithms - 关于隐式曲线和曲面的数学基础、数据结构及算法。
- Numerical Geometry of Non-Rigid Shapes - 讨论了非刚性形状的数值几何,对于涉及变形物体的研究特别有用
- Error-Correcting Linear Codes: Classification by Isometry and Applications - 虽然主要关注编码理论,但其中关于错误纠正的部分对于需要处理计算几何中精度问题的人来说非常有价值。
综合手册与设计指南
- Handbook of Discrete and Computational Geometry - 涵盖离散和计算几何的全面参考书。
- Handbook of Computer Aided Geometric Design - 计算机辅助几何设计的综合指南。
- Handbook of Geometric Computing: Applications in Pattern Recognition, Computer Vision, Neuralcomputing, and Robotics - 提供了广泛的几何计算应用实例,特别是在模式识别、计算机视觉等领域
- Geometric Modeling and Processing - 集中于几何建模和处理的技术和算法,是从事3D建模工作的专业人士的良好资源。
入门与教程
- Introduction to Computing with Geometry - 计算几何学入门教程。
- Geometry for Programmers - 针对程序员的几何学基础知识和应用介绍。