来源:互联网 发布:java pagecache 不释放 编辑:程序博客网 时间:2024/04/28 03:08

  先上一张图.这两周都在添加数学库部分,这次都是自己来做的.这次添加的是摄像机左右转,上下转为什么不能一起实现我还没搞懂,视图矩阵,投影矩阵.同时还添加了拾取,因为想做编辑器,必然得操纵对象,能选取对象.实现起来其实比较复杂,对我来说.从屏幕取2D点,转换回摄像机空间,再转换回世界空间,最可恨的是求矩阵的逆我是按照定义来实现的,那个麻烦,接着在世界空间构造射线(同时转换摄像机原点到世界空间),再进行射线跟三角形相交判定,求出交点.上图中,右上角点是鼠标选中的点,其余2点是选中的三角形的其余2个点.我试了移动摄像机和旋转摄像机,结果仍然正确,说明中间没有出现错误.就因为添加拾取这部分,现有代码已被我改得面目全非,接下来我试着自己实现一个射线拾取算法,接着就重构一下代码吧,没办法,水平不够,就得不断重构来解决问题,让代码更强壮.接下来实现选中对象后可以移动对象和旋转对象.再把摄像机旋转弄好.接着,数学这块我就长进了一大块,说来遗憾,干了三年,到现在才能自己实现一些数学有关的东西,其实我看了不下2年了,因为没自己动手认真写,所以一直不行.之前面试过一次被问起的射线跟三角形相交我现在也会了,些许安慰.一个字,累.OK,继续工作.

0 0