Opengl es 从投影矩阵和模型视图矩阵获取CATTransform3D

Opengl es 从投影矩阵和模型视图矩阵获取CATTransform3D,opengl-es,core-animation,qcar-sdk,Opengl Es,Core Animation,Qcar Sdk,我以前浏览过这个问题,url;但它不是绝对精确的;我想知道为什么它不精确 我发现x轴和y轴的旋转是相反的(我不能发布图像);梯形(旋转calayer时,它像梯形)是相反的,calayer旋转是否不像opengl?但z轴旋转时它是正确的 我想得到角度,然后反向旋转两次;如何通过opengl矩阵获得角度 我想玩QCAR的电影;我可以获得opengl矩阵,我想使用UIView播放电影和其他(熟悉UIView),并制作类似UIView的纹理。我刚刚在QCAR论坛上发布了一个示例,您可以查看详细信息 这个

我以前浏览过这个问题,url;但它不是绝对精确的;我想知道为什么它不精确

我发现x轴和y轴的旋转是相反的(我不能发布图像);梯形(旋转calayer时,它像梯形)是相反的,calayer旋转是否不像opengl?但z轴旋转时它是正确的

我想得到角度,然后反向旋转两次;如何通过opengl矩阵获得角度


我想玩QCAR的电影;我可以获得opengl矩阵,我想使用UIView播放电影和其他(熟悉UIView),并制作类似UIView的纹理。

我刚刚在QCAR论坛上发布了一个示例,您可以查看详细信息

这个想法很简单

1.我不使用Avassetrader读取视频像素,而是使用可以播放远程视频文件的AVPlayer和AVPlayerLayer

2.我需要将opengl modelview矩阵转换为CATTransferorM3D,以便AVPlayerLayer将附着在可跟踪图像上。感谢stackoverflow,他分享了一个关于如何实现此功能的示例

3.我尝试同时使用opengl和AVPlayerLayer渲染相机背景,但是性能不够好,所以我使用另一个calayer渲染相机背景。1.5.8在获取相机帧时出现了一个错误,感谢andersfrank,问题在这里得到了解决

我将代码放在pastebin上:

还有一些问题需要解决,但我认为这是一个正确的方法

另外,对于我原来帖子中的问题3,你可以通过设置来解决它

        cameraLayer.contentsGravity = kCAGravityResizeAspectFill;
这将解决相机图像的纵横比与iphone屏幕不同的问题

更新 所有问题都解决了,请查看我在vuforia和pastebin上的原始帖子