摘要:
在学习2D绘图的时候,我们提过很多次关于GPU的高效渲染,但是2D图形的绘制只展示了WebGL部分的能力,WebGL更强大的地方在于,它可以绘制各种3D图形,而3D图形能够极大地增强可视化的表现能力。相信很多小伙伴都对此有所耳闻,也有不少人学习WebGL,就是冲着它的3D绘图能力。接下来,文本就用一个简单的正立方体的例子来演示在WebGL中如何绘制3D物体。 阅读全文
摘要:
在可视化展现中,动画是强化数据表达,吸引用户的重要技术手段,本文将介绍动画的三种实现形式,以及如何具体地在HTML/CSS和Shader中去实现动画。 阅读全文
摘要:
GPU是并行渲染的,这样的渲染很高效。但是在实际需求中,有时我们计算片元色值时,需要依赖周围像素点或者某个其他位置像素点的颜色信息,这样的话想要一次性完成绘制就无法做到,需要对纹理进行二次加工处理。 阅读全文
摘要:
什么是噪声呢?在自然界中,离散的随机是比较常见的,比如蝉鸣突然响起又突然停下,比如雨滴随机落在一个位置,但是随机和连续并存是更常见的情况,比如山脉的走向是随机的,但山峰之间的高度又是连续的,比如天上的云朵、水面的波纹等等。这种把随机和连续结合起来,就形成了噪声。通过利用噪声,我们就可以去模拟真实自然的图案。 阅读全文
摘要:
本文将介绍如何使用极坐标参数方程和上一篇文章提到的距离场SDF来绘制有趣的图案。有些曲线比起直角坐标系来说,更方便使用极坐标来表示,这个时候我们可以选择通过极坐标和直角坐标的相互转换,来实现图形的绘制 阅读全文
摘要:
本文将介绍如何使用着色器来进行几何造型,说到几何图形大家一定都不陌生,比如说三角形、圆形,在WebGL中除了直接使用顶点绘制,我们还可以使用片元着色器进行造型,以下将介绍三角形的绘制,以及应用场景。 阅读全文
摘要:
在Canvas2D中通过调用`drawImage` API就能将图像绘制到画布上,在WebGL中我们也可以绘制图像,在绘制时我们需要用到WebGL中的纹理对象,在之前实现网格背景的视频中,我使用了一个叫做纹理坐标的配置,现在要完成纹理的加载我们也需要用到纹理坐标,并且我们可以通过对纹理坐标处理实现简单的”马赛克“效果。 阅读全文
摘要:
CSS中的属性Position有时能帮助我们实现一些特殊的布局需求,但是它为什么能达成特殊效果的原因很容易被人忽略,通过对文档深入学习我们可以了解他们实现的逻辑,更好的帮助我们理解布局。 阅读全文
摘要:
在之前工作的时候,偶尔会看到不同岗位同事之间互相调侃谁的地位高,后端说前端地位高,前端说后端地位高,表面上一团和气互相吹彩虹屁,实际上互相揣测谁的工资更高。开始阅读毛选后,我感觉可以用书里的方式对不同岗位的地位做一点简单的分析。不过我本人向来没什么政治敏感度,所以对办公室政治也并不太懂,因此以下也只 阅读全文
摘要:
在Canvas2D中实现圆形的绘制比较简单,只要调用`arc`指令就能在Canvas画布上绘制出一个圆形,类似的,在SVG中我们也只需要一个`circle`标签就能在页面上绘制一个圆形。那么在WebGL中我们要怎么去绘制呢? 阅读全文