SetOnTakePhotoCallback#

ExportPhotographyCamera.SetOnTakePhotoCallback(callback)#

写真撮影時に呼び出されるコールバック関数を登録します。

Parameters:

callback (function) -- コールバック関数

説明#

コールバック関数は、table を引数として受け取る関数である必要があります。
引数の table は、以下のフィールドを持ちます。

フィールド

説明

textureId

string

撮影結果の写真のテクスチャ ID

textureIdExportMaterial.SetTexture() に渡すことで、撮影結果の写真を表示することができます。

注意

撮影結果のテクスチャは一時的にしか利用できません。
テクスチャは撮影から5 秒後に無効化され、真っ黒になります。

引数に関数以外を渡した場合、コンソールにエラーメッセージが出力されます。

sample#

-- 撮影結果のテクスチャを表示する GameObject に "Photo" という名前のマテリアルが設定されているとする
local photoMaterialName = "Photo"

-- 写真撮影時に実行されるコールバック関数を定義
function onTakePhotoCallback(photoMetadata)
  local photoTextureId = photoMetadata.textureId
  vci.assets.material.SetTexture(photoMaterialName, photoTextureId)
end

-- 写真撮影用カメラを生成する
local cameraAnchor = vci.assets.GetTransform("CameraAnchor")
local camera = vci.cameraSystem.CreatePhotographyCamera(cameraAnchor)

-- 写真撮影時に onTakePhotoCallback を実行するように設定
-- 以後、写真撮影用カメラで写真を撮影すると、onTakePhotoCallback が実行される
camera.SetOnTakePhotoCallback(onTakePhotoCallback)