HTML5   发布时间:2022-04-27  发布网站:大佬教程  code.js-code.com
大佬教程收集整理的这篇文章主要介绍了iOS10 SceneKit:使用自定义着色器渲染视频大佬教程大佬觉得挺不错的,现在分享给大家,也给大家做个参考。
在使用自定义着色器时,如何在SceneKit中的节点上将视频渲染为漫反射贴图?这听起来很简单,但是:

> SceneKit元素不支持AVPlayerLayer作为输入纹理(SO)
>替代方案是:

>使用带有SKVideoNode的SpriteKit场景但是:

>自从iOS 10以来,只要涉及SpriteKit场景,使用openGL渲染就会失败(SO)我已经填满了雷达
>当我使用Metal时,我无法弄清楚如何将制服传递到着色器修改器(SO)事情与openGL完美配合(在iOS 9上,当SpriteKit正在工作时)令人惊讶的是,那里的文档非常少.
>一旦视频涉及SceneKit场景,SCNProgram似乎就会失败(SO)没有视频,相同的设置工作正常

>将视频输出转换为CGImage,将其传递给CALayer,并将此图层传递给SceneKit视频节点(不涉及SpriteKit)这是详细的here,但一旦视频有点大,就不是可行的解决方案,因为所有输出都被复制到图像,这是昂贵的..

我仍然不愿意离开SceneKit,因为它使用opengl / Metal来处理很多烦人的低级别事情,但我现在无法让事情发挥作用……

作为一个额外的坏消息,看起来SpriteKit在与Metal一起使用时会出现内存泄漏,并且它会使SceneView保持活跃状态​​,因此所有父视图和附加到它们的所有内容……

您可以找到此问题here的复制品,以及更简单的here

解决方法

无法解决这个问题,我编写了自己的库,模仿SceneKit的一些功能https://github.com/team-pie/DDDKit

大佬总结

以上是大佬教程为你收集整理的iOS10 SceneKit:使用自定义着色器渲染视频全部内容,希望文章能够帮你解决iOS10 SceneKit:使用自定义着色器渲染视频所遇到的程序开发问题。

如果觉得大佬教程网站内容还不错,欢迎将大佬教程推荐给程序员好友。

本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。