3D COMPUTER GRAPHICS THIRD EDITIONPDF电子书下载
- 电子书积分:17 积分如何计算积分?
- 作 者:ALAN WATT
- 出 版 社:ADDISON-WESLEY
- 出版年份:2000
- ISBN:0201398559
- 页数:570 页
1 Mathematical fundamentals of computer graphics 1
1.1 Manipulating three-dimensional structures 1
1.1.1 Three-dimensional geometry in computer graphics - affine transformations 2
1.1.2 Transformations for changing coordinate systems 8
1.2 Structure-deforming transformations 9
1.3 Vectors and computer graphics 11
1.3.1 Addition of vectors 12
1.3.2 Length of vectors 12
1.3.3 Normal vectors and cross products 12
1.3.4 Normal vectors and dot products 14
1.3.5 Vectors associated with the normal vector reflection 15
1.4 Rays and computer graphics 17
1.4.1 Ray geometry - intersections 17
1.4.2 Intersections - ray-sphere 18
1.4.3 Intersections - ray-convex polygon 19
1.4.4 Intersections - ray-box 21
1.4.5 Intersections - ray-quadric 23
1.4.6 Ray tracing geometry - reflection and refraction 23
1.5 Interpolating properties in the image plane 25
2 Representation and modelling of three-dimensional objects (1) 27
Introduction 27
2.1 Polygonal representation of three-dimensional objects 33
2.1.1 Creating polygonal objects 37
2.1.2 Manual modelling of polygonal objects 38
2.1.3 Automatic generation of polygonal objects 38
2.1.4 Mathematical generation of polygonal objects 39
2.1.5 Procedural polygon mesh objects - fractal objects 44
2.2 Constructive solid geometry (CSG) representation of objects 46
2.3 Space subdivision techniques for object representation 51
2.3.1 Octrees and polygons 53
2.3.2 BSP trees 55
2.3.3 Creating voxel objects 56
2.4 Representing objects with implicit functions 56
2.5 Scene management and object representation 58
2.5.1 Polygon mesh optimization 59
2.6 Summary 64
3 Representation and modelling of three-dimensional objects (2) 66
Introduction 66
3.1 Bézier curves 69
3.1.1 joining Bézier curve segments 75
3.1.2 Summary of Bézier curve properties 77
3.2 B-spline representation 78
3.2.1 B-spline curves 78
3.2.2 Uniform B-splines 80
3.2.3 Non-uniform B-splines 84
3.2.4 Summary of B-spline curve properties 90
3.3 Rational curves 90
3.3.1 Rational Bézier curves 91
3.3.2 NURBS 93
3.4 From curves to surfaces 94
3.4.1 Continuity and Bézier patches 98
3.4.2 A Bézier patch object - the Utah teapot 100
3.5 B-spline surface patches 101
3.6 Modelling or creating patch surfaces 106
3.6.1 Cross-sectional or linear axis design example 107
3.6.2 Control polyhedron design - basic technique 110
3.6.3 Creating patch objects by surface fitting 115
3.7 From patches to objects 121
4 Representation and rendering 123
Introduction 123
4.1 Rendering polygon meshes - a brief overview 124
4.2 Rendering parametric surfaces 125
4.2.1 Rendering directly from the patch descriptions 125
4.2.2 Patch to polygon conversion 128
4.2.3 Object space subdivision 128
4.2.4 Image space subdivision 135
4.3 Rendering a CSG description 138
4.4 Rendering a voxel description 140
4.5 Rendering implicit functions 141
5 The graphics pipeline (1): geometric operations 142
Introduction 142
5.1 Coordinate spaces in the graphics pipeline 143
5.1.1 Local or modelling coordinate systems 143
5.1.2 World coordinate systems 143
5.1.3 Camera or eye or view coordinate system 143
5.2 Operations carried out in view space 147
5.2.1 Culling or back-face elimination 147
5.2.2 The view volume 147
5.2.3 Three-dimensional screen space 149
5.2.4 View volume and depth 152
5.3 Advanced viewing systems (PHIGS and GKS) 156
5.3.1 Overview of the PHIGS viewing system 157
5.3.2 The view orientation parameters 159
5.3.3 The view mapping parameters 159
5.3.4 The view plane in more detail 162
5.3.5 Implementing a PHIGS-type viewing system 164
6 The graphics pipeline (2): rendering or algorithmic processes 167
Introduction 167
6.1 Clipping polygons against the view volume 168
6.2 Shading pixels 171
6.2.1 Local reflection models 173
6.2.2 Local reflection models - practical points 177
6.2.3 Local reflection models - light source considerations 179
6.3 Interpolative shading techniques 179
6.3.1 Interpolative shading techniques - Gouraud shading 180
6.3.2 Interpolative shading techniques - Phong shading 181
6.3.3 Renderer shading options 182
6.3.4 Comparison of Gouraud and Phong shading 183
6.4 Rasterization 183
6.4.1 Rasterizing edges 183
6.4.2 Rasterizing polygons 185
6.5 Order of rendering 187
6.6 Hidden surface removal 189
6.6.1 The Z-buffer algorithm 189
6.6.2 Z-buffer and CSG representation 190
6.6.3 Z-buffer and compositing 191
6.6.4 Z-buffer and rendering 192
6.6.5 Scan line Z-buffer 193
6.6.6 Spanning hidden surface removal 193
6.6.7 A spanning scan line algorithm 194
6.6.8 Z-buffer and complex scenes 196
6.6.9 Z-buffer summary 198
6.6.10 BSP trees and hidden surface removal 199
6.7 Multi-pass rendering and accumulation buffers 202
7 Simulating light-object interaction: local reflection models 205
Introduction 205
7.1 Reflection from a perfect surface 206
7.2 Reflection from an imperfect surface 207
7.3 The bi-directional reflectance distribution function 208
7.4 Diffuse and specular components 211
7.5 Perfect diffuse - empirically spread specular reflection 212
7.6 Physically based specular reflection 213
7.6.1 Modelling the micro-geometry of the surface 214
7.6.2 Shadowing and masking effects 214
7.6.3 Viewing geometry 216
7.6.4 The Fresnel term 216
7.7 Pre-computing BRDFs 219
7.8 Physically based diffuse component 221
8 Mapping techniques 223
Introduction 223
8.1 Two-dimensional texture maps to polygon mesh objects 228
8.1.1 Inverse mapping by bilinear interpolation 229
8.1.2 Inverse mapping by using an intermediate surface 230
8.2 Two-dimensional texture domain to bi-cubic parametric patch objects 234
8.3 Billboards 235
8.4 Bump mapping 236
8.4.1 A multi-pass technique for bump mapping 238
8.4.2 A pre-calculation technique for bump mapping 239
8.5 Light maps 240
8.6 Environment or reflection mapping 243
8.6.1 Cubic mapping 245
8.6.2 Sphere mapping 247
8.6.3 Environment mapping: comparative points 248
8.6.4 Surface properties and environment mapping 249
8.7 Three-dimensional texture domain techniques 251
8.7.1 Three-dimensional noise 251
8.7.2 Simulating turbulence 252
8.7.3 Three-dimensional texture and animation 254
8.7.4 Three-dimensional light maps 256
8.8 Anti-aliasing and texture mapping 256
8.9 Interactive techniques in texture mapping 260
9 Geometric shadows 263
Introduction 263
9.1 Properties of shadows used in computer graphics 265
9.2 Simple shadows on a ground plane 265
9.3 Shadow algorithms 267
9.3.1 Shadow algorithms: projecting polygons/scan line 267
9.3.2 Shadow algorithms: shadow volumes 268
9.3.3 Shadow algorithms: derivation of shadow polygons from light source transformations 271
9.3.4 Shadow algorithms: shadow Z-buffer 271
10 Global illumination 275
Introduction 275
10.1 Global illumination models 276
10.1.1 The rendering equation 277
10.1.2 Radiance, irradiance and the radiance equation 278
10.1.3 Path notation 281
10.2 The evolution of global illumination algorithms 283
10.3 Established algorithms - ray tracing and radiosity 284
10.3.1 Whitted ray tracing 284
10.3.2 Radiosity 286
10.4 Monte Carlo techniques in global illumination 288
10.5 Path tracing 292
10.6 Distributed ray tracing 294
10.7 Two-pass ray tracing 297
10.8 View dependence/independence and multi-pass methods 300
10.9 Caching illumination 301
10.10 Light volumes 303
10.11 Particle tracing and density estimation 304
11 The radiosity method 306
Introduction 306
11.1 Radiosity theory 308
11.2 Form factor determination 310
11.3 The Gauss-Seidel method 314
11.4 Seeing a partial solution - progressive refinement 315
11.5 Problems with the radiosity method 318
11.6 Artefacts in radiosity images 319
11.6.1 Hemicube artefacts 319
11.6.2 Reconstruction artefacts 321
11.6.3 Meshing artefacts 323
11.7 Meshing strategies 325
11.7.1 Adaptive or a posteriori meshing 325
11.7.2 A priori meshing 332
12 Ray tracing strategies 342
Introduction - Whitted ray tracing 342
12.1 The basic algorithm 343
12.1.1 Tracing rays - initial considerations 343
12.1.2 Lighting model components 344
12.1.3 Shadows 345
12.1.4 Hidden surface removal 346
12.2 Using recursion to implement ray tracing 347
12.3 The adventures of seven rays - a ray tracing study 350
12.4 Ray tracing polygon objects - interpolation of a normal at an intersection point in a polygon 352
12.5 Efficiency measures in ray tracing 354
12.5.1 Adaptive depth control 354
12.5.2 First hit speed up 355
12.5.3 Bounding objects with simple shapes 355
12.5.4 Secondary data structures 357
12.5.5 Ray space subdivision 363
12.6 The use of ray coherence 364
12.7 A historical digression - the optics of the rainbow 367
13 Volume rendering 370
Introduction 370
13.1 Volume rendering and the visualization of volume data 373
13.2 ′Semi-transparent gel′ option 377
13.2.1 Voxel classification 378
13.2.2 Transforming into the viewing direction 379
13.2.3 Compositing pixels along a ray 379
13.3 Semi-transparent gel plus surfaces 380
13.3.1 Explicit extraction of isosurfaces 382
13.4 Structural considerations in volume rendering algorithms 384
13.4.1 Ray casting (untransformed data) 385
13.4.2 Ray casting (transformed data) 387
13.4.3 Voxel projection method 388
13.5 Perspective projection in volume rendering 390
13.6 Three-dimensional texture and volume rendering 391
14 Anti-aliasing theory and practice 392
Introduction 392
14.1 Aliases and sampling 393
14.2 Jagged edges 397
14.3 Sampling in computer graphics compared with sampling reality 398
14.4 Sampling and reconstruction 400
14.5 A simple comparison 401
14.6 Pre-filtering methods 402
14.7 Supersampling or post-filtering 404
14.8 Non-uniform sampling - some theoretical concepts 406
14.9 The Fourier transform of images 411
15 Colour and computer graphics 418
Introduction 418
15.1 Colour sets in computer imagery 419
15.2 Colour and three-dimensional space 420
15.2.1 RGB space 423
15.2.2 The HSV single hexcone model 424
15.2.3 YIQ space 427
15.3 Colour, information and perceptual spaces 427
15.3.1 CIE XYZ space 429
15.3.2 CIE xyY space 433
15.4 Rendering and colour spaces 435
15.5 Monitor considerations 436
15.5.1 RGB monitor space and other monitor considerations 436
15.5.2 Monitor considerations - different monitors and the same colour 437
15.5.3 Monitor considerations - colour gamut mapping 439
15.5.4 Monitor considerations - gamma correction 440
16 Image-based rendering and photo-modelling 443
Introduction 443
16.1 Reuse of previously rendered imagery - two-dimensional techniques 444
16.1.1 Planar impostors or sprites 445
16.1.2 Calculating the validity of planar impostors 445
16.2 Varying rendering resources 447
16.2.1 Priority rendering 447
16.2.2 Image layering 448
16.3 Using depth information 452
16.3.1 Three-dimensional warping 452
16.3.2 Layered depth images (LDIs) 456
16.4 View interpolation 458
16.4.1 View morphing 460
16.5 Four-dimensional techniques - the Lumigraph or light field rendering approach 463
16.6 Photo-modelling and IBR 465
16.6.1 Image-based rendering using photographic panoramas 469
16.6.2 Compositing panoramas 469
16.6.3 Photo-modelling for image-based rendering 470
17 Computer animation 473
Introduction 473
17.1 A categorization and description of computer animation techniques 476
17.2 Rigid body animation 477
17.2.1 Interpolation or keyframing 477
17.2.2 Explicit scripting 479
17.2.3 Interpolation of rotation 483
17.2.4 Using quaternions to represent rotation 484
17.2.5 Interpolating quaternions 488
17.2.6 The camera as an animated object 492
17.3 Linked structures and hierarchical motion 493
17.3.1 Solving the inverse kinematics problem 500
17.4 Dynamics in computer animation 504
17.4.1 Basic theory for a rigid body - particles 505
17.4.2 The nature of forces 506
17.4.3 Rigid bodies - extended masses 507
17.4.4 Using dynamics in computer animation 510
17.4.5 Simulating the dynamics of a lumped mass 511
17.4.6 Space-time constraints 515
17.5 Collision detection 517
17.5.1 Broad phase/narrow phase algorithms 518
17.5.2 Broad phase collision detection with OBBs 519
17.5.3 Narrow phase: pairs of convex polyhedra - exact collision detection 522
17.5.4 Single phase algorithms - object hierarchies 524
17.6 Collision response 526
17.7 Particle animation 529
17.8 Behavioural animation 531
17.9 Summary 534
18 Comparative Image study 536
Introduction 536
18.1 Local reflection models 537
18.2 Texture and shadow mapping 538
18.3 Whitted ray tracing 539
18.4 Radiosity 541
18.5 RADIANCE 543
18.6 Summary 543
References 544
Index 553
- 《如何开金口:让您赚大钱的演说术》ALAN WEISS著;贾士蘅译 1999
- 《量子心世界 在宇宙的无限可能中创造奇迹》(美)弗雷德·艾伦·沃尔夫(Fred Alan Wolf)著;艾琦译 2013
- 《最佳讲稿撰写》ALAN M.PERLMAN著;林淑琼译 1999
- 《诊断》艾伦·莱特曼(ALAN LIGHTMAN)著;陈静芳译 2002
- 《好老板搞笑有理》WATT WEINSTEIN编著;刘晓玲译 2002
- 《怎样制造时间机器 英汉对照》Hazel Richardson著;Alan Rowe图 周菲译 2002
- 《卧室里的脑电波》Richard Robinson著;Alan Rowe图 吕洋,李丹丹译 2002
- 《激励学习的学校》Alan Mclean著;赖丽珍译 2009
- 《消费者行销导向》ALAN MITCHELL,艾伦·米契尔著;胡玮珊译 2001
- 《《圣经》考古大发现》(英)阿兰·米拉德(Alan Millard)著 2009