从Unity本机插件修改WebcamTexture

时间:2016-10-18 10:51:02

标签: unity3d textures native

我只想将WebcamTexture传递给本机插件(使用GetNativeTexturePtr()获取性能),在其上绘制一些内容并将结果渲染到屏幕上的平面中。

我猜一些Unity线程会每帧更新WebcamTexture内容,因此写入该纹理可能会产生一些闪烁效果,因为有2个线程更新其内容。因为我正在使用另一个纹理“drawTexture”来渲染结果。

在每个渲染事件中,算法都很简单:

  1. 阅读camTexture
  2. 将camTexture内容复制到drawTexture
  3. 在drawTexture上绘制内容
  4. 渲染drawTexture(OpenGL bindTexture)
  5. 我正在关注https://github.com/CocoaPods/Specs.git示例,但每次我尝试将内容从camTexture复制到drawTexture(甚至只有1个像素)时,主线程冻结

    我认为可能会发生这种情况,因为我正在尝试在外部线程修改时读取camTexture。

    这是一些代码:

    C#插件来源

    pod repo add

    C ++插件(绘制纹理方法)

    My-Mac:PhoneGapTest username$ git config http.postBuffer 1048576000
    My-Mac:PhoneGapTest username$ pod install
    Setting up CocoaPods master repo
    [!] Unable to add a source with url https://github.com/CocoaPods/Specs.git named master.
    You can try adding it manually in ~/.cocoapods/repos or via pod repo add.

    任何帮助都将不胜感激。

0 个答案:

没有答案