インターフェイス IInputCameraEx
Namespace: GameCanvas
public interface IInputCameraEx : IInputCamera継承元
プロパティ
CameraDeviceCount
継承元: IInputCamera
int CameraDeviceCount { get; }認識可能なカメラ(外部入力映像)の数
CameraDevices
継承元: IInputCamera
System.ReadOnlySpan<GcCameraDevice> CameraDevices { get; }全ての認識可能なカメラ(外部入力映像)の一覧
HasUserAuthorizedPermissionCamera
継承元: IInputCamera
bool HasUserAuthorizedPermissionCamera { get; }カメラデバイスへのアクセス権限を取得済みかどうか
メソッド
DidUpdateCameraImageThisFrame(GcCameraDevice)
継承元: IInputCamera
bool DidUpdateCameraImageThisFrame(in GcCameraDevice camera)前回のフレーム処理以降に 指定されたカメラ(外部入力映像)テクスチャーに更新があったかどうか
パラメーター
camera— カメラ(外部入力映像)
戻り値
テクスチャーに更新があったかどうか
DrawCameraImage(GcCameraDevice, bool)
void DrawCameraImage(in GcCameraDevice camera, bool autoPlay = true)カメラ(外部入力映像)を描画します
パラメーター
camera— カメラ(外部入力映像)autoPlay— カメラ(外部入力映像)が停止していた場合、内部でPlayCameraImageを呼び出すかどうか
DrawCameraImage(GcCameraDevice, float, float, float, bool)
void DrawCameraImage(in GcCameraDevice camera, in float x, in float y, float degree = 0f, bool autoPlay = true)カメラ(外部入力映像)を描画します
パラメーター
camera— カメラ(外部入力映像)x— X座標y— Y座標degree— 回転(度数法)autoPlay— カメラ(外部入力映像)が停止していた場合、内部でPlayCameraImageを呼び出すかどうか
DrawCameraImage(GcCameraDevice, float, float, float, float, float, bool)
void DrawCameraImage(in GcCameraDevice camera, in float x, in float y, in float width, in float height, float degree = 0f, bool autoPlay = true)カメラ(外部入力映像)を拡縮して描画します
パラメーター
camera— カメラ(外部入力映像)x— X座標y— Y座標width— 横幅。映像の横幅がこれになるように拡縮されるheight— 縦幅。映像の縦幅がこれになるように拡縮されるdegree— 回転(度数法)autoPlay— カメラ(外部入力映像)が停止していた場合、内部でPlayCameraImageを呼び出すかどうか
DrawCameraImage(GcCameraDevice, float2, float, bool)
void DrawCameraImage(in GcCameraDevice camera, in float2 position, float degree = 0f, bool autoPlay = true)カメラ(外部入力映像)を描画します
パラメーター
camera— カメラ(外部入力映像)position— 位置degree— 回転(度数法)autoPlay— カメラ(外部入力映像)が停止していた場合、内部でPlayCameraImageを呼び出すかどうか
DrawCameraImage(GcCameraDevice, GcRect, bool)
void DrawCameraImage(in GcCameraDevice camera, in GcRect rect, bool autoPlay = true)カメラ(外部入力映像)を拡縮して描画します
パラメーター
camera— カメラ(外部入力映像)rect— 映像をフィッティングする矩形領域autoPlay— カメラ(外部入力映像)が停止していた場合、内部でPlayCameraImageを呼び出すかどうか
FocusCameraImage(GcCameraDevice, float2?)
継承元: IInputCamera
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)
継承元: IInputCamera
WebCamTexture? GetOrCreateCameraTexture(in GcCameraDevice camera, in GcResolution request)指定されたカメラ(外部入力映像)のテクスチャーを生成もしくは取得します
備考
- 既にテクスチャーが生成済みの場合は、
request引数の値は無視されます - 生成後に解像度を変更する場合は
TryChangeCameraImageResolution関数を呼び出してください
パラメーター
camera— カメラ(外部入力映像)request— テクスチャーが未生成だった場合に、希望する解像度とリフレッシュレート
戻り値
テクスチャー
GetPrimaryCameraResolution(GcCameraDevice)
GcResolution GetPrimaryCameraResolution(in GcCameraDevice camera)指定されたカメラ(外部入力映像)の推奨解像度を取得します
備考
- 推奨解像度を取得できない場合、現在のキャンバス解像度とフレームレートに基づいた適当な値を返します
- エディタでは常に推奨解像度を取得できません
パラメーター
camera— カメラ(外部入力映像)
戻り値
解像度とリフレッシュレート
IsFlippedCameraImage(GcCameraDevice)
継承元: IInputCamera
bool IsFlippedCameraImage(in GcCameraDevice camera)指定されたカメラ(外部入力映像)は上下が反転しているかどうか
パラメーター
camera— カメラ(外部入力映像)
戻り値
上下が反転しているかどうか
IsPlayingCameraImage(GcCameraDevice)
継承元: IInputCamera
bool IsPlayingCameraImage(in GcCameraDevice camera)指定されたカメラ(外部入力映像)の更新が行われているかどうか
パラメーター
camera— カメラ(外部入力映像)
戻り値
更新が行われているかどうか
PauseCameraImage(GcCameraDevice)
継承元: IInputCamera
bool PauseCameraImage(in GcCameraDevice camera)指定されたカメラ(外部入力映像)の更新処理を一時停止します
パラメーター
camera— カメラ(外部入力映像)
戻り値
停止したかどうか(元から停止していた場合を含まない)
PlayCameraImage(GcCameraDevice, GcResolution, int2)
継承元: IInputCamera
bool PlayCameraImage(in GcCameraDevice camera, in GcResolution request, out int2 resolution)指定されたカメラ(外部入力映像)の更新処理を開始します
備考
- カメラごとにこのAPIを呼び出すことで、それらを同時に更新することが可能です
- ただし、同じ名称のカメラは、同時に更新することができません
- 既にテクスチャーが生成済みの場合は、
request引数の値は無視されます - 生成後に解像度を変更する場合は
TryChangeCameraImageResolution関数を呼び出してください
パラメーター
camera— カメラ(外部入力映像)request— テクスチャーが未生成だった場合に、希望する解像度とリフレッシュレートresolution— カメラ(外部入力映像)の解像度
戻り値
開始したかどうか(元から更新していた場合を含まない)
PlayCameraImage(GcCameraDevice, int2)
bool PlayCameraImage(in GcCameraDevice camera, out int2 resolution)指定されたカメラ(外部入力映像)の更新処理を開始します
備考
- カメラごとにこのAPIを呼び出すことで、それらを同時に更新することが可能です
- ただし、同じ名称のカメラは、同時に更新することができません
- テクスチャーが未生成だった場合は、内部で勝手に適当な解像度で生成します
パラメーター
camera— カメラ(外部入力映像)resolution— カメラ(外部入力映像)の解像度
戻り値
開始したかどうか(元から更新していた場合を含まない)
PlayCameraImage(GcCameraDevice)
bool PlayCameraImage(in GcCameraDevice camera)指定されたカメラ(外部入力映像)の更新処理を開始します
備考
- カメラごとにこのAPIを呼び出すことで、それらを同時に更新することが可能です
- ただし、同じ名称のカメラは、同時に更新することができません
パラメーター
camera— カメラ(外部入力映像)
戻り値
開始したかどうか(元から更新していた場合を含まない)
RequestUserAuthorizedPermissionCameraAsync(System.Action<bool>)
継承元: IInputCamera
void RequestUserAuthorizedPermissionCameraAsync(in System.Action<bool> callback)カメラデバイスへのアクセス権限を要求します
パラメーター
callback— 結果を通知するコールバック
StopCameraImage(GcCameraDevice)
継承元: IInputCamera
void StopCameraImage(in GcCameraDevice camera)指定されたカメラ(外部入力映像)の更新処理を完全に停止します
パラメーター
camera— カメラ(外部入力映像)
TryChangeCameraImageResolution(GcCameraDevice, GcResolution)
継承元: IInputCamera
int2 TryChangeCameraImageResolution(in GcCameraDevice camera, in GcResolution request)指定されたカメラ(外部入力映像)の解像度変更を試みます
パラメーター
camera— カメラ(外部入力映像)request— 希望する解像度とリフレッシュレート
戻り値
実際に設定された解像度
TryGetCameraImage(GcCameraDevice?)
継承元: IInputCamera
bool TryGetCameraImage([NotNullWhen(true)] out GcCameraDevice? camera)カメラ(外部入力映像)の取得を試みます
パラメーター
camera— カメラ(外部入力映像)
戻り値
取得できたかどうか
TryGetCameraImage(string, GcCameraDevice?)
継承元: IInputCamera
bool TryGetCameraImage(in string deviceName, [NotNullWhen(true)] out GcCameraDevice? camera)デバイス名を指定して、カメラ(外部入力映像)の取得を試みます
パラメーター
deviceName— デバイス名camera— カメラ(外部入力映像)
戻り値
取得できたかどうか
TryGetCameraImageAll(System.ReadOnlySpan<GcCameraDevice>)
継承元: IInputCamera
bool TryGetCameraImageAll(out System.ReadOnlySpan<GcCameraDevice> devices)全ての認識可能なカメラ(外部入力映像)の取得を試みます
パラメーター
devices— カメラ(外部入力映像)の一覧
戻り値
1つ以上 取得できたかどうか
TryGetCameraImageRotation(GcCameraDevice, float)
継承元: IInputCamera
bool TryGetCameraImageRotation(in GcCameraDevice camera, out float degree)指定されたカメラ(外部入力映像)の回転角度取得を試みます
パラメーター
camera— カメラ(外部入力映像)degree— 回転角度
戻り値
取得できたかどうか
TryGetCameraImageSize(GcCameraDevice, int2)
継承元: IInputCamera
bool TryGetCameraImageSize(in GcCameraDevice camera, out int2 resolution)指定されたカメラ(外部入力映像)の解像度取得を試みます
備考
- テクスチャーが未生成の場合は、取得に失敗します
- テクスチャーを生成するには、
PlayCameraImageもしくはGetOrCreateCameraTexture関数を呼び出してください
パラメーター
camera— カメラ(外部入力映像)resolution— カメラ(外部入力映像)の解像度
戻り値
取得できたかどうか
UpdateCameraDevice()
継承元: IInputCamera
int UpdateCameraDevice()カメラ(外部入力映像)の一覧を更新します
戻り値
更新後の 認識可能なカメラ(外部入力映像)の数
