同意一楼的观点,感觉lightMVP不应该归为PhongMaterial的一个属性,而应该把光源的VP矩阵传到shader里,在shader里做mvp矩阵的计算。现在这种处理方式的话,如果场景中有很多移动的物体,那每个物体相对于光源的mvp矩阵其实是每帧在cpu里计算的。而且看框架中摄像机的实现方式其实正是一楼说的那种方式(在phongVertext.glsl中),把VP矩阵送到了shader里,在shader里用gpu算的摄像机的mvp矩阵。
This post has received 1 vote up.