
物理模拟
文章平均质量分 71
韩天衣
热爱游戏开发,希望能有所成就
展开
-
物理模拟-更加真实的动态水面
物理模拟-更加真实的动态水面书接上回在上一篇中,我们讨论了简单的动态水面,并使用了正弦波去模拟了水面,但是,显然我们还有东西被遗漏了。那就是,我们实际上没有计算水面的法向量。看过代码的读者应该知道,我直接使用了网格坐标来代替法线,虽然效果看起好像还行,但终究是错误的。本节,我们将讨论如何计算动态水面的法向量,切向量,次法向量在那之前,我们首先需要用到高等数学中的计算公式,这里我们不展开讲解,具体细节请翻阅高等数学-多元函数微积分的几何应用计算法向量隐式曲面方程:F(x,y,z) = 0在点原创 2022-04-28 20:19:02 · 774 阅读 · 0 评论 -
物理模拟-动态水面
物理模拟-动态水面OpenGL模拟水面顶点网格顶点数组顶点数组,我的设想是一个正方形区域(x[-l,l],z[-l,l]),也就是说边长为l而对于每一行的网格数,我们定义为n,网格数量代表了水面的精度大小,n越大,精度越大,性能消耗也就越大。我们以一行一行的方式给顶点数组赋值,每次完成一行就移动到下一行请注意:因为每个顶点有三个坐标,因此顶点数组的长度应为:n*n*3代码如下://坐标范围是X轴(-l,l),Z轴(-l,l)float valueX = -waterLength;fl原创 2022-04-28 11:10:17 · 542 阅读 · 0 评论