WebGL制作动画
绘制流程
- 计算变换后的位置坐标。
- 清空画板。
- 绘制
- 循环 1-3 操作。
代码实现
使用库函数简化数学计算
1 | const vShaderSource = ` |
使用库函数简化数学计算
1 | const vShaderSource = ` |
将 WebGL 坐标系转为极坐标,然后通过角度计算得出旋转后的左标位置。
旋转矩阵:
$$
\begin{bmatrix}
x’ \
y’ \
z’ \
1 \
\end{bmatrix} =
\begin{bmatrix}
\cos \beta & -\sin \beta & 0 & 0 \
\sin \beta & \cos \beta & 0 & 0 \
0 & 0 & 1 & 0 \
0 & 0 & 0 & 1 \
\end{bmatrix} ×
\begin{bmatrix}
x \
y \
z \
1 \
\end{bmatrix}
$$
使用u_SinBCosB存放SinB与CosB。
1 | /** |
OpenID 是一种用于标识用户身份的协议,它允许用户在多个网站上使用同一个用户名和密码。它是由一组标准定义的,包括一个身份提供者(IdP)和一个身份验证服务(AS)。IdP 是网站或服务,它提供用户的身份信息,并将其发送给 AS。AS 是另一个网站或服务,它验证 IdP 发送的身份信息,并确认用户的身份。
gl.drawArrays(),装配图形。使用varying标识符
1 | const vShaderSource = ` |