岗位叙事之外,关于行业的一些思考
AI 时代下的游戏行业岗位变化思考
【UE4 C++】RDR2死神之眼效果复刻
复刻荒野大镖客2的死眼系统,含网络同步实现
GAMES202个人笔记(6)-实时光线追踪
GAMES202 P6 - 实时光线追踪
Billboard与施密特正交
在游戏开发的过程中,Billboard的一般做法是通过view和up两个向量构建一个旋转矩阵,从而调整sprite facing使其与观察空间某个向量对齐(up / normal),而众所周知构建一个旋转矩阵需要三个正交基,但我们现在就只有view和up两个基,还不正交,所以免不了要用叉乘对原来这两个二维基向量进行“升维”
具体步骤是,先用 up×view 算出 right,构建出一个临时的坐标空间;然后再以这个临时空间为参考系,用 normal×right 算出up’,再在这由两个向量张成的二维平面上再做一次升维。
因为这样得到的三个基向量可以保证相互正交,所以像这样构建旋转矩阵是非常合理的。
这是叉乘的做法。
但我们又知道,旋转矩阵之所以要用三个正交基去构建,是因为他本身就是一个标准正交矩阵,而在 $$\mathbb{R}^3$$ 找一个平面的正交基可以使用施密特正交化,那上面提到的叉乘这种做法又和施密特正交有什么关系呢?
我们不妨由公式做一些简单的推导
假设有 $$view=(v_1,v_2,v_3)$$ , $$up=(u_1,u_2,u_3)$$ ...
GAMES202个人笔记(5)-基于物理的实时渲染
GAMES202 P5 - 基于物理的实时渲染
从零开始的URP仿原神角色渲染
早期学习卡通渲染的一些记录(图片施工中)
B样条曲线-个人笔记
参考课程:
辅助理解:
Bezier曲线缺点
Bezier曲线一旦确定了特征多边形的顶点数 $n+1$ ,也就决定了曲线的阶次(n次)。如果阶数过高,则曲线中会有大量极值点,造成曲线波动现象明显
Bezier曲线或曲面的拼接比较复杂
Bezier曲线或曲面不能作局部修改,牵一发而动全身。因为每个Bernstein多项式在整个区间 $[0,1]$ 上都有支撑,所以每个控制点对整条曲线都有影响
B样条曲线采用分段连续多项式,整条曲线用一个完整的表达式表达,但表达式内部分量分段。使用低次曲线克服波动,使用分段多项式克服无法局部修改的局限
要求: $n+1$ 个型值点,共 $n$ 个区间,每个区间构造一个三次多项式,这 $n$ 个三次多项式拼在一起可以表达出特定的曲线,且段与段之间需要满足 $C^2$ 连续
数学表达式: $P(u)=\sum_{i=0}^nP_iB_{i,k}(u),u\in[u_{k-1},u_{n+1}]$
其中 $P_i(i=0,1,\ldots,n)$ 是控制多边形的顶点
$B_{i,k}(u)$ 称为 $k$ 阶 $k-1 ...
GAMES202个人笔记(1)-基础引入
GAMES202 P1 - 基础引入
GAMES202个人笔记(2)-实时阴影
GAMES202 P2 - 实时阴影
GAMES202个人笔记(3)-实时环境光照
GAMES202 P3 - 实时环境光照







