docs.unity3d.com
    目次を表示する/隠す

    Class VirtualCameraDevice

    A device used to control a virtual camera.

    Inheritance
    Object
    Object
    Component
    Behaviour
    MonoBehaviour
    LiveCaptureDevice
    Unity.LiveCapture.CompanionApp.CompanionAppDevice<IVirtualCameraClient>
    VirtualCameraDevice
    Inherited Members
    LiveCaptureDevice.GetTakeRecorder()
    LiveCaptureDevice.OnDestroy()
    LiveCaptureDevice.IsRecording()
    LiveCaptureDevice.StartRecording()
    LiveCaptureDevice.StopRecording()
    LiveCaptureDevice.Refresh()
    MonoBehaviour.IsInvoking()
    MonoBehaviour.CancelInvoke()
    MonoBehaviour.Invoke(String, Single)
    MonoBehaviour.InvokeRepeating(String, Single, Single)
    MonoBehaviour.CancelInvoke(String)
    MonoBehaviour.IsInvoking(String)
    MonoBehaviour.StartCoroutine(String)
    MonoBehaviour.StartCoroutine(String, Object)
    MonoBehaviour.StartCoroutine(IEnumerator)
    MonoBehaviour.StartCoroutine_Auto(IEnumerator)
    MonoBehaviour.StopCoroutine(IEnumerator)
    MonoBehaviour.StopCoroutine(Coroutine)
    MonoBehaviour.StopCoroutine(String)
    MonoBehaviour.StopAllCoroutines()
    MonoBehaviour.print(Object)
    MonoBehaviour.useGUILayout
    MonoBehaviour.runInEditMode
    Behaviour.enabled
    Behaviour.isActiveAndEnabled
    Component.GetComponent(Type)
    Component.GetComponent<T>()
    Component.TryGetComponent(Type, Component)
    Component.TryGetComponent<T>(T)
    Component.GetComponent(String)
    Component.GetComponentInChildren(Type, Boolean)
    Component.GetComponentInChildren(Type)
    Component.GetComponentInChildren<T>(Boolean)
    Component.GetComponentInChildren<T>()
    Component.GetComponentsInChildren(Type, Boolean)
    Component.GetComponentsInChildren(Type)
    Component.GetComponentsInChildren<T>(Boolean)
    Component.GetComponentsInChildren<T>(Boolean, List<T>)
    Component.GetComponentsInChildren<T>()
    Component.GetComponentsInChildren<T>(List<T>)
    Component.GetComponentInParent(Type, Boolean)
    Component.GetComponentInParent(Type)
    UnityEngine.Component.GetComponentInParent<T>(System.Boolean)
    Component.GetComponentInParent<T>()
    Component.GetComponentsInParent(Type, Boolean)
    Component.GetComponentsInParent(Type)
    Component.GetComponentsInParent<T>(Boolean)
    Component.GetComponentsInParent<T>(Boolean, List<T>)
    Component.GetComponentsInParent<T>()
    Component.GetComponents(Type)
    Component.GetComponents(Type, List<Component>)
    Component.GetComponents<T>(List<T>)
    Component.GetComponents<T>()
    Component.CompareTag(String)
    Component.SendMessageUpwards(String, Object, SendMessageOptions)
    Component.SendMessageUpwards(String, Object)
    Component.SendMessageUpwards(String)
    Component.SendMessageUpwards(String, SendMessageOptions)
    Component.SendMessage(String, Object)
    Component.SendMessage(String)
    Component.SendMessage(String, Object, SendMessageOptions)
    Component.SendMessage(String, SendMessageOptions)
    Component.BroadcastMessage(String, Object, SendMessageOptions)
    Component.BroadcastMessage(String, Object)
    Component.BroadcastMessage(String)
    Component.BroadcastMessage(String, SendMessageOptions)
    Component.transform
    Component.gameObject
    Component.tag
    Component.rigidbody
    Component.rigidbody2D
    Component.camera
    Component.light
    Component.animation
    Component.constantForce
    Component.renderer
    Component.audio
    Component.networkView
    Component.collider
    Component.collider2D
    Component.hingeJoint
    Component.particleSystem
    Object.GetInstanceID()
    Object.GetHashCode()
    Object.Equals(Object)
    Object.Instantiate(Object, Vector3, Quaternion)
    Object.Instantiate(Object, Vector3, Quaternion, Transform)
    Object.Instantiate(Object)
    Object.Instantiate(Object, Transform)
    Object.Instantiate(Object, Transform, Boolean)
    Object.Instantiate<T>(T)
    Object.Instantiate<T>(T, Vector3, Quaternion)
    Object.Instantiate<T>(T, Vector3, Quaternion, Transform)
    Object.Instantiate<T>(T, Transform)
    Object.Instantiate<T>(T, Transform, Boolean)
    Object.Destroy(Object, Single)
    Object.Destroy(Object)
    Object.DestroyImmediate(Object, Boolean)
    Object.DestroyImmediate(Object)
    Object.FindObjectsOfType(Type)
    Object.FindObjectsOfType(Type, Boolean)
    UnityEngine.Object.FindObjectsByType(System.Type, UnityEngine.FindObjectsSortMode)
    UnityEngine.Object.FindObjectsByType(System.Type, UnityEngine.FindObjectsInactive, UnityEngine.FindObjectsSortMode)
    Object.DontDestroyOnLoad(Object)
    Object.DestroyObject(Object, Single)
    Object.DestroyObject(Object)
    Object.FindSceneObjectsOfType(Type)
    Object.FindObjectsOfTypeIncludingAssets(Type)
    Object.FindObjectsOfType<T>()
    UnityEngine.Object.FindObjectsByType<T>(UnityEngine.FindObjectsSortMode)
    UnityEngine.Object.FindObjectsOfType<T>(System.Boolean)
    UnityEngine.Object.FindObjectsByType<T>(UnityEngine.FindObjectsInactive, UnityEngine.FindObjectsSortMode)
    Object.FindObjectOfType<T>()
    UnityEngine.Object.FindObjectOfType<T>(System.Boolean)
    UnityEngine.Object.FindFirstObjectByType<T>()
    UnityEngine.Object.FindAnyObjectByType<T>()
    UnityEngine.Object.FindFirstObjectByType<T>(UnityEngine.FindObjectsInactive)
    UnityEngine.Object.FindAnyObjectByType<T>(UnityEngine.FindObjectsInactive)
    Object.FindObjectsOfTypeAll(Type)
    Object.FindObjectOfType(Type)
    UnityEngine.Object.FindFirstObjectByType(System.Type)
    UnityEngine.Object.FindAnyObjectByType(System.Type)
    Object.FindObjectOfType(Type, Boolean)
    UnityEngine.Object.FindFirstObjectByType(System.Type, UnityEngine.FindObjectsInactive)
    UnityEngine.Object.FindAnyObjectByType(System.Type, UnityEngine.FindObjectsInactive)
    Object.ToString()
    Object.name
    Object.hideFlags
    Namespace: Unity.LiveCapture.VirtualCamera
    Syntax
    [AddComponentMenu("")]
    [RequireComponent(typeof(FocusPlaneRenderer))]
    [CreateDeviceMenuItem("Virtual Camera Device", 0)]
    [HelpURL("https://docs.unity3d.com/Packages/com.unity.live-capture@4.0/manual/ref-component-virtual-camera-device.html")]
    [DisallowMultipleComponent]
    public class VirtualCameraDevice : CompanionAppDevice<IVirtualCameraClient>, ICompanionAppDevice, ITimedDataSource, IRegistrable
    Remarks

    The virtual camera mimics the experience of using a real camera in a Unity scene. The connected client can control most of the state, such as the camera pose and lens settings, but other features like autofocus need to be computed in the editor as it needs to query the scene. The render from the virtual camera in the editor can be streamed to the client to give visual feedback of the camera state, similar to a camera viewfinder. A VirtualCameraActor and a IVirtualCameraClient must be assigned before the device is useful. The actor is needed to store live or evaluated playback state and affect the scene.

    Properties

    Actor

    Gets the VirtualCameraActor currently assigned to this device.

    Declaration
    public VirtualCameraActor Actor { get; set; }
    Property Value
    Type Description
    VirtualCameraActor

    The assigned actor, or null if none is assigned.

    AnchorEnabled

    Enables or disables anchoring.

    Declaration
    public bool AnchorEnabled { get; set; }
    Property Value
    Type Description
    Boolean

    AnchorSettings

    The AnchorSettings of the current device.

    Declaration
    public AnchorSettings AnchorSettings { get; set; }
    Property Value
    Type Description
    AnchorSettings

    AnchorTarget

    The target to anchor to.

    Declaration
    public Transform AnchorTarget { get; set; }
    Property Value
    Type Description
    Transform

    BufferSize

    The current buffer size.

    Declaration
    public int BufferSize { get; set; }
    Property Value
    Type Description
    Int32
    Implements
    ITimedDataSource.BufferSize

    CameraBody

    The CameraBody of the current device.

    Declaration
    public CameraBody CameraBody { get; }
    Property Value
    Type Description
    CameraBody

    FrameRate

    The number of data samples per second.

    Declaration
    public FrameRate FrameRate { get; }
    Property Value
    Type Description
    FrameRate
    Implements
    ITimedDataSource.FrameRate

    Id

    Get the unique identifier for this instance.

    Declaration
    public string Id { get; }
    Property Value
    Type Description
    String
    Implements
    IRegistrable.Id
    Remarks

    The ID should not be null or empty, and is expected to remain constant for the life of the instance.

    IsSynchronized

    Signal to the data source whether it is being synchronized via PresentAt(FrameTimeWithRate).

    Declaration
    public bool IsSynchronized { get; set; }
    Property Value
    Type Description
    Boolean
    Implements
    ITimedDataSource.IsSynchronized
    Remarks

    When true, the data source should disable its own update mechanism.

    Lens

    The Lens of the current device.

    Declaration
    public Lens Lens { get; set; }
    Property Value
    Type Description
    Lens

    LensAsset

    The LensAsset of the current device.

    Declaration
    public LensAsset LensAsset { get; set; }
    Property Value
    Type Description
    LensAsset

    LensIntrinsics

    The LensIntrinsics of the current device.

    Declaration
    public LensIntrinsics LensIntrinsics { get; }
    Property Value
    Type Description
    LensIntrinsics

    MaxBufferSize

    The maximum size of the sample buffer, if limited.

    Declaration
    public int? MaxBufferSize { get; }
    Property Value
    Type Description
    Nullable<Int32>
    Implements
    ITimedDataSource.MaxBufferSize

    MinBufferSize

    The minimum size of the sample buffer, if limited.

    Declaration
    public int? MinBufferSize { get; }
    Property Value
    Type Description
    Nullable<Int32>
    Implements
    ITimedDataSource.MinBufferSize

    Offset

    The time offset applied to sample timecodes, in frames.

    Declaration
    public FrameTime Offset { get; set; }
    Property Value
    Type Description
    FrameTime
    Implements
    ITimedDataSource.Offset
    Remarks

    The frame duration corresponds to the FrameRate of this source. This value should typically match the time delay between timecode generation and data sampling.

    Origin

    The position and rotation of the world's origin.

    Declaration
    public Pose Origin { get; }
    Property Value
    Type Description
    Pose

    Pose

    The position and rotation of the current device in world coordinates.

    Declaration
    public Pose Pose { get; }
    Property Value
    Type Description
    Pose

    Synchronizer

    The ISynchronizer controlling this source.

    Declaration
    public ISynchronizer Synchronizer { get; set; }
    Property Value
    Type Description
    ISynchronizer
    Implements
    ITimedDataSource.Synchronizer
    Remarks

    In most cases you can simply implement this as an auto-property. The default synchronizer implementation automatically assigns this property when you call AddDataSource(ITimedDataSource).

    Methods

    GetAssetName()

    Gets the name used for the take asset name.

    Declaration
    protected override string GetAssetName()
    Returns
    Type Description
    String

    The name of the asset.

    Overrides
    Unity.LiveCapture.CompanionApp.CompanionAppDevice<Unity.LiveCapture.VirtualCamera.IVirtualCameraClient>.GetAssetName()

    IsReady()

    Indicates whether a device is ready for recording.

    Declaration
    public override bool IsReady()
    Returns
    Type Description
    Boolean

    true if ready for recording; otherwise, false.

    Overrides
    Unity.LiveCapture.CompanionApp.CompanionAppDevice<Unity.LiveCapture.VirtualCamera.IVirtualCameraClient>.IsReady()

    LiveUpdate()

    Override this method to update the device during live mode.

    Declaration
    public override void LiveUpdate()
    Overrides
    LiveCaptureDevice.LiveUpdate()
    Remarks

    This method is called after the animation system execution and before the script's LateUpdate.

    OnClientAssigned()

    The device calls this method when a new client is assigned.

    Declaration
    protected override void OnClientAssigned()
    Overrides
    Unity.LiveCapture.CompanionApp.CompanionAppDevice<Unity.LiveCapture.VirtualCamera.IVirtualCameraClient>.OnClientAssigned()

    OnClientUnassigned()

    The device calls this method when the client is unassigned.

    Declaration
    protected override void OnClientUnassigned()
    Overrides
    Unity.LiveCapture.CompanionApp.CompanionAppDevice<Unity.LiveCapture.VirtualCamera.IVirtualCameraClient>.OnClientUnassigned()

    OnDisable()

    This function is called when the behaviour becomes disabled.

    Declaration
    protected override void OnDisable()
    Overrides
    Unity.LiveCapture.CompanionApp.CompanionAppDevice<Unity.LiveCapture.VirtualCamera.IVirtualCameraClient>.OnDisable()

    OnEnable()

    This function is called when the object becomes enabled and active.

    Declaration
    protected override void OnEnable()
    Overrides
    Unity.LiveCapture.CompanionApp.CompanionAppDevice<Unity.LiveCapture.VirtualCamera.IVirtualCameraClient>.OnEnable()

    OnRecordingChanged()

    The device calls this method when the recording state has changed.

    Declaration
    protected override void OnRecordingChanged()
    Overrides
    Unity.LiveCapture.CompanionApp.CompanionAppDevice<Unity.LiveCapture.VirtualCamera.IVirtualCameraClient>.OnRecordingChanged()

    OnRegisterLiveProperties(IPropertyPreviewer)

    The device calls this method when a live performance starts and properties are about to change.

    Declaration
    protected override void OnRegisterLiveProperties(IPropertyPreviewer previewer)
    Parameters
    Type Name Description
    IPropertyPreviewer previewer

    The IPropertyPreviewer to use to register live properties.

    Overrides
    Unity.LiveCapture.CompanionApp.CompanionAppDevice<Unity.LiveCapture.VirtualCamera.IVirtualCameraClient>.OnRegisterLiveProperties(Unity.LiveCapture.IPropertyPreviewer)

    OnShotChanged(IShot)

    The device calls this method when the shot has changed.

    Declaration
    protected override void OnShotChanged(IShot shot)
    Parameters
    Type Name Description
    IShot shot

    The IShot that changed.

    Overrides
    Unity.LiveCapture.CompanionApp.CompanionAppDevice<Unity.LiveCapture.VirtualCamera.IVirtualCameraClient>.OnShotChanged(Unity.LiveCapture.IShot)

    OnValidate()

    Declaration
    protected virtual void OnValidate()

    PresentAt(FrameTimeWithRate)

    Applies the data for a given timecode to the scene.

    Declaration
    public TimedSampleStatus PresentAt(FrameTimeWithRate presentTime)
    Parameters
    Type Name Description
    FrameTimeWithRate presentTime

    The timecode to present.

    Returns
    Type Description
    TimedSampleStatus

    A status representing the ability of the source to present at the requested timecode.

    Implements
    ITimedDataSource.PresentAt(FrameTimeWithRate)

    TryGetBufferRange(out FrameTime, out FrameTime)

    Gets the frame time of the newest and oldest samples buffered by the data source.

    Declaration
    public bool TryGetBufferRange(out FrameTime oldestSample, out FrameTime newestSample)
    Parameters
    Type Name Description
    FrameTime oldestSample

    The frame time of the oldest buffered sample, or langword_csharp_default if there are no buffered samples.

    FrameTime newestSample

    The frame time of the newest buffered sample, or langword_csharp_default if there are no buffered samples.

    Returns
    Type Description
    Boolean

    true if there are any buffered samples; otherwise, false.

    Implements
    ITimedDataSource.TryGetBufferRange(out FrameTime, out FrameTime)
    Remarks

    The frame duration corresponds to the FrameRate of this source.

    UpdateClient()

    Called to send the device state to the client.

    Declaration
    public override void UpdateClient()
    Overrides
    Unity.LiveCapture.CompanionApp.CompanionAppDevice<Unity.LiveCapture.VirtualCamera.IVirtualCameraClient>.UpdateClient()

    UpdateDevice()

    Updates the internal state of the device.

    Declaration
    public override void UpdateDevice()
    Overrides
    LiveCaptureDevice.UpdateDevice()

    Write(ITakeBuilder)

    Stores the recording into a take using a ITakeBuilder.

    Declaration
    public override void Write(ITakeBuilder takeBuilder)
    Parameters
    Type Name Description
    ITakeBuilder takeBuilder

    The take builder object.

    Overrides
    LiveCaptureDevice.Write(ITakeBuilder)

    Explicit Interface Implementations

    IRegistrable.FriendlyName

    Get a human-readable name for the instance.

    Declaration
    string IRegistrable.FriendlyName { get; }
    Returns
    Type Description
    String
    Implements
    IRegistrable.FriendlyName

    ITimedDataSource.UndoTarget

    The object to record to the undo stack when the user modifies the properties of this data source.

    Declaration
    Object ITimedDataSource.UndoTarget { get; }
    Returns
    Type Description
    Object
    Implements
    ITimedDataSource.UndoTarget
    Remarks

    To enable undo when using the synchronization windows, this must be the object that stores the serialized state for this data source. When null, this data source will not support undo operations.

    トップに戻る
    Copyright © 2023 Unity Technologies — 商標と利用規約
    • 法律関連
    • プライバシーポリシー
    • クッキー
    • 私の個人情報を販売または共有しない
    • Your Privacy Choices (Cookie Settings)