当前位置:首页 > 外文
3D COMPUTER GRAPHICS  THIRD EDITION
3D COMPUTER GRAPHICS  THIRD EDITION

3D COMPUTER GRAPHICS THIRD EDITIONPDF电子书下载

外文

  • 电子书积分:17 积分如何计算积分?
  • 作 者:ALAN WATT
  • 出 版 社:ADDISON-WESLEY
  • 出版年份:2000
  • ISBN:0201398559
  • 页数:570 页
图书介绍:This book provides students with a knowledge of complex and emerging topics in the field of Computer Graphics, including advances in rendering and new material on animation. It will enable the reader to master the fundamentals of 3D computer graphics as well as acting as a complete resource for anyone interested in 3D modelling. It provides detailed coverage of both realistic a...
《3D COMPUTER GRAPHICS THIRD EDITION》目录
标签:

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

返回顶部