在opengles中,采用的是可编程渲染管线,矩阵需要自己实现!
先说一下矩阵的理论:
参考一下资料:http://blog.sina.com.cn/s/blog_6084f588010192ug.html
http://www.opengl-tutorial.org/zh-hans/beginners-tutorials-zh/%EF%BB%BF%E7%AC%AC%E4%B8%89%E8%AF%BE%EF%BC%9A%E7%9F%A9%E9%98%B5/
http://blog.db-in.com/cameras-on-opengl-es-2-x/(推荐)
矩阵为16个float类型的数组,其中哪个数影响哪些信息,我用个图说明:
1.单位矩阵 任意矩阵乘以单位矩阵,都等于本矩阵,起到初始化的作用
1 0 0 0
0 1 0 1
0 0 1 0
0 0 0 1
2.平移矩阵
0 0 0 0
0 0 0 0
0 0 0 0
tx ty tz 0
3.绕X轴旋转
1 0 0 0
0 cos sin 0
0 -sin cos 0
0 0 0 1
4.绕Y轴旋转
cos 0 -sin 0
0 1 0 0
sin 0 cos 0
0 0 0 1
5.绕Z轴旋转
cos -sin 0 0
sin cos 0 0
0 0 1 0
0 0 0 1
6.sx 0 0 0
0 sy 0 0
0 0 sz 0
0 0 0 1
对矩阵的实现代码在matrix.cpp中有,一目了然,大家有问题可以与我讨论!