Ejemplo n.º 1
0
        private void CreateManagedComponent()
        {
            switch (_senderTechnique)
            {
            case SenderTechniques.SenderTechniqueEnum.OpenGLSyphon:
                ComponentManager.AddManagedComponent <OpenGLCoreSyphon>(gameObject, handleCreatedManagedComponent);
                break;

            case SenderTechniques.SenderTechniqueEnum.MetalSyphon:
                ComponentManager.AddManagedComponent <MetalSyphon>(gameObject, handleCreatedManagedComponent);
                break;

            case SenderTechniques.SenderTechniqueEnum.Spout:
                ComponentManager.AddManagedComponent <SpoutSender>(gameObject, handleCreatedManagedComponent);
                break;

            case SenderTechniques.SenderTechniqueEnum.NDI:
                ComponentManager.AddManagedComponent <NdiSender>(gameObject, handleCreatedManagedComponent);
                break;

            default:
                Debug.LogError("Unexpected value of sender type");
                break;
            }
            // Avoid side effects of components being enabled while this component is disabled
            if (!enabled)
            {
                ComponentManager.DisableManagedComponent <OpenGLCoreSyphon>(gameObject);
                ComponentManager.DisableManagedComponent <MetalSyphon>(gameObject);
                ComponentManager.DisableManagedComponent <NdiSender>(gameObject);
                ComponentManager.DisableManagedComponent <SpoutSender>(gameObject);
            }
        }
Ejemplo n.º 2
0
 private void CreateTextureGetterAndRegister()
 {
     ComponentManager.AddManagedComponent <GetTextureByAsyncReadback>(gameObject, (textureFetcher) =>
     {
         if (textureFetcher != null)
         {
             textureFetcher.RegisterOnNewFrameEvent(OnReadbackFrame);
             textureFetcher.RegisterOnSyncFrameEvent(OnReadbackSync);
         }
         else
         {
             Debug.LogError("NDI SENDER: unexpected missing textureFetcher");
         }
     });
 }
Ejemplo n.º 3
0
 private void CreateTextureGetterAndRegister()
 {
     ComponentManager.AddManagedComponent <GetTextureByOnRenderImage>(gameObject, (textureFetcher) =>
     {
         if (textureFetcher != null)
         {
             textureFetcher.registerOnNewTexture(ReceiveCameraTexture);
             textureFetcher.registerOnTextureResize(OnTextureResize);
         }
         else
         {
             Debug.LogError("GL SYPHON: unexpected missing textureFetcher");
         }
     });
 }