收集/整理/翻译 Filament 资料/文档/教程
一直以来, 我都对计算机图形学很感兴趣, 但无奈与平时工作相距甚远, 外兼视力不佳, 所以只能关注一下, 没有深入研究.
前几年研究PBR的时候偶然发现了Romain Guy的PRB渲染demo, 当时就有些惊异于其效果, 遂将其下载仔细研究, 以期能改进一下做成一个自用的WegGL库. 就这样, 断断续续地, 开始了我的WenGL学习之旅. 从最开始的不明所以, 逐渐知晓了着色器, 材质, 颜色, 光照, 进而是天空盒, IBL, 色调映射, 等等, 等等. 越学越觉得渲染领域涉及面太广, 个人很难完全精通掌握, 只能将自己限定在一个小的范围内, 对其他范围做些单纯的了解.
当我终于将Guy的demo改造好, 准备发布的时候, 上网一查, 才赫然发现谷歌以已经开源了Filament, 其最初来源就是Guy的demo. 这样我的改造就意义不大了, 所以只能换成先学习这个引擎了.
因此我就创建了filamentcn项目, 用以放置 收集/整理/翻译 的Filament 资料/文档/教程, 作为学习的参考和记录.
目前我已经翻译完成了Filament最重要的两篇材质文档, 外加三篇教程
其中的两篇材质文档是我目前看过的 最好的 PBR资料, 对PBR渲染从原理到实现细节都有详细说明. 根据这些说明, 再加上一些图形学的知识, 完全可以实现自己的PBR.
我毕竟只是业余学习过计算机图形学, 很多名词的翻译不一定符合业内习惯. 如果你发现有不符合习惯的地方, 请指出修正. 如果你发现有错误和不合理的地方, 更要指出. 谢谢.
此外, 我还建立了一个QQ群, 用以方便大家交流.
Filament是一个用C++编写的基于物理的实时渲染器. 它优先考虑移动平台, 但也可用于多个平台.
我们尽量保持Filament体积小, 加载快, 并专注渲染的特性. 例如, Filament不会在运行时编译材质. 相反, 我们提供了一个命令行工具matc
, 用于离线编译材质.