没有合适的资源?快使用搜索试试~ 我知道了~
首页OpenGL超级宝典:Android 3D图形编程入门
OpenGL超级宝典:Android 3D图形编程入门
需积分: 11 1 下载量 126 浏览量
更新于2024-07-26
收藏 15.11MB PDF 举报
"OpenGL超级宝典(第四版)" 是一本深入浅出的OpenGL教程与参考书籍,适合想要学习Android 3D图形绘制的读者。本书由Richard S. Wright Jr., Benjamin Lipchak和Nicholas Haemel合著,涵盖了OpenGL的广泛主题。
OpenGL是业界广泛使用的图形库,用于在各种操作系统和平台上创建高质量的2D和3D图形。作为一款跨语言、跨平台的应用程序编程接口(API),OpenGL允许程序员直接与硬件交互,以实现高效且复杂的图形渲染。
第四版的"OpenGL超级宝典"紧跟技术发展,包括了OpenGL最新的版本特性。它不仅提供了全面的教程,帮助初学者逐步理解OpenGL的基础概念,如顶点、坐标系统、颜色、图元、深度测试、光照和纹理映射等,还深入介绍了高级主题,如着色器语言(GLSL)、帧缓冲对象(FBO)、纹理立方体、多边形剔除、混合模式以及现代OpenGL的核心模式。
本书的一个显著特点是包含了丰富的示例代码,这些代码可以帮助读者更好地理解和应用所学知识。对于每个概念和技术,作者都提供了清晰的解释和实际运行的示例,使读者能够在实践中学习和探索。此外,书中还可能涉及了现代GPU编程的关键方面,如顶点和片段着色器的编写,以及如何利用计算着色器进行数据处理。
除了基本的图形绘制,本书还可能探讨了动画、视口变换、投影和模型视图矩阵的使用,以及如何实现交互式3D应用程序。对于Android开发者,书中可能提供了将OpenGL集成到Android应用程序中的指导,包括设置OpenGL ES环境、处理触摸事件以及优化性能的技巧。
"OpenGL超级宝典(第四版)"是一本全面而详尽的资源,无论是对初学者还是有经验的开发者,都能从中受益。通过阅读此书,读者可以掌握OpenGL的核心原理,从而能够创建出令人印象深刻的2D和3D图形应用。
Color in the Real World..............................................................................186
Ambient Light....................................................................................187
Diffuse Light ......................................................................................188
Specular Light ....................................................................................188
Putting It All Together.......................................................................189
Materials in the Real World........................................................................190
Material Properties.............................................................................190
Adding Light to Materials..................................................................190
Calculating Ambient Light Effects ....................................................190
Diffuse and Specular Effects ..............................................................191
Adding Light to a Scene..............................................................................192
Enabling the Lighting........................................................................192
Setting Up Cosmic Background Radiation........................................192
Setting Material Properties ................................................................193
Using a Light Source ...................................................................................196
Which Way Is Up?.............................................................................197
Surface Normals.................................................................................197
Specifying a Normal ..........................................................................198
Unit Normals .....................................................................................201
Finding a Normal...............................................................................202
Setting Up a Source............................................................................203
Setting the Material Properties ..........................................................205
Specifying the Polygons ....................................................................205
Lighting Effects ...........................................................................................207
Specular Highlights............................................................................207
Specular Light ....................................................................................208
Specular Reflectance ..........................................................................208
Specular Exponent.............................................................................209
Normal Averaging..............................................................................211
Putting It All Together ................................................................................213
Creating a Spotlight...........................................................................214
Drawing a Spotlight...........................................................................216
Shadows.......................................................................................................221
What Is a Shadow? ............................................................................222
Squish Code .......................................................................................223
A Shadow Example ............................................................................223
Sphere World Revisited......................................................................227
Summary .....................................................................................................227
Contents xv
6 More on Colors and Materials....................................................................229
Blending ......................................................................................................229
Combining Colors .............................................................................230
Changing the Blending Equation .....................................................234
Antialiasing ........................................................................................234
Multisample .......................................................................................238
Applying Fog ...............................................................................................240
Fog Equations ....................................................................................242
Fog Coordinates.................................................................................244
Accumulation Buffer...................................................................................244
Other Color Operations..............................................................................248
Color Masking ...................................................................................248
Color Logical Operations...................................................................248
Alpha Testing .....................................................................................249
Dithering............................................................................................250
Summary .....................................................................................................250
7 Imaging with OpenGL ................................................................................251
Bitmaps........................................................................................................252
Bitmapped Data .................................................................................253
The Raster Position ............................................................................256
Pixel Packing ...............................................................................................257
Pixmaps .......................................................................................................258
Packed Pixel Formats .........................................................................260
A More Colorful Example..................................................................261
Moving Pixels Around .......................................................................265
Saving Pixels ......................................................................................266
More Fun with Pixels..................................................................................268
Pixel Zoom.........................................................................................275
Pixel Transfer .....................................................................................277
Pixel Mapping....................................................................................281
The Imaging “Subset” and Pipeline............................................................283
Color Matrix ......................................................................................288
Color Lookup.....................................................................................289
Proxies................................................................................................290
Other Operations...............................................................................291
Convolutions .....................................................................................292
Histogram ..........................................................................................297
Minmax Operations...........................................................................301
Summary .....................................................................................................301
OpenGL SuperBible, Fourth Editionxvi
8 Texture Mapping: The Basics .....................................................................303
Loading Textures.........................................................................................304
Using the Color Buffer ......................................................................307
Updating Textures..............................................................................307
Mapping Textures to Geometry ........................................................308
Texture Matrix ...................................................................................311
A Simple 2D Example .................................................................................311
Texture Environment..................................................................................316
Texture Parameters......................................................................................318
Basic Filtering.....................................................................................318
Texture Wrap .....................................................................................320
Cartoons with Texture.......................................................................321
Mipmapping ......................................................................................325
Texture Objects ...........................................................................................330
Managing Multiple Textures .............................................................331
Summary .....................................................................................................339
9 Texture Mapping: Beyond the Basics.........................................................341
Secondary Color..........................................................................................341
Anisotropic Filtering ...................................................................................344
Texture Compression ..................................................................................347
Compressing Textures........................................................................348
Loading Compressed Textures...........................................................349
Texture Coordinate Generation..................................................................350
Object Linear Mapping......................................................................354
Eye Linear Mapping...........................................................................355
Sphere Mapping.................................................................................356
Cube Mapping ...................................................................................357
Multitexture ................................................................................................362
Multiple Texture Coordinates ...........................................................363
A Multitextured Example ..................................................................364
Texture Combiners......................................................................................369
Point Sprites ................................................................................................371
Using Points.......................................................................................372
Texture Application ...........................................................................374
Point Parameters................................................................................374
Summary .....................................................................................................375
Contents xvii
10 Curves and Surfaces....................................................................................377
Built-in Surfaces ..........................................................................................378
Setting Quadric States........................................................................379
Drawing Quadrics ..............................................................................381
Modeling with Quadrics....................................................................385
Bézier Curves and Surfaces .........................................................................388
Parametric Representation.................................................................388
Evaluators...........................................................................................391
NURBS .........................................................................................................401
From Bézier to B-Splines....................................................................402
Knots ..................................................................................................402
Creating a NURBS Surface .................................................................403
NURBS Properties...............................................................................404
Defining the Surface ..........................................................................404
Trimming ...........................................................................................406
NURBS Curves....................................................................................409
Tessellation..................................................................................................409
The Tessellator ...................................................................................411
Tessellator Callbacks ..........................................................................412
Specifying Vertex Data ......................................................................413
Putting It All Together.......................................................................414
Summary .....................................................................................................419
11 It’s All About the Pipeline: Faster Geometry Throughput.........................421
Display Lists ................................................................................................422
Batch Processing ................................................................................423
Preprocessed Batches .........................................................................424
Display List Caveats...........................................................................426
Converting to Display Lists...............................................................426
Vertex Arrays ...............................................................................................428
Loading the Geometry ......................................................................432
Enabling Arrays..................................................................................432
Where’s the Data?..............................................................................433
Pull the Data and Draw .....................................................................434
Indexed Vertex Arrays .......................................................................435
Vertex Buffer Objects ..................................................................................450
Managing and Using Buffer Objects .................................................450
Back to the Thunderbird! ..................................................................452
Summary .....................................................................................................455
OpenGL SuperBible, Fourth Editionxviii
12 Interactive Graphics....................................................................................457
Selection ......................................................................................................458
Naming Your Primitives ....................................................................458
Working with Selection Mode...........................................................460
The Selection Buffer...........................................................................461
Picking ...............................................................................................464
Hierarchical Picking...........................................................................466
Feedback.............................................................................................471
The Feedback Buffer ..........................................................................471
Feedback Data....................................................................................472
Passthrough Markers .........................................................................473
A Feedback Example ...................................................................................473
Label the Objects for Feedback..........................................................473
Step 1: Select the Object....................................................................476
Step 2: Get Feedback on the Object ..................................................478
Summary .....................................................................................................480
13 Occlusion Queries: Why Do More Work Than You Need To? ...................481
The World Before Occlusion Queries .........................................................482
Bounding Boxes ..........................................................................................485
Querying the Query Object ........................................................................490
Best Practices ...............................................................................................492
Summary .....................................................................................................493
14 Depth Textures and Shadows.....................................................................495
Be That Light...............................................................................................496
Fit the Scene to the Window.............................................................496
No Bells or Whistles, Please...............................................................497
A New Kind of Texture ...............................................................................498
Size Matters........................................................................................499
Draw the Shadows First?!............................................................................500
And Then There Was Light.........................................................................501
Projecting Your Shadow Map: The “Why” .......................................501
Projecting Your Shadow Map: The “How”........................................503
The Shadow Comparison ..................................................................505
Two Out of Three Ain’t Bad........................................................................509
A Few Words About Polygon Offset ...........................................................510
Summary .....................................................................................................511
Contents xix
剩余1261页未读,继续阅读
2009-03-20 上传
2013-06-29 上传
2023-09-11 上传
2023-07-15 上传
2023-06-25 上传
2023-07-08 上传
2023-06-24 上传
2023-09-22 上传
shabijida
- 粉丝: 0
- 资源: 3
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
最新资源
- 掌握压缩文件管理:2工作.zip文件使用指南
- 易语言动态版置入代码技术解析
- C语言编程实现电脑系统测试工具开发
- Wireshark 64位:全面网络协议分析器,支持Unix和Windows
- QtSingleApplication: 确保单一实例运行的高效库
- 深入了解Go语言的解析器组合器PARC
- Apycula包安装与使用指南
- AkerAutoSetup安装包使用指南
- Arduino Due实现VR耳机的设计与编程
- DependencySwizzler: Xamarin iOS 库实现故事板 UIViewControllers 依赖注入
- Apycula包发布说明与下载指南
- 创建可拖动交互式图表界面的ampersand-touch-charts
- CMake项目入门:创建简单的C++项目
- AksharaJaana-*.*.*.*安装包说明与下载
- Arduino天气时钟项目:源代码及DHT22库文件解析
- MediaPlayer_server:控制媒体播放器的高级服务器
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功