如何使用Unity使用ARCore录制视频?

Zer*_*oLu 7 unity-game-engine arcore

我一直坚持这个问题一个多月了.我只需要在人们使用AR应用程序时录制视频.

有几种选择:

1.在Unity中为每一帧拍摄屏幕截图.
我尝试每帧截图.这太慢了.fps只有5.
然后我尝试将纹理保存到数组中,然后将它们编码为图像.
这会占用大量内存,并会导致移动电话显着丢帧.fps是10左右.
如果有人对这种方法有好主意,请告诉我.

2.使用本机插件录制视频.
我还没有找到任何解决方案.我担心这可能与ARCore发生冲突.

我知道有一个Android解决方案,但理想情况下我想使用Unity.任何帮助表示赞赏,谢谢!

3.从ARCore计算机视觉示例提供的纹理读取器api中保存纹理.
目录中有一个Computer Vision示例.我可以通过它的api直接从GPU获得纹理.

但是,fps仍然很低.使用其边缘检测器示例,fps大约为15.我成功地将这些帧保存到另一个线程中的本地目录.但是fps仍然是不可接受的.底线是720p,30fps.

PS:我只需要保存帧.我可以将它们编码为视频.

PPS:只需记录相机进纸并将相机进纸和增强对象记录在一起都可以.任何一个成就都很棒.

ner*_*erk 5

您可以使用(非常棒的)NatCorder 统一资产资产商店链接)和相关的NatShare API轻松实现视频录制和共享。我在自己的ARCore 实验/“游戏”中做了同样的事情。

编辑:您可能必须实施解决方法才能获得平滑的帧速率。