, 另一个线程负责渲染图形
多线程合作的时候渲染线程需要等待主线程的数据, 因此为了提高利用率最好借用流水线的思路, 让渲染线程比主线程慢一帧
多线程可能导致更高的输入延迟如下图: 第一帧进行了计算,...尽管我们无法得到当前帧的时间, 但是可以依据上一帧甚至之前的多帧来预测当前帧可能的耗时, 尽量保证游戏在各种帧率下都能正常运行, 而不是像早期游戏一样依赖于CPU频率或者显示器刷新率等
与物理有关的游戏当帧率波动的时候按照不稳定的增量时间模拟出的结果可能产生很大的误差...非单位向量投影到单位向量方向上的投影长度投影长度:
\vec{a} \cdot \vec{b}
单位向量点乘为0时两个向量垂直, 为1时两个向量平行且同向, -1时平行且反向....结合原始的向量乘法公式来记忆即可
向量长度的平方就是用自己与自己点乘
求反射向量
与向量有关的问题画图会比较好理解, 求反射向量需要有入射向量本身与反射点的法线
首先将入射向量反向然后与法线点乘, 得到入射向量在法线方向上的投影长度...将这个投影长度乘在法线上后, 将入射向量与投影法线相加能得到平行于切面的半向量
将反向的入射向量与两倍的半向量相加就得到反射向量了
反推一下得到反射向量的直接计算公式:
\vec{v'}=\vec