女王控的博客

读书笔记

58 篇文章

WebGL 理论基础——三维

WebGL 三维正射投影 上一篇文章概述了二维矩阵的工作原理,我们讲到了如何平移,旋转,缩放甚至从像素空间投影到裁剪空间,并且将这些操作通过一个矩阵实现,做三维只需要再迈出一小步。 二维例子中的二维点 (x, y) 与 3x3 的矩阵相乘,在三维中我们需要三维点 (x, y, z) 与 4x4 的矩阵相乘。 让我们将上个例子改成三维的,这里会继续使用 F,但是这次是三维的 ‘F’ 。 首先需要修改顶点着色器以支持三维处理,这是原顶点着色器 这是新着色器 它甚至变简单了!在二维中我们提供 x… »

WebGL 理论基础——二维

WebGL 二维平移 平移就是普通意义的“移动”物体。这里有个例子基于前一个例子。首先我们来定义一些变量存储矩形的平移,宽,高和颜色。 然后定义一个方法重绘所有东西,我们可以在更新变换之后调用这个方法。 在下方的例子中,我添加了一对滑块,当它们值改变时会更新 和 并且调用 drawScene 方法。拖动滑块来平移矩形。 到目前为止还不错!但是想象一下如果对一个更复杂的图形做类似操作怎么办。 假设我们想绘制一个由六个三角形组成的 ‘F… »

编写高质量Python

培养 Pythonic 思维 第 1 条:查询自己使用的 Python 版本 Python 2 于 2020 年 1 月 1 日退场,到这一刻,所有的 bug 修复、安全补丁,以及特性向后移植都会停止。此后,如果你还坚持使用 Python 2,那么会面临很多不利因素,因为它不会再获得正式的维护了。深度依赖 Python 2 代码库的开发者可以考虑用 2to3(Python 预装的工具)与 six 这样的工具过渡到 Python 3。 第 2 条:遵循 PEP… »

WebGL 理论基础——图像处理

WebGL 图像处理 在 WebGL 中绘制图片需要使用纹理。和 WebGL 渲染时需要裁剪空间坐标相似,渲染纹理时需要纹理坐标,而不是像素坐标。无论纹理是什么尺寸,纹理坐标范围始终是 0.0 到 1.0 。 因为我们只用画一个矩形(其实是两个三角形),所以需要告诉 WebGL 矩形中每个顶点对应的纹理坐标。我们将使用一种特殊的叫做 varying 的变量将纹理坐标从顶点着色器传到片断着色器,它叫做“可变量” 是因为它的值有很多个,WebGL… »

WebGL 理论基础——基础概念

基础概念 背景 WebGL 经常被当成 3D API,人们总想“我可以使用 WebGL 和一些神奇的东西做出炫酷的 3D 作品”。事实上 WebGL 仅仅是一个光栅化引擎,它可以根据你的代码绘制出点,线和三角形。想要利用 WebGL 完成更复杂任务,取决于你能否提供合适的代码,组合使用点,线和三角形代替实现。 WebGL 在电脑的 GPU 中运行。因此你需要使用能够在 GPU 上运行的代码。这样的代码需要提供成对的方法。每对方法中一个叫顶点着色器,另一个叫片断着色器,并且使用一种和 C 或 C… »

0%