我有一个3D坐标,我想通过modelVeiw矩阵进行转换,以进入GLSL着色器的视图空间。该点在着色器中定义,并且不受OpenGL转换的影响。无论如何要做一些像gl_ModelViewMatrix *(vec3名称)?通过modelview矩阵乘以vec3
回答
编号gl_ModelViewMatrix是一个mat4。你需要乘以一个vec4(w中有1)。
谢谢!我会把它投票,但我是这样一个noob我没有足够的声誉... – Abaab 2013-03-06 14:26:25
w的内容应该由点的目的决定 - 是一个规则的顶点要转换或正常(在这种情况下,w = 0,并且还可以将vec3乘以MVM的上部3x3矩阵。) – 2013-03-06 14:29:59
我们所有的语义都是粗略的。我认为“坐标”是“点”的同义词,并不意味着一个矢量,但我只是查了一下,我错了。你用“点”来表示“点”或“矢量/方向”,这也是不正确的。 你不应该在技术上做mat3(MVM)* normal;你应该做正常* inverseOfMVM。 http://en.wikibooks.org/wiki/GLSL_Programming/Applying_Matrix_Transformations#Transforming_Normal_Vectors – Jessy 2013-03-06 19:10:22
- 1. 了解ModelView矩阵
- 2. 矩阵乘以组
- 3. 相乘以矩阵
- 4. 乘以逆矩阵?
- 5. 通过矩阵乘法加密
- 6. 可以通过ModelView或Projection矩阵弯曲或扭曲OpenGL空间吗?
- 7. 乘以向量和矩阵
- 8. 矩阵乘以向量
- 9. 并行乘以小矩阵
- 10. 矩阵乘以元素
- 11. 程序乘以矩阵
- 12. 矩阵乘法
- 13. 矩阵乘法
- 14. 通过矩阵
- 15. 矩阵乘矢量乘法
- 16. 通过使用scipy/numpy在Python中添加2矩阵和乘法2矩阵
- 17. CUBLAS矩阵乘法
- 18. 矩阵乘法alglib
- 19. 乘法矩阵Matlab
- 20. 块矩阵乘法
- 21. Accord.NET矩阵乘法
- 22. C++矩阵乘法
- 23. 矩阵的乘法
- 24. 矩阵乘法MPI
- 25. Hadoop矩阵乘法
- 26. Cuda矩阵乘法
- 27. 矩阵乘法CUDA
- 28. 的矩阵乘法
- 29. 2x2矩阵乘法
- 30. 乘法矩阵蟒
邮政编码请 – GreenGuerilla 2013-03-06 14:08:39
通常一个顶点着色器做'void main(){gl_position = glMatrix * aVertex; }'aVertex是一个属性,glMatrix是一个统一体。这两个都可以在着色器中生成。去做就对了! – 2013-03-06 14:15:20
@AkiSuihkonen当我运行代码vec3 tfLightPos =(gl_ModelViewMatrix * lightPos);我得到错误0(8):错误C1101:模糊重载函数引用“mul(mat4,vec3)” – Abaab 2013-03-06 14:23:09