图形学
3D数学基础
3D Math Primer for Graphics and Game Development Douban
Fletcher Dunn / Ian Parberry translator: 史银雪 / 陈洪 … publishing house: 清华大学出版社 2005 - 7
本书主要研究隐藏在3D几何世界背后的数学问题。3D数学是一门与计算几何相关的学科,计算几何则是研究怎样用数值方法解决几何问题的学科。3D数学和计算几何广泛应用在那些使用计算机来模拟3D世界的领域,如图形学、游戏、仿真、机器人技术、虚拟现实和动画等。 本书涵盖了理论知识和C++实现代码。理论部分解释3D中数学和几何之间的关系,列出的技巧与公式可以当做参考手册以方便查找。实现部分演示了怎样用代码来实现这些理论概念。编程示例语言使用的是C++,实际上,本书的理论知识能通过任何编程语言实现。
Read
Nov. 11, 2024
补记,不如新版(白色雪山封面那本)内容多,依旧是基础线代
数学 图形学
Android三维程序设计
Douban
Prateek Mehta translator: 周建娟 publishing house: 清华大学出版社 2015
本书详细阐述了与 Android移动设备以及 OpenGL ES开发相关的基本解决方案,主要包括 ES 2.0基础知识、3D建模、 Blender软件应用、纹理和着色、 Tank Fence游戏开发等内容。此外,本书还提供了丰富的示例以及代码,以帮助读者进一步理解相关方案的实现过程。 本书适合作为高等院校计算机及相关专业的教材和教学参考书,也可作为相关开发人员的自学教材和参考手册。
OpenGL ES应用开发实践指南
OpenGL ES 2 for Android Douban
博泽勒尔 (Kevin Brothaler) translator: 刘力平 / 苏统华 publishing house: 机械工业出版社 2014 - 9
本书的主要内容: 在本书第一部分,会学习如何创建一个简单的空气曲棍球游戏,包括触控、纹理和基本原理。这个项目会教你如何成功地初始化OpenGL并将数据发送到屏幕上,以及如何使用基本的向量和矩阵数学创建三维世界。你也会学到Android的许多特定细节,比如在Dalvik虚拟机和本地环境之间编码数据(marshal data)以及如何在主线程和渲染线程间安全地传送数据。 在本书第二部分,你就可以在第一部分学习到的知识的基础上开始搭建三维世界中的效果,比如光照和地形渲染,接下来还会学习如何创建可以运行在Android主屏幕(home screen)上的动态壁纸。 本书的读者对象: 如果对在Android上开发更高级的图形程序感兴趣,本书就是为你所写的。本书假定你有一些编程经验,包括Java和Android的经验。
图形着色器
Douban
贝利 (Mike Bailey) / 坎宁安 (Steve Cunningham) translator: 刘鹏 publishing house: 清华大学出版社 2013 - 4
本书详细阐述了与着色器程序设计相关的高效解决方案及相应的数据结构和算法,主要包括固定功能管线、OpenGL着色器的发展、着色器基本概念、使用glman、GLSL着色器语言、光照、顶点着色器、片元着色器和表面外观、片元着色器中的表面纹理、噪声、基于着色器的图像处理、几何着色器的概念和示例、细分着色器、GLSL API、基于着色器的科学可视化计算以及着色器应用等内容。此外,本书还提供了相应的算法、代码以及伪代码,以帮助读者进一步理解相关方案的实现过程。 本书适合作为高等院校计算机及相关专业的教材和教学参考书,也可作为相关开发人员的自学教材和参考手册。
Read
April 28, 2023
绿色兔子盗版,倒是给 shaderfrog 里跑完了大部分案例。。。
图形学 编程
OpenGL着色语言
OpenGL Shading Language Douban
罗斯特 translator: 天宏工作室 publishing house: 人民邮电 2006 - 10
《OpenGL着色语言》要求读者需要具有一定的数学知识,适合有兴趣编写着色器的应用程序开发人员,可作为GLSL开发者的参考手册。不论专家或着色器编程初学者,都能在《OpenGL着色语言》中发现所需的财富。OpenGL着色语言是一种用于OpenGL的高级过程着色语言,它是近年来图形编程领域中出现的最重要的新型开发技术。OpenGL是业界领先的跨平台3D图形API,而OpenGL着色语言允许开发人员控制图形处理管理线中最重要的阶段。 《OpenGL着色语言》全面覆盖从算法到API,书中更含丰富的API函数参考及顶级的案例分析。全书首先阐述了这种高级编程语言的语法和语义,在此基础上,详尽介绍了一系列着色器实例,同时对底层算法进行了解释,透析从固定功能图形硬件到可编程图形硬件的新时代转变,探究使用新的OpenGL函数调用来创建和操作着色器的方法,最后将该语言与其他著名的商业着色语言进行了比较。
Read
Aug. 1, 2017
能感觉得到是翻译问题,书确实好书,给出的 Shader 优化套路至今不过时。前半部分的渲染管线,讲的过于敷衍。后半部分的可编程着色器部分讲的倒是不错。
图形学 编程
流体动画的计算艺术
Douban
【加拿大】Jos Stam translator: 叶军涛 / 杨旭波 2018 - 7
流体模拟是在现代游戏开发中生成逼真流体动画的计算机图形技术。《流体动画的计算艺术》解读了并不需要高深物理或数学知识就能开发丰富视觉特效的流体动画技术,讲述了如何通过计算机代码以有趣的方式创建如水、烟雾、火焰和爆炸等效果的流体动画。 《流体动画的计算艺术》介绍了驱动流体动画技术发展的众多概念,以及流体计算的历史背景,涵盖了许多研究领域,包括稳定的流体模拟、曲面流和流的控制。对有抱负的程序员来说,本书非常适合作为学习流体动画程序开发的起点
Read
Nov. 18, 2021
走马观花 介绍了流体运动的基本管理 和其前置数学知识 需要写码验证。全书前置铺垫太多,终点却又虎头蛇尾,可能是功力不够吧
图形学 编程
Computer Animation, Third Edition
Douban
Parent, Rick 2012 - 9
Driven by demand from the entertainment industry for better and more realistic animation, technology continues to evolve and improve. The algorithms and techniques behind this technology are the foundation of this comprehensive book, which is written to teach you the fundamentals of animation programming. In this third edition, the most current techniques are covered along with the theory and high-level computation that have earned the book a reputation as the best technically-oriented animation resource. Key topics such as fluids, hair, and crowd animation have been expanded, and extensive new coverage of clothes and cloth has been added. New material on simulation provides a more diverse look at this important area and more example animations and chapter projects and exercises are included. Additionally, spline coverage has been expanded and new video compression and formats (e.g., iTunes) are covered. This title includes companion site with contemporary animation examples drawn from research and entertainment, sample animations, and example code. It describes the key mathematical and algorithmic foundations of animation that provide you with a deep understanding and control of technique. It includes expanded and new coverage of key topics including: fluids and clouds, cloth and clothes, hair, and crowd animation. It explains the algorithms used for path following, hierarchical kinematic modelling, rigid body dynamics, flocking behaviour, particle systems, collision detection, and more.
Read
May 19, 2023
基本上从低阶到高阶,低阶把 GUI 工程中动画技术点的原理(不是具体技术、框架使用什么的)讲明白了,高阶的话也就是个简介,算是比较不错的知识树了
图形学 2020需读 编程
Java动画、图形和极富客户端效果开发
Douban
Chet Haase / Romain Guy translator: 很多 publishing house: 机械工业出版社 2008 - 5
《Java动画、图形和极富客户端效果开发》是一本关于利用图形和动画效果创建更好、更有效和更酷的桌面应用程序的书。《Java动画、图形和极富客户端效果开发》讨论Java基本原理、Swing、Java2D、图形、图形用户界面(GUI)、动画、性能和基于这些基本原理的用于创建漂亮应用程序的高级效果。《Java动画、图形和极富客户端效果开发》第一部分讲述Java图形和用户界面编程的基本概念。第二部分讲述Java2D和Swing中创建极富界面时有用的更多高级主题。第三部分讲述动画的基本原理。第四部分介绍极富客户端效果开发及示例。
Read
Oct. 12, 2022
Romian Guy 算是 Android 体验提升的重要人物之一,他把它的这套 Java UI 构建理念带到了 Android,对比本书构建 UI 和 iOS 的构建 UI 方式,我们就知道一套合理、好用、边缘情况思考详尽的 UI 框架对于开发者是多么的重要。感谢 08 年这些筚路蓝缕的前辈。。。
图形学 编程
Game Engine Black Book: Doom
Douban
Fabien Sanglard publishing house: CreateSpace Independent Publishing Platform 2018
Read
May 17, 2023
非常非常非常美妙的阅读体验,3D 图形游戏早期一些效果的 hack 实现方法,看起来大呼过瘾,“原来是这样”“这也行”。游戏发展越来越快,细分和深度也不断增加,有时候花大量时间只是实现一个特效。而早期不同,阅读此书能感受到上古大神的编程巧思
也可以配合 https://www.youtube.com/@decino 的视频食用,除了此书提到的,还从源码提炼了很多细节
图形学 编程
May 17, 2023 Review UltraViolence - a review of Game Engine Black Book: Doom
Game Engine Black Book: Wolfenstein 3D
Douban
Fabien Sanglard publishing house: CreateSpace Independent Publishing Platform 2017 - 9
How was Wolfenstein 3D made and what were the secrets of its speed? How did id Software manage to turn a machine designed to display static images for word processing and spreadsheet applications into the best gaming platform in the world, capable of running games at seventy frames per seconds? If you have ever asked yourself these questions, Game Engine Black Book is for you. This is an engineering book. You will not find much prose in here (the author’s English is broken anyway.) Instead, this book has only bit of text and plenty of drawings attempting to describe in great detail the Wolfenstein 3D game engine and its hardware, the IBM PC with an Intel 386 CPU and a VGA graphic card. Game Engine Black Book details techniques such as raycasting, compiled scalers, deferred rendition, VGA Mode-Y, linear feedback shift register, fixed point arithmetic, pulse width modulation, runtime generated code, self-modifying code, and many others tricks. Open up to discover the architecture of the software which pioneered the First Person Shooter genre.
Read
May 17, 2023
对图形的渴求是无限的,然而时间是有限的,就导致了机能也是有限的,如何在有限机能下将图形效果最优化的思路值得学习,虽然方法已经过时
图形学 编程
May 17, 2023 Review 1992年,德军总部 - a review of Game Engine Black Book: Wolfenstein 3D
Foundations of Physically Based Modeling and Animation
Douban
Donald H. House / John C. Keyser publishing house: A K Peters/CRC Press 2017 - 1
Emphasizes the underlying concepts of the field, and is not tied to any particular software package, language, or API. Develops concepts in mathematics, physics, numerical methods, and software design in a highly integrated way, enhancing both motivation and understanding. Progressively develops the material over the book, starting from very basic techniques, and building on these to introduce topics of increasing complexity. Motivates the topics by tying the underlying physical and mathematical techniques directly to applications in computer animation.
Read
June 4, 2023
章4 开始的 粒子系统极为精彩,从非交互的几种modeling 到可交互粒子系统的几种“树”的甄别:kd 八叉 均匀分割,这里补充bsp和 bvh 树,章七的数值积分部分,讲开了欧拉 rk 积分,管中窥豹,结合google java 源码,又有泰勒级数因其高性能在现代图形框架中的应用,联系到现代 gui 系统中的动画部分的优化。章八简单讲解了弹簧形变系统的力分析,拓展出的 ffd(siggraph 86) 方法,章13 开始的流体也很出彩,然而不如一些网络结合代码探讨,欧拉关心网格状态,拉格朗日关心被切割后的粒子,sph 部分并没有仔细探索表面构建和张力形成,flip借助粒子到网格再到粒子关注粒子本身,过程中补习的shadertoy 和 webgl 案例也很有趣,有机会写点笔记,此书值得一写
图形学 编程
Mathematics for 3D Game Programming and Computer Graphics, 3rd Edition
Douban
Eric Lengyel publishing house: Course Technology PTR 2011 - 6
This updated third edition addresses the mathematical skills that a programmer needs to develop a 3D game engine and computer graphics for professional-level games. "Mathematics For 3D Game Programming And Computer Graphics, Third Edition" is suitable for advanced programmers who are experienced with C++, DirectX, or OpenGL. The book begins at a fairly basic level, covering areas such as vector geometry and linear algebra, and then progresses to more advanced topics in 3D game programming such as illumination and visibility determination. It discusses the math first; then it presents how to translate the math into programs. By providing the math behind the effect, screenshots of the results, and samples of code that translate the math so that the effect is achieved, readers get the full story rather than only a mathematical explanation or a set of code samples that are not clearly drawn from mathematical expressions. With this revised edition, almost every chapter will provide a programming example taken directly from a real-world game programming context, and based on programs that have been written and used in game engine development.
The Nature of Code
Douban Goodreads
Daniel Shiffman publishing house: The Nature of Code 2012 - 12
How can we capture the unpredictable evolutionary and emergent properties of nature in software? How can understanding the mathematical principles behind our physical world help us to create digital worlds? This book focuses on a range of programming strategies and techniques behind computer simulations of natural systems, from elementary concepts in mathematics and physics to more advanced algorithms that enable sophisticated visual results. Readers will progress from building a basic physics engine to creating intelligent moving objects and complex systems, setting the foundation for further experiments in generative design. Subjects covered include forces, trigonometry, fractals, cellular automata, self-organization, and genetic algorithms. The book's examples are written in Processing, an open-source language and development environment built on top of the Java programming language. On the book's website (http://www.natureofcode.com), the examples run in the browser via Processing's JavaScript mode.
Real-Time Rendering, Third Edition
Douban
Tomas Akenine-Moller / Eric Haines … publishing house: A K Peters/CRC Press 2008 - 7
Thoroughly revised, this third edition focuses on modern techniques used to generate synthetic three-dimensional images in a fraction of a second. With the advent or programmable shaders, a wide variety of new algorithms have arisen and evolved over the past few years. This edition discusses current, practical rendering methods used in games and other applications. It also presents a solid theoretical framework and relevant mathematics for the field of interactive computer graphics, all in an approachable style.
全局光照技术
Douban
秦春林 publishing house: 电子科技大学出版社 2018 - 4
《全局光照技术:从离线到实时渲染》是一本聚焦于渲染领域的计算机图形学图书,它同时包含了离线和实时渲染的内容,探讨了渲染中最常用的约十种全局光照技术的概念,原理以及相互之间的联系,并以这些全局光照技术为线索介绍了大量计算机图形学相关的基础知识,全书约1000页左右的篇幅,是国内该领域较少的专著之一。
GPU精粹3
GPU Gems 3 Douban
阮亚 translator: 杨柏林 / 陈根浪 … publishing house: 清华大学出版社 2010 - 6
《GPU精粹3》是GPU精粹系列畅销书的第三卷,展示了当今最前沿的图形处理单元(GPU)编程技术。现代GPU的可编程性让开发者不仅可以在自己的岗位上迅速脱颖而出,更使得他们可以在非图形应用程序中运用GPU的卓越处理能力,例如,物理仿真、金融分析,甚至是病毒检测——尤其是在cuDA体系结构下。图形学仍然是GPU主要应用领域,通过学习本书,读者会惊喜地发现一些最新的算法,使用它们可以创建非常真实的角色,实现更逼真的光照效果,以及完成绘制后的混合效果。
3D Game Engine Design, Second Edition
Douban
David H. Eberly publishing house: Morgan Kaufmann 2006 - 11
A major revision of the international bestseller on game programming! Graphics hardware has evolved enormously in the last decade. Hardware can now be directly controlled through techniques such as shader programming, which requires an entirely new thought process of a programmer. 3D Game Engine Design, Second Edition shows step-by-step how to make a shader-based graphics engine and how to tame the new technology. Much new material has been added, including more than twice the coverage of the essential techniques of scene graph management, as well as new methods for managing memory usage in the new generation of game consoles and portable game players. There are expanded discussions of collision detection, collision avoidance, and physics - all challenging subjects for developers.