![计算机图形学编程(使用OpenGL和C++)](https://wfqqreader-1252317822.image.myqcloud.com/cover/518/31403518/b_31403518.jpg)
关于异步社区和异步图书
“异步社区”是人民邮电出版社旗下IT专业图书社区,致力于出版精品IT技术图书和相关学习产品,为作译者提供优质出版服务。异步社区创办于2015年8月,提供大量精品IT技术图书和电子书,以及高品质技术文章和视频课程。更多详情请访问异步社区官网https://www.epubit.com。
“异步图书”是由异步社区编辑团队策划出版的精品IT专业图书的品牌,依托于人民邮电出版社近30年的计算机图书出版积累和专业编辑团队,相关图书在封面上印有异步图书的LOGO。异步图书的出版领域包括软件开发、大数据、AI、测试、前端、网络技术等。
![](https://epubservercos.yuewen.com/1DCD2B/16998942605673106/epubprivate/OEBPS/Images/3.jpg?sign=1739500584-SpwLTHBdLtSkHQUXEr05E9jCdnluQQiy-0-bb6607c026fe7a7ff7f8515bdad80d8c)
异步社区
![](https://epubservercos.yuewen.com/1DCD2B/16998942605673106/epubprivate/OEBPS/Images/4.jpg?sign=1739500584-UDUU9keTO5zekEB9XOCm6XuyJUa6y8sv-0-1609d58235c1c37c0eac04489a050ffc)
微信服务号
![](https://epubservercos.yuewen.com/1DCD2B/16998942605673106/epubprivate/OEBPS/Images/5.jpg?sign=1739500584-84aV1ob9zT9mwnrn0BelF1FT0jUIKaKn-0-4509feae4d476183af040f0b9a7ea74c)
图2.5 改变glPointSize
![](https://epubservercos.yuewen.com/1DCD2B/16998942605673106/epubprivate/OEBPS/Images/6.jpg?sign=1739500584-jfl3QQbpG3VQYoUPDGkgs6gsr3LNdpRF-0-4a26f9d6c2aa5edb17ee7c88cf003d9c)
图2.9 光栅化(步骤1)
![](https://epubservercos.yuewen.com/1DCD2B/16998942605673106/epubprivate/OEBPS/Images/7.jpg?sign=1739500584-sr9xig9XngyHQq36h5f1FwqfZzTG8Ban-0-58c7de06ee14eb6efb11213e5e01a49b)
图2.13 片段着色器颜色变化
![](https://epubservercos.yuewen.com/1DCD2B/16998942605673106/epubprivate/OEBPS/Images/8.jpg?sign=1739500584-VBMOtmrFvoHFFjsqkcW4KEMLyLTDp1Ir-0-7c44c42dac2e3eabcf04b1f2855586ce)
图4.3 程序4.1的输出。从(0,0,8)看位于(0,-2,0)的红色立方体
![](https://epubservercos.yuewen.com/1DCD2B/16998942605673106/epubprivate/OEBPS/Images/9.jpg?sign=1739500584-K3YPkjoR7SjS0cQ4FG9Tw6S7YejipS2a-0-ccd74d1b9f7a9160a7bb3c25abf35a0d)
图4.6 有插值颜色的立方体
![](https://epubservercos.yuewen.com/1DCD2B/16998942605673106/epubprivate/OEBPS/Images/10.jpg?sign=1739500584-NlZPkDkESKCZUI0pHzQ8LD9CoDfxytIe-0-5d47a35f4b55460b32dbaa70ad16c0ad)
图4.15 Z冲突示例
![](https://epubservercos.yuewen.com/1DCD2B/16998942605673106/epubprivate/OEBPS/Images/11.jpg?sign=1739500584-ij3MzGSCxY6gti24WS7jlZenljSJhHPc-0-105a6bbcef6fdd0999501fdc9ae11290)
图5.9 不充分采样造成的叠影
![](https://epubservercos.yuewen.com/1DCD2B/16998942605673106/epubprivate/OEBPS/Images/12.jpg?sign=1739500584-SBZWOQfwI6aMH3x84hYnqZNd3Z2gJ3x3-0-276d5bb9ab193147cb2982d28344c6f7)
图5.13 为图片生成多级渐远纹理
![](https://epubservercos.yuewen.com/1DCD2B/16998942605673106/epubprivate/OEBPS/Images/13.jpg?sign=1739500584-FjiGLPhCziZlbSxpLvmtFXxUOGEOWsmo-0-be69998a14e83a500e46b12db0d7c7eb)
图5.18 使用不同环绕选项的金字塔材质贴图
![](https://epubservercos.yuewen.com/1DCD2B/16998942605673106/epubprivate/OEBPS/Images/14.jpg?sign=1739500584-xjkgRTnn6fwg50e0R8VXRI3G1qoORAUL-0-8bd63c76ccfa305b63711a54692c87ab)
图6.3 将顶点组合成三角形
![](https://epubservercos.yuewen.com/1DCD2B/16998942605673106/epubprivate/OEBPS/Images/15.jpg?sign=1739500584-rk5VJ2qsnqJhKrfPe2OsXVyDgNsVQ4j4-0-08b0dc309b51977e6960b6967a9d8936)
图6.6 第i个切片中的第j个顶点的索引序号(n =每个切片的顶点数)
![](https://epubservercos.yuewen.com/1DCD2B/16998942605673106/epubprivate/OEBPS/Images/16.jpg?sign=1739500584-2cuWuaWlB5NQU2QyLdrGhunnDv2kOqeF-0-fd44af4d31a990654ef67278eb075623)
图7.1 ADS光照分量
![](https://epubservercos.yuewen.com/1DCD2B/16998942605673106/epubprivate/OEBPS/Images/17.jpg?sign=1739500584-UcX2Yfq9XJL9IiDgI7dw0Ey0hciBYHAs-0-3b18d49b10d614658b223cd8d6f3249e)
图7.16 Phong着色的外部模型
![](https://epubservercos.yuewen.com/1DCD2B/16998942605673106/epubprivate/OEBPS/Images/18.jpg?sign=1739500584-C456IDS5xFOVZmtQKDBPQQyuCsvi7wBT-0-eded459b07b38e14fd5b741aca86037b)
图7.17 结合光照与纹理
![](https://epubservercos.yuewen.com/1DCD2B/16998942605673106/epubprivate/OEBPS/Images/19.jpg?sign=1739500584-OIHOsU5EuKqMAbHBiTAGtYZldBKzMtId-0-e5dd75350c8d02044bb2ccada7eb5d01)
图8.10 第1轮:场景(左)和从光源视角渲染的场景(右)
![](https://epubservercos.yuewen.com/1DCD2B/16998942605673106/epubprivate/OEBPS/Images/20.jpg?sign=1739500584-C8vvIQtgbi3L4GK0lloMk0dz11v8daeC-0-41af4e7c68cbf8874bb70878409a8b01)
图8.19 单像素PCF采样
![](https://epubservercos.yuewen.com/1DCD2B/16998942605673106/epubprivate/OEBPS/Images/21.jpg?sign=1739500584-OA6PFVcpqBrxtlRtLZEkaRdyMDTQgJt8-0-e4d54e9b267c5449c2242d593528388a)
图8.22 抖动的4像素PCF采样示例
![](https://epubservercos.yuewen.com/1DCD2B/16998942605673106/epubprivate/OEBPS/Images/22.jpg?sign=1739500584-xwYB5DiyxcU7DBSpGCQ76NjM9dQSAoQa-0-a920e4d7f858da10531a90157264617b)
图8.23 抖动的4像素PCF采样(4种偏移模式)
![](https://epubservercos.yuewen.com/1DCD2B/16998942605673106/epubprivate/OEBPS/Images/23.jpg?sign=1739500584-k2jd4pfklhov6zyUdLIK5PffO5qP1wrh-0-3959709c81618e4565116897fe4f99e7)
图9.10 用于创建反射环面的环境贴图示例
![](https://epubservercos.yuewen.com/1DCD2B/16998942605673106/epubprivate/OEBPS/Images/24.jpg?sign=1739500584-OoebQ1GtZZ1N4MeFt0B4mYamhWYSWN1H-0-2d91e941649e939bd5190a6ba55d6637)
图10.14 地形,在顶点着色器中进行高度贴图
![](https://epubservercos.yuewen.com/1DCD2B/16998942605673106/epubprivate/OEBPS/Images/25.jpg?sign=1739500584-ATooYiEekylRV3Xc3rbyUVSWs1JJBjzo-0-0ade284687564a292fac5e4eaf567b8c)
图11.6 细分三次贝塞尔曲线
![](https://epubservercos.yuewen.com/1DCD2B/16998942605673106/epubprivate/OEBPS/Images/26.jpg?sign=1739500584-FzMhyGxs6diolwR6Jtxc0D2VVj9uomXu-0-14893206d220f1038784a38d740eda19)
图11.9 二次贝塞尔控制网格和相应的表面
![](https://epubservercos.yuewen.com/1DCD2B/16998942605673106/epubprivate/OEBPS/Images/27.jpg?sign=1739500584-UvMkjrwy2PdpJO6AeU6G7lMy4wT9nsSA-0-3eff64f47c01956cc65125c9548deef4)
图11.10 三次贝塞尔控制网格和相应的曲面
![](https://epubservercos.yuewen.com/1DCD2B/16998942605673106/epubprivate/OEBPS/Images/28.jpg?sign=1739500584-4DdmQKdHz8ETdbxMXT6T710rpNlOfFJg-0-4a26efa709247746384e681a1cef38f4)
图12.1 Tessellator三角形网格输出
![](https://epubservercos.yuewen.com/1DCD2B/16998942605673106/epubprivate/OEBPS/Images/29.jpg?sign=1739500584-sBmqnHnqSrrgqS4KnLFVhMJ3vWEes52u-0-46bef08add4c8ecddad30ea24253f72b)
图14.1 雾:基于距离的混合
![](https://epubservercos.yuewen.com/1DCD2B/16998942605673106/epubprivate/OEBPS/Images/30.jpg?sign=1739500584-pVQaOnHs9TgJw5A9Atn5rdmvVtYh1bFV-0-b465518f6d832c58bf0a0dda26decb4e)
图14.2 雾的例子
![](https://epubservercos.yuewen.com/1DCD2B/16998942605673106/epubprivate/OEBPS/Images/31.jpg?sign=1739500584-aOPFOMnnGJFXpBhIdImKeoZR8Oubrb9b-0-d36e86f8f0b25601aeeb3b8c75371c40)
图14.8 条纹3D纹理图案
![](https://epubservercos.yuewen.com/1DCD2B/16998942605673106/epubprivate/OEBPS/Images/32.jpg?sign=1739500584-7VL5gpflnzUx7v3ELk0Cowa4QeKwmAgN-0-4bd2e26f056e3425a5382ad1b242f83a)
图14.9 3D条纹纹理的龙对象
![](https://epubservercos.yuewen.com/1DCD2B/16998942605673106/epubprivate/OEBPS/Images/33.jpg?sign=1739500584-7EekGxCM5U3EJ7OZTKq4NWCInoxtpcPT-0-ecc8f74860d418ac71d811241a9ffad8)
图14.17 3D噪声图纹理的龙——3个大理石和1个玉质
![](https://epubservercos.yuewen.com/1DCD2B/16998942605673106/epubprivate/OEBPS/Images/34.jpg?sign=1739500584-Ne5qqvQV6RDUmEJLRfynX3ab6Whjs9aR-0-57d5cfbb128b63ea2ff4baf02a70d9c6)
图14.18 为3D木材纹理创建年轮
![](https://epubservercos.yuewen.com/1DCD2B/16998942605673106/epubprivate/OEBPS/Images/35.jpg?sign=1739500584-myl88XTXfF4tHUekKyUMeD9N1oLkwTJI-0-3b6bcf634033ae6cd609c8627f08fc04)
图14.21 云雾缭绕纹理的天幕
![](https://epubservercos.yuewen.com/1DCD2B/16998942605673106/epubprivate/OEBPS/Images/36.jpg?sign=1739500584-qoTUuJkBS4OBTlH640ZebnaEDu3iweG0-0-59bc98bdd6b9f07305eafcf4e673f41a)
图14.22 指数云纹理的天幕