Upload
others
View
3
Download
0
Embed Size (px)
Citation preview
Jim X. Chen
Guide to Graphics Software Tools
With 49 niustrations
:.>- Ä INCLUDES * ^ ^ CD-ROM
Springer
Contents
Preface
Part I: A Shortcut to Computer Graphics Principles
Chapter 1 Objecto and Models
1.1 Graphics Models and Libraries - - - - - - - - - - - - /
1.2 OpenGL Programming 2
Understanding Example 1.1 3
1.3 Frame Buffer, Scan-conversion, and Clipping 5
Scan-converting Lines 6 Scan-converting Curves, Triangles, and Polygons 11 Scan-converting Characters 12 Clipping 12
1.4 Attributes and Antialiasing 13
Area Sampling 13 Antialiasing a Line with Weighted Area Sampling 14
1.5 Double-buffering for Animation - - - - - - -16
X Contents
Chapter 2 Transformation and Viewing
2.1 Geometrie Transformation - - - - - 21
2.2 2D Transformation 22
2D Translation 22 2D Rotation 23 2D Scaling 24 Compositum of 2D Transformations 25
2.3 3D Transformation and Hidden-surface Removal - - - 30
3D Translation, Rotation, and Scaling 30 Transformation in OpenGL 32 Hidden-surface Removal 37 Collision Detection 38 3D Models: Cone, Cylinder, and Sphere 38 Composition of 3D Transformations 43
2.4 Viewing 48
2D Viewing 48 3D Viewing 49 An Example of Viewing in OpenGL 53
Chapter 3 Color and Lighting
3.1 Color 55
RGB Mode and Index Mode 56
Eye Characteristics and Gamma Correction 57
3.2 Color Interpolation - - 58
3.3 Lighting - - - - - - - - - - - - - 60
Lighting Components 60 OpenGL Lighting Model 65
3.4 Vtsible-Surface Shading 71
Back-Face Culling 71 Polygon Shading Models 73 Ray Tracing and Radiosity 74
Contents XI
Chapter 4 Blending and Texture Mapping
4.1 Blending 77
OpenGL Blending Factors 78 Transparency and Hidden-Surface Removal 79 Antialiasing 81 Fog 81
4.2 Images - 83
4.3 Texture Mapping 84
Pixel and Texel Relations 84 Texture Objects 86 Texture Coordinates 88
Chapter 5 Advanced Topics
5.1 Introduction 91
5.2 Graphics Libraries - - - - 92
5.3 Visualization - . . . . 92
Interactive Visualization and Computational Steering 92 Data Visualization: Dimensions and Data Types 93 Parallel Coordinates 95
5.4 Modeling and Rendering - 96
Curves and Surfaces 97 Sweep Representations 97 Instances 97 Constructive Solid Geometry 97 Procedural Models 98 Fractals 98 Particle Systems 98 Image-based Modeling and Rendering 100
5.5 Animation and Simulation 101
Physics-Based Modeling and Simulation 102 Real-time Animation and Simulation 104 The Efficiency of Modeling and Simulation 107
XÜ Contents
5.6 Virtual Reality 108
5.7 Graphics on the Internet: Web3D 110
Virtual Reality Modeling Language (VRML) 110 Java3D 110
Part II: Computer Graphics Software Tools
Chapter 6 Low-Level Graphics Libraries
6.1 Introduction 111
6.2 OpenGL and Mesa 111
6.3 Direct3D/DirectX 112
6.4 PHIGS and GKS-3D 112
6.5 QuickDraw3D andXGL 112
Chapter 7 Visualization
7.1 Introduction 113
7.2 Multipurpose Visualization Tools - - - 114
7.3 Volume Rendering . . . . . . . . . . . . . 114
7.4 Vector Field and Fluid Flow 115
7.5 Large Data Sets - - 715
Chapter 8 Modeling and Rendering
8.1 Modeling 117
Contents Xlll
8.2 Rendering - 117
8.3 Multipurpose Tools: Modeling, Rendering, and Animation 118
Chapter 9 Animation and Simulation
9.1 Animation 119
9.2 Simulation 120
Chapter 10 Virtual Reality
10.1 Virtual Reality 121
Chapter 11 Web3D Tools and Networked Environments
11.1 Web3D 123
11.2 Distributed Interactive Simulation 123
11.3 Synchronization in a DIS 124
The Clock Reckoning 125
Chapter 12 3D File Formats
12.1 Introduction - - - - - - - - - - - - - - - - - - - - 127
12.2 3D File Formats 128
12.3 3D Programming Tool Libraries 129
12.4 3D Authoring Tools 129
12.5 3D File Format Converters 129
Built-In and Plug-in VRML Exporters 130 Independent 3D File Format Converters 130
12.6 References 131
xiv Contents
Appendix: Graphics Software Tools
A.I. Graphics Tools Listed by Categories - 137
A.II. Alphabetical Listing and Description of Graphics Tools 150
^3 1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
20-sim (Simulation)
3DBuilderPro (Modeling)
3D Canvas (Modeling)
3D Choreographer (Animation)
3D Dreams/Shells 3D Author (Web3D)
3D Exploration (Web3D)
3D Grapher (Simulation)
3D ImpactPro (Web3D)
3D Instant Website (Web3D)
3D Invigorator (Modeling)
3D Magic (Web3D)
3D MeNow (Modeling)
3D Studio Max (Modeling)
3D Studio VIZ (Modeling)
3D Styler (rendering)
3D Win (File Converter)
3Danywhere (Web3D)
3DField (Visuaüzation)
3Dom (Modehng)
3DVVIEWNIX (Visuaüzation)
150
152
153
154
156
157
160
161
162
164
165
166
166
167
168
169
171
171
173
173
A
21. AC3D (Modeling) 176
Contents XV
22.
23.
24.
25.
26.
27.
28.
29.
30.
31 .
32.
33.
34.
35.
36.
37.
38.
39.
40.
41 .
42.
AccuRender (Rendering)
AccuTrans 3D (File Converter)
ACIS 3D Toolkit (Modeling)
ActiveWorlds (VR)
Active Dimension (Modeling)
Adobe Dimensions (Rendering)
AIR (Rendering)
Aladdin (Modeling)
Alice (VR)
Amapi 3D (Modeling)
Amira (Visualization)
Amorphium (Modeling)
Analyze (Visualization)
Anfy 3D (Web3D)
Anim80R (Modeling)
Animation Master (Modeling)
Animation Stand (Animation)
Arius 3D (Modeling)
ARTlantis Render (Rendering)
AVS (Visualization)
AutoCAD2000 (Modeling)
178
180
182
184
185
186
187
188
190
191
193
195
197
201
202
203
206
208
210
211
213
B
43.
44.
45.
46.
47.
48.
b3d Studio (Animation)
bCAD (Modeling)
Behemot Graphics Editor (Modeling)
Beyond 3D (Modeling)
Blender (Rendering, animation, modeling)
Blueberry (Modeling)
214
215
217
218
219
221
XVI Contents
49. BMRT (Rendering) 222
50. Body Paint 3D (Modeling) 223
51. Breeze Designer (Modeling) 225
52. Bryce 3D (Rendering, modeling, animation) 227
53.
54.
55.
56.
57.
58.
59.
60.
61 .
62.
63.
64.
Calimax Modeller (Modeling)
Carrera Studio (Modeling)
Cinema 4D (Rendering)
Clay Works (Modeling)
Corel Dream 3D (Modeling)
Cosmo Create (Web3D)
Cosmo Worlds (Web3D)
Cryonics (VR)
CrystalGraphics Power Plugin (Web3D)
Crossroads (File Converter)
Cult3D (Web3D)
CyberMotion 3D Designer (Modeling)
228
230
231
232
233
234
234
235
237
236
238
240
65.
66.
67.
68.
69.
70.
71 .
72.
73.
74.
Deep Paint 3D (Modeling)
DesignCAD 3000 (Modeling)
DesignStudio (Modeling)
Design Workshop Pro (Modeling)
Dice (Visualization)
Director 8.5 Shockwave Studio (Web3D)
DirectX/Direct3D (Low-level Library)
DIVE (VR)
DIVERSE (VR)
DMesh (Modeling)
241
243
245
246
247
247
248
251
252
253
75. Draw3D (Modeling) 255
76. Easymodel (Modeling) 256
77. Effect3D (Modeling) 257
78. Electriclmage Universe (Modeling) 258
79. Emotion 3D (Web3D) 259
80. Enliten (Visualization) 260
81. Ensight (Visualization) 262
82. EON Studio (Simulation) 264
83. Extreme 3D (Web3D) 266
84. EZ-Motion (Web3D) 267
85. FAST (Visualization) 268
86. Ferret (Visualization) 269
87. Fieldview (Visualization) 270
88. Flesh (Modeling) 271
89. Form-Z (Modeling) 272
90. Genesis3D (Simulation) 274
91 . Geometique (Modeling) 275
92. Geomview (Visualization) 276
93. GKS-3D (Low-level Library) 278
94. Giram (Modeling) 280
95. GL Studio (Simulation) 281
96. GL4Java (Low-level Library) 281
97. GNUPlot (Visualization) 283
98. Grafitti (Modeling) 284
XVÜi Contents
99. GSLib (Modeling) 285
100. Guru 3D-Converter (File Converter) 285
_
101. HotMedia (Web3D) 286
102. Houdini (Modeling) 287
103. HyperReality/HyperSpace (Web3D) 288
104. HyperFun (Modeling) 288
i 105. Internet Character Animator (Web3D) 290
106. IDL (Visualization) 291
107. Illusion (Rendering) 293
108. Image Modeler (Modeling) 294
109. Imagine (Modeling) 295
110. Infini-D (Part ofCarrera Studio) 297
111. Inspire3D (Modeling) 299
112. Insta 3D Pro (Web3D) 301
113. InterChange (File Converter) 302
114. Internet Scene Assembler (Web3D) 303
115. Internet Space Builder (Web3D) 305
116. IRIS Explorer (Visualization) 307
117. iSpace (Web 3D) 309
118. Java3D(VR) 310
119. Jet 3D (Simulation) 311
120. Jig (Rendering) 314
121. J/View 3Dpro (Visualization) 315
Contents xix
122. K-3D (Modeling) 316
123. Khoros (Visualization) 317
124.
125.
126.
127.
128.
129.
130.
131.
132.
133.
134.
LandForm (Modeling)
Lattice Designer (Modeling)
Legus3D (VR)
LightScape (Rendering)
LightWave 3D (Rendering)
Lightworks (Rendering)
Lipservice (Modeling)
LithTech (LDS) (Simulation)
LS-DYNA (Simulation)
LSSVista (Modeling)
Lume Tools (Modeling)
318
319
320
321
322
323
324
325
326
327
329
135.
136.
137.
138.
139.
140.
141.
142.
143.
144.
145.
MapRender3D (Rendering)
Materialize 3D (File Converter)
Mathematica (Visualization)
Matlab (Visualization)
Maxtraxü (Modeling)
Maya (Modeling)
Mental Ray (Rendering)
Merlin 3D (Modeling)
Mesa (Low-level Library)
Meshwork (Modeling)
MGF (Rendering)
331
332
334
334
336
338
339
340
342
343
344
XX Contents
N
146.
147.
148.
149.
150.
151.
152.
153.
154.
155.
156.
157.
158.
159.
160.
161.
162.
163.
164.
165.
MicroStation (Modeling)
MicroSystem 3D Tools (Low-level Library)
MilkShape 3D (Modeling)
MindsEye (Modeling)
Mirai (Simulation)
ModelMagic 3D (Modeling)
Molecules-3D (Modeling)
Moray (Modeling)
Motiongang (Animation)
Motivate 3D (Animation)
MR Toolkit (VR)
MultigenPro (Modeling)
Mvox (Visualization)
Natural Scene Designer (Rendering)
Ncar (Visualization)
Nemo (Web3D)
Nendo (Modeling)
Netlmmerse (Simulation)
Now3D (Modeling)
NuGraf (File Converter)
345
346
347
348
349
351
352
353
354
355
356
357
358
359
360
362
363
364
366
367
\
166. OpenDX (Visualization)
167. Open Inventar (Visualization)
168. OpenGL (Low-level Library)
169. OpenGL For Java (Low-level Library)
170. OpenGL Volumizer (Visualization)
171. OpenWorlds (Web3D)
369
369
370
281
371
372
172. Orgamca (Modeling) 374
173.
174.
175.
176.
177.
178.
179.
180.
181.
182.
183.
184.
185.
186.
187.
188.
189.
PageDive (Web3D)
Painter 3D (Modeling)
Panard Vision (Rendering)
Panorama Tools (Web3D)
Paraform Modeling)
PHIGS (Low-level Library)
PhotoModeler (Modeling)
Plot 3D (Simulation)
Polytrans (File Converter)
Poser4 (Animation)
PovLab (Modeling)
PovRay (Rendering)
Pro-Engineer (Modeling)
ProPak 3D (Web3D)
ProtoCAD (Modeling)
Pv3 (Visualization)
PV-Wave (Visualization)
375
376
377
380
381
383
385
386
387
388
389
390
392
392
394
394
396
190. Quick3D (File Converter) 396
191. QuickDraw 3D (Low-level Library) 398
192. Radiance (Rendering) 398
193. Ray Dream Studio (Part of Carrera Studio) 399
194. Raygun 3 (Rendering) 394
195. Rayshade (Rendering) 401
XXÜ Contents
196. Realax VR Studio (Modeling) 402
197. Realflow (Modeling) 402
198. RealiMation (Simulation) 404
199. Realsoft 3D (Modeling) 404
200. Reflex|Drama (Modeling) 406
201. ReelMotion (Simulation) 407
202. RenderDrive (Rendering) 409
203. RenderMan (Rendering) 409
204. RenderPark (Rendering) 411
205. RenderWare (Rendering) 412
206. Renoir (Modeling) 414
207. Rhino3D (Modeling) 415
208. Room Designer/VirtuaBD (Modeling) 417
209. ROSS (Visualization) 418
210. RXscene (Modeling) 419
211. Sart (Rendering) 420
212. STK (Visualization) 421
213. Sced (Modeling) 422
214. SciAn (Visualization) 424
215. Sculpt3D (Modeling) 426
216. Shave (Modeling) 427
217. Shout3D (Web3D) 428
218. Simply3D (Web3D) 430
219. Simul8 (Simulation) 431
220. SketchUp (Modeling) 432
221. SoftF/X (Modeling) 433
222. Softimage (Modeling) 434
Contents XXÜi
T
223. Softy 3D (Modeling) 435
224. SolidBuilder (Modeling) 436
225. SolidThinking (Modeling) 442
226. Star-CD (Visualization) 445
227. Strata 3D Pro (Modeling) 447
228. StudioTools (Modeling) 448
229. Summit3D(VR) 449
230. Superficie (Rendering) 449
231. Swift3D (Web3D) 450
232. Tecplot (Visualization) 452
233. Terragen (Rendering) 455
234. Texture Lab - Tiling Tools (Rendering) 457
235. TrueSpace (Modeling) 459
236. TurboCAD (Modeling) 459
Ü
237. UleadCool3D(Web3D) 460
238. UnrealEd (Modeling) 461
239. Unrealty(VR) 462
240. Varkon (Modeling) 464
241. Vecta3D-Max (Rendering) 466
242. VectorWorks (Modeling) 466
243. Vega (Simulation) 468
244. VFleet (Rendering) 469
245. View3D (Visualization) 470
246. Vis5D (Visualization) 472
XXIV Contents
W
X
z
247. VisAD (Visualization) 474
248. Visviva (Modeling) 477
249. VisuaB (Visualization) 479
250. VizStream (Web3D) 480
251. VolVis (Visualization) 482
252. VoxBlast (Visualization) 482
253. VP-Sculpt (Modeling) 484
254. VR Charts (Visualization) 485
255. VREK(VR) 486
256. VRML (VR) 369
257. vrTool(VR) 486
258. VTK (Visualization) 487
259. Vue dEsprit (Rendering) 489
260. Wilbur (File Format) 490
261. WorldUp (Simulation) 495
262. WorldBuilder (Modeling) 492
263. WorldToolKit (VR) 494
264. Xara 3D (Web3D) 496
265. XGL (Low-level Library) 497
266. ZBrush (Rendering) 497