七天近 1000 Star!哈佛小哥手把手教你计算机图形学

这是「进击的Coder」的第 412 篇技术分享
来源:新智元


计算机图形学被称为计算机「三大浪漫」之一,这个 GitHub 仓库将帮助迷茫的你快速入门。

 

仓库中包括多个模型,如片段着色器(使用 GLSL 语言编写)、过程纹理生成、栅格化、光照计算和实时光线跟踪。

 

所有的项目都将使用 WebGL 的标准技术,在浏览器中的使用图形编码进行开发。这种方式利用了现代的 Web 开发工具来快速迭代,并能够很容易与其他人分享自己的工作成果。并且无需实际编写 javascript 代码。

 

基础的运行环境要求是 node.js v14 和 npm。

 

对于初学者,作者建议从「被子图案」作为入门项目。

 

被子图案怎么做?

 

片段着色器运行在屏幕上的每个像素点,每个像素点由着色器确定它的颜色。vec4 是一个带有红色、绿色、蓝色和透明通道的 4 维向量。

 

核心代码在 shaders/quilt.frag.glsl,它能够运行在 GPU 上。

 

七天近 1000 Star!哈佛小哥手把手教你计算机图形学

 

通过把代码中的注释部分打开就可以获得更丰富的样式。

 

七天近 1000 Star!哈佛小哥手把手教你计算机图形学

 

还能着色什么图案?


满满的「我的世界」风的岛屿图。


七天近 1000 Star!哈佛小哥手把手教你计算机图形学

 

使用实时计算机图形学中非常流行的光栅化方法渲染 3D 三角形网格,与大多数游戏使用的算法相同。追求更逼真的、模拟现实世界中的物体。

 

七天近 1000 Star!哈佛小哥手把手教你计算机图形学

 

探索风格化渲染,也称为非照片级渲染。这是一个放弃忠实于现实生活的图形领域,但是在模仿表达风格时可以实现更具创意的表达。主要原理是根据亮度强度的阈值离散化它并以不同的样式进行阴影处理,能够模仿漫画书中的艺术风格。

七天近 1000 Star!哈佛小哥手把手教你计算机图形学

「光线追踪」的算法能够反射,是照片级真实感渲染中的黄金标准。计算机上的光线跟踪算法遵循穿过场景的无穷小光线的路径,直到它们与曲面相交为止。这种方法提供了一种从任何特定位置和方向查找第一个可见对象的简单方法,并且是许多渲染算法的基础。

 

七天近 1000 Star!哈佛小哥手把手教你计算机图形学

 

作者其人


 Eric Zhang,是哈佛大学的硕士研究生,学习数学和计算机科学,他的主要研究兴趣是图形学、机器学习、编程语言和系统。在高中时期代表美国拿到两块 IOI 金牌,还给美国的高中生写了一本物理书。

 

七天近 1000 Star!哈佛小哥手把手教你计算机图形学

 

作者的 GitHub 也是十分勤奋!曾在英伟达实习、协助实现 sota 的语义分割系统。

 

七天近 1000 Star!哈佛小哥手把手教你计算机图形学

 

作者对音乐也颇有研究。

 

七天近 1000 Star!哈佛小哥手把手教你计算机图形学

 

参考资料:

https://github.com/ekzhang/graphics-workshop


七天近 1000 Star!哈佛小哥手把手教你计算机图形学

End

「进击的Coder」专属学习群已正式成立,搜索「CQCcqc4」添加崔庆才的个人微信或者扫描下方二维码拉您入群交流学习。


七天近 1000 Star!哈佛小哥手把手教你计算机图形学

看完记得关注@进击的Coder
及时收看更多好文
↓↓↓

七天近 1000 Star!哈佛小哥手把手教你计算机图形学


点个在看你最好看

原文始发于微信公众号(进击的Coder):七天近 1000 Star!哈佛小哥手把手教你计算机图形学

本站文章资源均来源自网络,除非特别声明,否则均不代表站方观点,并仅供查阅,不作为任何参考依据!
如有侵权请及时跟我们联系,本站将及时删除!
如遇版权问题,请查看 本站版权声明
THE END
分享
二维码
海报
七天近 1000 Star!哈佛小哥手把手教你计算机图形学
这是「进击的Coder」的第 412 篇技术分享 来源:新智元 计算机图形学被称为计算机「三大浪漫」之一,这个 GitHub 仓库将帮助迷茫的你快速入门。  ……
<<上一篇
下一篇>>