交互式計算機圖形學:基於OpenGL着色器的自頂向下方法 第6版.英文版 | 做自己 - 2024年5月

交互式計算機圖形學:基於OpenGL着色器的自頂向下方法 第6版.英文版

作者:(美)安傑爾
出版社:電子工業
出版日期:2012年07月01日
ISBN:9787121177095
語言:繁體中文

本書採用自頂向下的方法並輔以面向程式設計的方式,基於現代可程式設計GPU的著色器程式設計,使用C++語言、OpenGL著色語言(GLSL)並結合OpenGL系統地介紹了現代電腦圖形學的核心概念、原理和方法。
 
本書是作者多年來教學與科研工作的總結,涵蓋了基於OpenGL著色器的互動式圖形程式設計、三維可編程繪製流水線、變換與觀察、光照與明暗繪製、曲線曲面建模等基本的電腦圖形學內容以及離散技術、層級建模、過程建模、光線跟蹤、並行繪製和體繪製等高級內容,並為讀者進一步深入學習和研究,在每章後面提供了相關的建議閱讀資料。

本書第六版進一步反映了電腦圖形學的最新發展現狀,面向圖形應用開發並輔以大量的示例和完整的原始程式碼,是一本“基礎性與先進性、理論性與應用性、科學性與通俗性”相結合的內容全面而又系統的國外經典電腦圖形學教材。

CHAPTER GRAPHICS SYSTEiVtS AND MODELS 31
1.1 Applications of Computer Graphics 32
1.1.1 Display of Information 32
1.1.2 Design 33
1.1.3 S3mulation and Animation 33
1.1.4 User Interfaces 34
1.2 A Graphics System 35
1.2.1 Pixels and the Frame Buffer 35
1.2.2 The CPU and the GPU 36
1.2.3 Output Devices 37
1.2.4 Input Devices 39
1.2.5 Physical Input Devices 40
1.2.6 Logical Devices 42
1.2.7 Input Modes 43
1.3 Images: Physical and Synthetic 45
1.3.1 Objects and Viewers 45
1.3.2 Light and Images 46
1.3.3 Imaging Models 48
1.4 Imaging Systems 50
1.4.1 The Pinhole Camera 50
1.4.2 The Human Visual System 52
1.5 The Synthetic-Camera Model 53
1.6 The Programmer’s Interface 55
1.6.1 The Pen-Plotter Model 57
1.6.2 Three-Dimensional APIs 58
1.6.3 A Sequence Of Images 61
1.6.4 The Modeling-Rendering Paradigm 62
1.7 Graphics Architectures 64
1.7.1 Display Processors 64
1.7.2 Pipeline Architectures 64
1.7.3 The Graphics Pipeline 65
1.7.4 Vertex Processing 66
1.7.5 Clipping and Primitive Assembly 66
1.7.6 Rasterization 67
1.7.7 Fragment Processing 67
1.8 Programmable Pipeline 67s
1,9 Performance Characteristics 68
Summary and Notes 69
Suggested Readings 70
Exercises 71
CHAPTER 2 GRAPHICS PROGRAMMING
2.1 The Sierpinski Gasket 73
2.2 Programming Two-Dimensional Applications 76
2.3 The OpenGL Application Programming Interface 80
2.3.1 Graphics Functions 81
2.3.2 The Graphics Pipeline and State Machines 83
2.3.3 The OpenGL Interface 83
2.3.4 Coordinate Systems 85
2.4 Primitives and Attributes 86
2.4.1 Polygon Basics 88
2.4.2 Polygons in OpenGL 89
2.4.3 Approximating a Sphere 90
2.4.4 Triangulation 92
2.4.5 Text 94
2.4.6 Curved Objects 95
2.4.7 Attributes 95
2.5 Color 97
2.5.1 RGB Color 99
2.5.2 Indexed Color 101
2.5.3 Setting of Color Attributes 102
2.6 Viewing 103
2.6.1 The Orthographic View 104
2.6.2 Two-Dimensional Viewing 107
2.7 Control Functions 108
2.7.1 Interaction with the Window System 108
2.7.2 Aspect Ratio and Viewports 109
2.7.3 The main,display,and init Functions 110
2.7.4 Program Structure 113
2.8 The Gasket Program 113
2.8.1 Rendering the Points 114
2.8.2 The Vertex Shader 115
2.8.3 The Fragment Shader 116
2.8.4 Combining the Parts 116
2.8.5 The initShacter Function 116
2.9 Polygons and Recursion 118
2.10 The Three-Dimensional Gasket 121
2.10.1 Use of Three-Dimensiohal Points 121
2.10.2 Use of Polygons in Three Dimensions 122
2.10.3 Hidden-Surface Removal 125
2.11 Adding Interaction 128
2.11.1 Using the Pointing Device 128
2.11.2 Window Events 131
2.11.3 Keyboard Events 132
2.11.4 The Idle Callback 133
2.11.5 Double Buffering 135
2.11.6 Window Management 136
2.12 Menus 136
Summary and Notes 138
Suggested Readings 139
Exercises 140
CHAPTER 3 GEOMETRIC OBJECTS AND TRANSFORMATIONS 145
3.1 Scalars, Points, and Vectors 146
3.1.1 Geometric Objects 146
3.1.2 Coordinate-Free Geometry 147
3.1.3 The Mathematical View: Vector and Affine Spaces 148
3.1.4 The Computer Science View 149
3.1.5 Geometric ADTs 149
3.1.6 Lines 150
3.1.7 Affine Sums 151
3.1.8 Convexity 152
3.1.9 Dot and Cross Products 152
3.1.10 Planes 153
3.2 Three-Dimensional Primitives 155
3.3 Coordinate Systems and Frames 156
3.3.1 Representations and N-Tuples 158
3.3.2 Change of Coordinate Systems 159
3.3.3 Example Change of Representation 162
……
CHAPTER 4 VIEWING
CHAPTER 5 LISHTING AND SHADING
CHAPTER 6 FROM VERTICES TO FRAGMENTS
CHAPTER 7 DISCRETE TECHNIQUES
CHAPTER 8 MODELING AND HIERARCHY
CHAPTER 9 PROCEDURAL METHODS
CHAPTER 10 CURVES AND SURFACES
CHAPTER 11 ADVANCED REDERING
APPENIX A SAMPLE PROGRAMS
APPENIX B SPACER
APPENIX C MATRICES
APPENIX D SYNOPSIS OF OPENGL FUNCTIONS


相關書籍