问题描述
我正在使用 javascript、webgl2 和 gl-matrix 构建一个简单的粒子系统。我有一个圆形网格、一些颜色、一些位置、一个相机视图矩阵和一个投影矩阵。我可以像这样渲染未旋转的点:
render(viewMatrix,projectionMatrix){
const matrix = mat4.create();
for (let index = 0; index < this.particleCount; index++){
mat4.fromTranslation(matrix,this.positions[index]);
mat4.multiply(matrix,viewMatrix,matrix);
mat4.multiply(matrix,projectionMatrix,matrix);
this.renderer.render(this.mesh,this.indices,this.colors[index],matrix,this.gl.TRIANGLE_FAN);
}
}
显然,他们没有面对镜头。
我确信有一种方法可以导出一个矩阵,该矩阵将相机的面向和向上向量与圆心的位置相结合,但矩阵数学对我来说是巫毒巫术。如何构建使用粒子位置进行平移并使用相机矩阵旋转的矩阵(包括或不包括投影)?我需要知道相机的位置吗?
解决方法
暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!
如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。
小编邮箱:dio#foxmail.com (将#修改为@)