インターフェイス IInputCamera
Namespace: GameCanvas
public interface IInputCameraプロパティ
CameraDeviceCount
int CameraDeviceCount { get; }認識可能なカメラ(外部入力映像)の数
CameraDevices
System.ReadOnlySpan<GcCameraDevice> CameraDevices { get; }全ての認識可能なカメラ(外部入力映像)の一覧
HasUserAuthorizedPermissionCamera
bool HasUserAuthorizedPermissionCamera { get; }カメラデバイスへのアクセス権限を取得済みかどうか
メソッド
DidUpdateCameraImageThisFrame(GcCameraDevice)
bool DidUpdateCameraImageThisFrame(in GcCameraDevice camera)前回のフレーム処理以降に 指定されたカメラ(外部入力映像)テクスチャーに更新があったかどうか
パラメーター
camera— カメラ(外部入力映像)
戻り値
テクスチャーに更新があったかどうか
FocusCameraImage(GcCameraDevice, float2?)
void FocusCameraImage(in GcCameraDevice camera, in float2? uv)カメラ(外部入力映像)の任意の点に焦点をあわせるように要求します
備考
- このAPIは、対応するカメラデバイスに対して、実機上での実行したときのみ動作します
uv引数は、キャンバス座標系ではなく、左下を原点とする 0.0~1.0 のUV座標系を指定します- 焦点あわせを解除するには、
uv引数に null を渡します
パラメーター
camera— カメラ(外部入力映像)uv— 焦点をあわせる位置(左下を原点とする 0.0~1.0 のUV座標系)
GetOrCreateCameraTexture(GcCameraDevice, GcResolution)
WebCamTexture? GetOrCreateCameraTexture(in GcCameraDevice camera, in GcResolution request)指定されたカメラ(外部入力映像)のテクスチャーを生成もしくは取得します
備考
- 既にテクスチャーが生成済みの場合は、
request引数の値は無視されます - 生成後に解像度を変更する場合は
TryChangeCameraImageResolution関数を呼び出してください
パラメーター
camera— カメラ(外部入力映像)request— テクスチャーが未生成だった場合に、希望する解像度とリフレッシュレート
戻り値
テクスチャー
IsFlippedCameraImage(GcCameraDevice)
bool IsFlippedCameraImage(in GcCameraDevice camera)指定されたカメラ(外部入力映像)は上下が反転しているかどうか
パラメーター
camera— カメラ(外部入力映像)
戻り値
上下が反転しているかどうか
IsPlayingCameraImage(GcCameraDevice)
bool IsPlayingCameraImage(in GcCameraDevice camera)指定されたカメラ(外部入力映像)の更新が行われているかどうか
パラメーター
camera— カメラ(外部入力映像)
戻り値
更新が行われているかどうか
PauseCameraImage(GcCameraDevice)
bool PauseCameraImage(in GcCameraDevice camera)指定されたカメラ(外部入力映像)の更新処理を一時停止します
パラメーター
camera— カメラ(外部入力映像)
戻り値
停止したかどうか(元から停止していた場合を含まない)
PlayCameraImage(GcCameraDevice, GcResolution, int2)
bool PlayCameraImage(in GcCameraDevice camera, in GcResolution request, out int2 resolution)指定されたカメラ(外部入力映像)の更新処理を開始します
備考
- カメラごとにこのAPIを呼び出すことで、それらを同時に更新することが可能です
- ただし、同じ名称のカメラは、同時に更新することができません
- 既にテクスチャーが生成済みの場合は、
request引数の値は無視されます - 生成後に解像度を変更する場合は
TryChangeCameraImageResolution関数を呼び出してください
パラメーター
camera— カメラ(外部入力映像)request— テクスチャーが未生成だった場合に、希望する解像度とリフレッシュレートresolution— カメラ(外部入力映像)の解像度
戻り値
開始したかどうか(元から更新していた場合を含まない)
RequestUserAuthorizedPermissionCameraAsync(System.Action<bool>)
void RequestUserAuthorizedPermissionCameraAsync(in System.Action<bool> callback)カメラデバイスへのアクセス権限を要求します
パラメーター
callback— 結果を通知するコールバック
StopCameraImage(GcCameraDevice)
void StopCameraImage(in GcCameraDevice camera)指定されたカメラ(外部入力映像)の更新処理を完全に停止します
パラメーター
camera— カメラ(外部入力映像)
TryChangeCameraImageResolution(GcCameraDevice, GcResolution)
int2 TryChangeCameraImageResolution(in GcCameraDevice camera, in GcResolution request)指定されたカメラ(外部入力映像)の解像度変更を試みます
パラメーター
camera— カメラ(外部入力映像)request— 希望する解像度とリフレッシュレート
戻り値
実際に設定された解像度
TryGetCameraImage(GcCameraDevice?)
bool TryGetCameraImage([NotNullWhen(true)] out GcCameraDevice? camera)カメラ(外部入力映像)の取得を試みます
パラメーター
camera— カメラ(外部入力映像)
戻り値
取得できたかどうか
TryGetCameraImage(string, GcCameraDevice?)
bool TryGetCameraImage(in string deviceName, [NotNullWhen(true)] out GcCameraDevice? camera)デバイス名を指定して、カメラ(外部入力映像)の取得を試みます
パラメーター
deviceName— デバイス名camera— カメラ(外部入力映像)
戻り値
取得できたかどうか
TryGetCameraImageAll(System.ReadOnlySpan<GcCameraDevice>)
bool TryGetCameraImageAll(out System.ReadOnlySpan<GcCameraDevice> devices)全ての認識可能なカメラ(外部入力映像)の取得を試みます
パラメーター
devices— カメラ(外部入力映像)の一覧
戻り値
1つ以上 取得できたかどうか
TryGetCameraImageRotation(GcCameraDevice, float)
bool TryGetCameraImageRotation(in GcCameraDevice camera, out float degree)指定されたカメラ(外部入力映像)の回転角度取得を試みます
パラメーター
camera— カメラ(外部入力映像)degree— 回転角度
戻り値
取得できたかどうか
TryGetCameraImageSize(GcCameraDevice, int2)
bool TryGetCameraImageSize(in GcCameraDevice camera, out int2 resolution)指定されたカメラ(外部入力映像)の解像度取得を試みます
備考
- テクスチャーが未生成の場合は、取得に失敗します
- テクスチャーを生成するには、
PlayCameraImageもしくはGetOrCreateCameraTexture関数を呼び出してください
パラメーター
camera— カメラ(外部入力映像)resolution— カメラ(外部入力映像)の解像度
戻り値
取得できたかどうか
UpdateCameraDevice()
int UpdateCameraDevice()カメラ(外部入力映像)の一覧を更新します
戻り値
更新後の 認識可能なカメラ(外部入力映像)の数
