
徐星
本书推导解释了3D世界的1的具体含义,包括3D编程最常使用的5个坐标1的意义。对于透视投影的3D坐标1,推导了用户使用的透视投影变换。原创性地提出了一个透视投影的一般模型。基于这个一般模型做了一些数学算法上的改进,得到了基于透视除法的透视投影。此外,也分析了模型视图变换,窗口变换,纹理映射等对3D世界的1的影响。对于正交投影,则分析了基于正交投影的Skia的顶点坐标,纹理坐标特点,一些高级的3D编程概念如光线追踪,延迟渲染,阴影纹理等。
基本就是基于vulkan官方的示例代码把计算机图形学的基础原理走了一遍,难能可贵的是每个公式都有自己的理解和推导,然后以输入输出加数据处理的模式角度分析图形学应用程序,顺带了解了下vulkan和opengl/webGL的几个核心对象,相对于其他大部头来说浅显易懂多了
这是本看不懂的高水平技术书...希望大神能够指点一二,讲一下看这本书的前置知识。 而对于3D编程,作者的感受是,看了图形学的书,学习了OpenGL/Vulkan编程接口,但是真正实战编程的时候,却发现不会写,也很难理解他人源码的设计逻辑。学习3D编程和学习一门编程语言的区别在于,3D编程的难点不是接口和语言本身,而是理解3D编程背后的几何数学原理。 除了数学知识,因为本书是从1开始3D图形编程,而不是从0开始,所以要求读者对OpenGL/Vulkan的编程接口有基本了解。