├── LICENSE └── README.md /LICENSE: -------------------------------------------------------------------------------- 1 | CC0 1.0 Universal 2 | 3 | Statement of Purpose 4 | 5 | The laws of most jurisdictions throughout the world automatically confer 6 | exclusive Copyright and Related Rights (defined below) upon the creator and 7 | subsequent owner(s) (each and all, an "owner") of an original work of 8 | authorship and/or a database (each, a "Work"). 9 | 10 | Certain owners wish to permanently relinquish those rights to a Work for the 11 | purpose of contributing to a commons of creative, cultural and scientific 12 | works ("Commons") that the public can reliably and without fear of later 13 | claims of infringement build upon, modify, incorporate in other works, reuse 14 | and redistribute as freely as possible in any form whatsoever and for any 15 | purposes, including without limitation commercial purposes. These owners may 16 | contribute to the Commons to promote the ideal of a free culture and the 17 | further production of creative, cultural and scientific works, or to gain 18 | reputation or greater distribution for their Work in part through the use and 19 | efforts of others. 20 | 21 | For these and/or other purposes and motivations, and without any expectation 22 | of additional consideration or compensation, the person associating CC0 with a 23 | Work (the "Affirmer"), to the extent that he or she is an owner of Copyright 24 | and Related Rights in the Work, voluntarily elects to apply CC0 to the Work 25 | and publicly distribute the Work under its terms, with knowledge of his or her 26 | Copyright and Related Rights in the Work and the meaning and intended legal 27 | effect of CC0 on those rights. 28 | 29 | 1. Copyright and Related Rights. A Work made available under CC0 may be 30 | protected by copyright and related or neighboring rights ("Copyright and 31 | Related Rights"). Copyright and Related Rights include, but are not limited 32 | to, the following: 33 | 34 | i. the right to reproduce, adapt, distribute, perform, display, communicate, 35 | and translate a Work; 36 | 37 | ii. moral rights retained by the original author(s) and/or performer(s); 38 | 39 | iii. publicity and privacy rights pertaining to a person's image or likeness 40 | depicted in a Work; 41 | 42 | iv. rights protecting against unfair competition in regards to a Work, 43 | subject to the limitations in paragraph 4(a), below; 44 | 45 | v. rights protecting the extraction, dissemination, use and reuse of data in 46 | a Work; 47 | 48 | vi. database rights (such as those arising under Directive 96/9/EC of the 49 | European Parliament and of the Council of 11 March 1996 on the legal 50 | protection of databases, and under any national implementation thereof, 51 | including any amended or successor version of such directive); and 52 | 53 | vii. other similar, equivalent or corresponding rights throughout the world 54 | based on applicable law or treaty, and any national implementations thereof. 55 | 56 | 2. Waiver. To the greatest extent permitted by, but not in contravention of, 57 | applicable law, Affirmer hereby overtly, fully, permanently, irrevocably and 58 | unconditionally waives, abandons, and surrenders all of Affirmer's Copyright 59 | and Related Rights and associated claims and causes of action, whether now 60 | known or unknown (including existing as well as future claims and causes of 61 | action), in the Work (i) in all territories worldwide, (ii) for the maximum 62 | duration provided by applicable law or treaty (including future time 63 | extensions), (iii) in any current or future medium and for any number of 64 | copies, and (iv) for any purpose whatsoever, including without limitation 65 | commercial, advertising or promotional purposes (the "Waiver"). Affirmer makes 66 | the Waiver for the benefit of each member of the public at large and to the 67 | detriment of Affirmer's heirs and successors, fully intending that such Waiver 68 | shall not be subject to revocation, rescission, cancellation, termination, or 69 | any other legal or equitable action to disrupt the quiet enjoyment of the Work 70 | by the public as contemplated by Affirmer's express Statement of Purpose. 71 | 72 | 3. Public License Fallback. Should any part of the Waiver for any reason be 73 | judged legally invalid or ineffective under applicable law, then the Waiver 74 | shall be preserved to the maximum extent permitted taking into account 75 | Affirmer's express Statement of Purpose. In addition, to the extent the Waiver 76 | is so judged Affirmer hereby grants to each affected person a royalty-free, 77 | non transferable, non sublicensable, non exclusive, irrevocable and 78 | unconditional license to exercise Affirmer's Copyright and Related Rights in 79 | the Work (i) in all territories worldwide, (ii) for the maximum duration 80 | provided by applicable law or treaty (including future time extensions), (iii) 81 | in any current or future medium and for any number of copies, and (iv) for any 82 | purpose whatsoever, including without limitation commercial, advertising or 83 | promotional purposes (the "License"). The License shall be deemed effective as 84 | of the date CC0 was applied by Affirmer to the Work. Should any part of the 85 | License for any reason be judged legally invalid or ineffective under 86 | applicable law, such partial invalidity or ineffectiveness shall not 87 | invalidate the remainder of the License, and in such case Affirmer hereby 88 | affirms that he or she will not (i) exercise any of his or her remaining 89 | Copyright and Related Rights in the Work or (ii) assert any associated claims 90 | and causes of action with respect to the Work, in either case contrary to 91 | Affirmer's express Statement of Purpose. 92 | 93 | 4. Limitations and Disclaimers. 94 | 95 | a. No trademark or patent rights held by Affirmer are waived, abandoned, 96 | surrendered, licensed or otherwise affected by this document. 97 | 98 | b. Affirmer offers the Work as-is and makes no representations or warranties 99 | of any kind concerning the Work, express, implied, statutory or otherwise, 100 | including without limitation warranties of title, merchantability, fitness 101 | for a particular purpose, non infringement, or the absence of latent or 102 | other defects, accuracy, or the present or absence of errors, whether or not 103 | discoverable, all to the greatest extent permissible under applicable law. 104 | 105 | c. Affirmer disclaims responsibility for clearing rights of other persons 106 | that may apply to the Work or any use thereof, including without limitation 107 | any person's Copyright and Related Rights in the Work. Further, Affirmer 108 | disclaims responsibility for obtaining any necessary consents, permissions 109 | or other rights required for any use of the Work. 110 | 111 | d. Affirmer understands and acknowledges that Creative Commons is not a 112 | party to this document and has no duty or obligation with respect to this 113 | CC0 or use of the Work. 114 | 115 | For more information, please see 116 | 117 | -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- 1 | # fun-with-graphics 2 | 这里整理了图形学相关的高校课程、书籍、教程、文章、博客、资源、开源项目。 3 | 4 | ## Rendering 5 | 6 | | Courses | | 7 | | ------------------------------------------------------------ | ------------------------------------------------------------ | 8 | | [TU Wien Rendering/Ray Tracing Course](https://www.cg.tuwien.ac.at/courses/Rendering/VU.SS2018.html)
([YouTube](https://www.youtube.com/watch?v=pjc1QAI6zS0&list=PLujxSBD-JXgnGmsn7gEyN28P1DnRZG7qi), [哔哩哔哩](https://www.bilibili.com/video/av39918593)) | 一门关于真实感渲染、光线追踪和全局光照技术的课程 | 9 | | [Computer Graphics](http://15462.courses.cs.cmu.edu/spring2019/) | CMU 15-462/662 | 10 | | [COS 426 Computer Graphics](https://www.cs.princeton.edu/courses/archive/spring14/cos426/syllabus.php) | Princeton COS 426: Computer Graphics (a bit more about the fundamental theory behind CG.) | 11 | | [COS 526 Advanced Computer Graphics](https://www.cs.princeton.edu/courses/archive/fall14/cos526/syllabus.php) | Princeton COS 426: Advanced Computer Graphics. | 12 | | [Image Synthesis Techniques](http://graphics.stanford.edu/courses/cs348b/) | Stanford CS348b
This course provides a broad overview of the theory and practice of making photo-realistic imagery. | 13 | | [Introduction to Computer Graphics and Imaging](https://web.stanford.edu/class/cs148/lectures.html) | Stanford CS148 | 14 | | [Real-Time High Quality Rendering](http://www.cs.ucsb.edu/~lingqi/teaching/cs291a.html) | UCSB CS291A
Topics will cover programmable shaders, real-time shadows, interactive global illumination, image-based rendering, precomputed rendering, adaptive sampling and reconstruction, and real-time ray tracing. | 15 | | [Physically Based Rendering and Material Appearance Modelling](http://courses.compute.dtu.dk/02941/) | DTU 02941 | 16 | | [Pixar in a Box: Rendering](https://www.khanacademy.org/partner-content/pixar/rendering) | Pixar 出品,渲染的「科普向」教程 | 17 | 18 | | Books | | 19 | | ------------------------------------------------------------ | ------------------------------------------------------------ | 20 | | [milo 的豆列](https://book.douban.com/people/miloyip/doulists) | 21 | | 《全局光照技术》
([豆瓣读书](https://book.douban.com/subject/30264315/)) | 同时包含了离线和实时渲染的内容
探讨了渲染中最常用的约十种全局光照技术
并以其为线索介绍了大量计算机图形学相关的基础知识 | 22 | | 《计算机图形学:原理及实践》
([豆瓣读书](https://book.douban.com/subject/30402778/), [book website](http://dept.cs.williams.edu/~morgan/cgpp/about.xml)) | 本书属于第二代图形学教科书
作者并不将之前的所有工作全部认定为天然合理的
而是按今天的理解重新审视它们
进而更新其原有的陈述方式 | 23 | | 《Real-Time Rendering, Fourth Edition》
([豆瓣读书](https://book.douban.com/subject/30296179/), [book website](http://www.realtimerendering.com/)) | Real-Time Rendering 实时渲染
绝世武功的**目录**
Chapter25&26可以在配套网站上免费下载 | 24 | | 《Physically Based Rendering: From Theory To Implementation, Third Edition》
([豆瓣读书](https://book.douban.com/subject/26736280/), [Read for free](http://www.pbr-book.org/)) | Offline Rendering 离线渲染
代码完备,读练结合,何况免费 | 25 | | 《Advanced Global Illumination》
([豆瓣读书](https://book.douban.com/subject/2751153/), [authors' site](http://graphics.cs.kuleuven.be/publications/AGI2E/index.html), [Google Books sample](https://books.google.com/books?id=TB1jDAAAQBAJ&printsec=frontcover)) | 概述了全局光照有关理论
介绍了几种全局光照技术(有些现已过时) | 26 | | 《Ray Tracing in One Weekend》
([Amazon](https://smile.amazon.com/Ray-Tracing-Weekend-Minibooks-Book-ebook/dp/B01B5AODD8?tag=realtimerenderin), [code](https://github.com/petershirley/raytracinginoneweekend/releases), [download for free](http://www.realtimerendering.com/raytracing/Ray%20Tracing%20in%20a%20Weekend.pdf)) | [Peter Shirley](https://twitter.com/Peter_shirley)'s Ray Tracing 三部曲其一 | 27 | | 《Ray Tracing: the Next Week》
([Amazon](https://smile.amazon.com/Ray-Tracing-Next-Week-Minibooks-ebook/dp/B01CO7PQ8C?tag=realtimerenderin), [code](https://github.com/petershirley/raytracingthenextweek/releases), [download for free](http://www.realtimerendering.com/raytracing/Ray%20Tracing_%20The%20Next%20Week.pdf)) | Peter Shirley's Ray Tracing 三部曲其二 | 28 | | 《Ray Tracing: the Rest of Your Life》
([Amazon](https://smile.amazon.com/Ray-Tracing-Next-Week-Minibooks-ebook/dp/B01CO7PQ8C?tag=realtimerenderin), [code](https://github.com/petershirley/raytracingtherestofyourlife/releases), [download for free](http://www.realtimerendering.com/raytracing/Ray%20Tracing_%20the%20Rest%20of%20Your%20Life.pdf)) | Peter Shirley's Ray Tracing 三部曲其三 | 29 | | 《Fundamentals of Computer Graphics, Fourth Edition》
([豆瓣读书](https://book.douban.com/subject/26868819/)) | 概述了计算机图形学相关基础,用来了解图形学的大全景不错 | 30 | | 《Ray Tracing Gems》
([Book website](http://raytracinggems.com/), [amazon](https://www.amazon.com/Ray-Tracing-Gems-High-Quality-Real-Time/dp/1484244265?tag=realtimerenderin)) | Nvidia 出品,电子版免费 | 31 | | [《Real-Time Rendering 3rd》提炼总结](https://github.com/QianMo/Real-Time-Rendering-3rd-CN-Summary-Ebook) | | 32 | 33 | | Tutorials | | 34 | | ------------------------------------------------------------ | ------------------------------------------------------------ | 35 | | Learn OpenGL
([英文原版](), [中文版](https://learnopengl-cn.github.io/)) | OpenGL | 36 | | [Learn Vulkan](https://learnvulkan.com/book/) | Vulkan | 37 | | [Joey de Vries OpenGL Tutorials](http://learnopengl.com/) | OpenGL | 38 | | [Vulkan Tutorial](https://vulkan-tutorial.com/) | Vulkan | 39 | | [The Book of Shaders](https://thebookofshaders.com/) | Shader | 40 | | [3d-game-shaders-for-beginners](https://github.com/lettier/3d-game-shaders-for-beginners) | Shader | 41 | | [The Graphics Codex](http://graphicscodex.com/) | by [Morgan McGuire](https://twitter.com/CasualEffects),IOS 上可以找到同名 App | 42 | | [用JavaScript玩转计算机图形学(一)光线追踪入门](https://www.cnblogs.com/miloyip/archive/2010/03/29/1698953.html) | by [Milo Yip](https://www.cnblogs.com/miloyip) | 43 | | 用 C 语言画光
([1](https://zhuanlan.zhihu.com/p/30745861), [2](https://zhuanlan.zhihu.com/p/30748318), [3](https://zhuanlan.zhihu.com/p/30816284), [4](https://zhuanlan.zhihu.com/p/30961545), [5](https://zhuanlan.zhihu.com/p/31127076), [6](https://zhuanlan.zhihu.com/p/31534769), [7](https://zhuanlan.zhihu.com/p/31901449)) | by [Milo Yip](https://www.zhihu.com/people/miloyip) | 44 | | [Scratchapixel 2.0](http://www.scratchapixel.com/index.php) | 32 lessons, 166 chapters, 450,000 words, C++ source code | 45 | | [Daily Pathtracer](http://aras-p.info/blog/2018/03/28/Daily-Pathtracer-Part-0-Intro/) | by [Aras Pranckevičius](http://aras-p.info/) | 46 | | [Tiny renderer or how OpenGL works](https://github.com/ssloy/tinyrenderer/wiki) | software rendering in 500 lines of code | 47 | | [Rasterization in One Weekend](https://tayfunkayhan.wordpress.com/2018/11/24/rasterization-in-one-weekend/) | by [Tayfun Kayhan](https://tayfunkayhan.wordpress.com/) | 48 | 49 | | Articles | | 50 | | ------------------------------------------------------------ | ------------------------------------------------------- | 51 | | [什么是计算机图形学?](http://staff.ustc.edu.cn/~lgliu/Resources/CG/What_is_CG.htm), [什么是深度学习?](http://staff.ustc.edu.cn/~lgliu/Resources/DL/What_is_DeepLearning.html) | by [刘利刚](http://staff.ustc.edu.cn/~lgliu) | 52 | | [系统的学习计算机图形学,有哪些不同阶段的书籍的推荐?](https://www.zhihu.com/question/26720808) | Q&A | 53 | | [现阶段应该怎么学习计算机图形学呢?](https://www.zhihu.com/question/26341836) | Q&A | 54 | | [一篇光线追踪的入门](https://zhuanlan.zhihu.com/p/41269520) | by [洛城](https://www.zhihu.com/people/luo-cheng-11-75) | 55 | | [光线追踪与实时渲染的未来](https://zhuanlan.zhihu.com/p/34851503) | by [文刀秋二](https://www.zhihu.com/people/edliu) | 56 | | [基于摄影参数渲染](https://zhuanlan.zhihu.com/p/23827065) | by [文刀秋二](https://www.zhihu.com/people/edliu) | 57 | | 基于物理着色([1](https://zhuanlan.zhihu.com/p/20091064), [2](https://zhuanlan.zhihu.com/p/20119162), [3](https://zhuanlan.zhihu.com/p/20122884), [4](https://zhuanlan.zhihu.com/p/21247702)) | by [文刀秋二](https://www.zhihu.com/people/edliu) | 58 | | [How to start learning graphics programming?](https://interplayoflight.wordpress.com/2018/07/08/how-to-start-learn-graphics-programming/amp/) | by Kostas Anagnostou | 59 | | [基于物理着色:BRDF](https://zhuanlan.zhihu.com/p/21376124) | by [Maple](https://www.zhihu.com/people/maple) | 60 | | [金属,塑料,傻傻分不清楚](https://zhuanlan.zhihu.com/p/21961722?refer=highwaytographics) | by [叛逆者](https://www.zhihu.com/people/minmin.gong) | 61 | 62 | | Blogs | | 63 | | ------------------------------------------------------------ | ------------------------------------------------------------ | 64 | | [casual-effects](http://casual-effects.com/) | Computer graphics projects by [**Morgan McGuire**](http://casual-effects.com/morgan/index.html) and friends
NVIDIA 大牛, The Graphics Codex 作者 | 65 | | [INTERPLAY OF LIGHT](https://interplayoflight.wordpress.com/) | "This blog is my scratchpad for graphics techniques I try and experiment with."
by [Kostas Anagnostou](https://twitter.com/KostasAAA) | 66 | | [Self Shadow](https://blog.selfshadow.com/) | [@self_shadow](https://twitter.com/self_shadow) has been collecting [Siggraph courses/papers links](https://blog.selfshadow.com/categories/conference/) for many years: Especially interesting are the Physically Based Shading in Theory and Practice course presentations. | 67 | | [Jendrik Illner](https://jendrikillner.bitbucket.io/) | **每周更新 Graphics Programming weekly**
Ubisoft *FarCry 5* 项目组图程 | 68 | | [Alan Zucconi](https://www.alanzucconi.com/) | 《Unity 2018 Shaders and Effects Cookbook》作者 | 69 | | [Linden Reid](https://lindenreid.wordpress.com/) | Procedural geometry & graphics tutorials
A game developer at Blizzard | 70 | | [Harold Serrano](https://www.haroldserrano.com/home/) | Creator of the [Untold Engine](https://www.untoldengine.com/) | 71 | | [Prof. Dr. Ligang Liu (刘利刚)](http://staff.ustc.edu.cn/~lgliu/) | 主要研究领域:计算机图形学和图像处理 | 72 | | [Lingqi Yan (闫令琪)](http://www.cs.ucsb.edu/~lingqi/?tdsourcetag=s_pctim_aiomsg#bio) | An Assistant Professor at UC Santa Barbara | 73 | | [Behind the Pixels](http://behindthepixels.io/) | Edward(Shiqiu) Liu, a Senior Real Time Rendering Engineer at NVIDIA
[知乎专栏版](https://zhuanlan.zhihu.com/behindthepixels) | 74 | | [iquilezles](http://www.iquilezles.org/index.html) | Inigo Quilez 的 Blog | 75 | | [JOEY DE VRIES](https://joeydevries.com/#home) | Joey (author of [learnopengl.com](https://learnopengl.com/)) | 76 | | [線代啟示錄](https://ccjou.wordpress.com/) | 周志成の线性代数 | 77 | | [Ke-Sen Huang's Home Page](http://kesen.realtimerendering.com/) | 收集了 CG 各大会议的 paper | 78 | | [浅墨的游戏编程Blog](https://blog.csdn.net/poem_qianmo) | 整理了《RTR3》《GPU 精粹》等读书笔记 | 79 | | [Coding Labs](http://www.codinglabs.net/default.aspx) | | 80 | | [TYLER HOBBS](https://tylerxhobbs.com/) | | 81 | | [HUMUS](http://humus.name/) | | 82 | | [Icare3D Blog](https://blog.icare3d.org/) | | 83 | 84 | | Resources pages | | 85 | | ------------------------------------------------------------ | ------------------------------------------------------------ | 86 | | [Real-Time Rendering Resources](http://www.realtimerendering.com/) | 《Real-Time Rendering》配套网站,相关资源丰富 | 87 | | [PBRT](https://www.pbrt.org/) | 《Physically Based Rendering: From Theory To Implementation》配套网站,相关资源丰富 | 88 | | [McGuire Computer Graphics Archive](https://casual-effects.com/data/) | 提供了一些常用的测试场景| 89 | | [mattdesl/graphics-resources](mattdesl/graphics-resources) | A list of graphic programming resources | 90 | | [Readings on The State of The Art in Rendering](https://interplayoflight.wordpress.com/2018/09/30/readings-on-the-state-of-the-art-in-rendering/) | by [Kostas Anagnostou](https://twitter.com/KostasAAA) | 91 | | [Readings on Physically Based Rendering](https://interplayoflight.wordpress.com/2013/12/30/readings-on-physically-based-rendering/) | by [Kostas Anagnostou](https://twitter.com/KostasAAA) | 92 | | [Advances in Real-Time Rendering in 3D Graphics and Games](http://advances.realtimerendering.com/) | the well-established series of SIGGRAPH courses
covering late-breaking work and advances in real-time computer graphics | 93 | | [Rendering Resources](https://benedikt-bitterli.me/resources/) | This page offers 32 different 3D scenes that you can use for free in your rendering research, publications and classes. | 94 | | [terkelg/awesome-creative-coding](https://github.com/terkelg) | Creative Coding: Generative Art, Data visualization, Interaction Design, Resources | 95 | | [eug/awesome-opengl](https://github.com/eug) | A curated list of awesome OpenGL libraries, debuggers and resources | 96 | 97 | | Projects | | 98 | | ------------------------------------------------------------ | ------------------------------------------------------------ | 99 | | [Mitsuba](http://www.mitsuba-renderer.org/) | Mitsuba is a research-oriented rendering system in the style of [PBRT](http://www.pbrt.org/), from which it derives much inspiration. | 100 | | [Filament](https://google.github.io/filament/) | Filament is a real-time physically-based renderer written in C++. It is mobile-first, but also multi-platform. | 101 | | [The Mesa 3D Graphics Library](https://www.mesa3d.org/intro.html) | The Mesa project began as an open-source implementation of the [OpenGL](https://www.opengl.org/) specification - a system for rendering interactive 3D graphics. | 102 | | [The Advanced Rendering Toolkit](https://cgg.mff.cuni.cz/ART/) | ART is a command-line system for physically based image synthesis. | 103 | | [TAICHI](http://taichi.graphics/) | TAICHI: Open-source computer graphics library | 104 | | [Intel® Embree](https://embree.github.io/) | Intel® Embree is a collection of high-performance ray tracing kernels, developed at Intel | 105 | | [MERL BRDF Database](http://www.merl.com/brdf/) | The MERL BRDF database contains reflectance functions of 100 different materials | 106 | | [minpt](https://github.com/hi2p-perim/minpt) | A path tracer in 300 lines of C++ | 107 | | [yocto-gl](https://github.com/xelatihy/yocto-gl) | Tiny C++ Libraries for Data-Driven Physically-based Graphics | 108 | |[id-Software](https://github.com/id-Software) | id-Software公司的所有游戏的开源代码 | 109 | 110 | ## Game Engines 111 | 112 | | Tutorials | | 113 | | ------------------------------------------------------------ | ----------------------------- | 114 | | Massive UE4 Tutorial Playlist
[Youtube](https://www.youtube.com/watch?v=QMsFxzYzFJ8&list=PLZlv_N0_O1gaCL2XjKluO7N2Pmmw9pvhE) | UnrealEngine 4
官方入门教程,很全面 | 115 | | [C# and Shader Tutorials for the Unity Engine](https://catlikecoding.com/unity/tutorials/) | Unity3D, Shader | 116 | | | | 117 | 118 | | Books | | 119 | | ------------------------------------------------------------ | --------------- | 120 | | 《游戏引擎架构》
([豆瓣读书](https://book.douban.com/subject/25815142/), [book website](https://www.gameenginebook.com/)) | 《游戏引擎架构》同时涵盖游戏引擎软件开发的理论及实践,并对多方面的题目进行探讨| 121 | | 《Unity Shader 入门精要》
[豆瓣读书](https://book.douban.com/subject/26821639/) | Unity3D, Shader | 122 | | | | 123 | | | | 124 | 125 | | Websites | | 126 | | ------------------------------------------------------------ | -------------- | 127 | | UnrealEngine的官方视频主页
[Youtube](https://www.youtube.com/channel/UCBobmJyzsJ6Ll7UbfhI4iwQ)
[优酷](http://i.youku.com/i/UMzE2NDk2OTIw) | UnrealEngine 4 | 128 | | [Unity 官方中文论坛](http://forum.china.unity3d.com/forum.php) | Unity3D | 129 | | | | 130 | 131 | --------------------------------------------------------------------------------