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