Unityでスマホアプリ用に機種についているカメラを利用して、
タイムリーな映像を背景として利用できないか調べてみました。
つまりWEBカメラ?なのかな。
以下のサイト様が有益情報っぽいです。
① Unityでスマホカメラを全面表示する | Narumium Blog
② Unity で Web カメラを使用する | Lonely Mobiler
※ 追加 2017/6/17
③ [Unity] WebCamTextureのカメラ動画をフルスクリーンで表示してみる: ものづくりログ
④ unityについて質問です。デバイス(androidスマホやiphone)のカメラを起動する方... - Yahoo!知恵袋
これより、完全な備忘録。
1つめのサイト様の手順をもとに作成するとAndroidでかんたんに表示されました。
だけど、なぜか画面が横にたおれています。
うーん
まぁこれはすぐに治せそうな気もする
処理が遅くなったので、③のサイト様を参考にしてみます。
FTPと解像度を制御されているようです。
よくみると違いはここかな?
webcamTexture = WebCamTexture(devices[0].name, webcamTextureOrg.width * 0.5, webcamTextureOrg.height * 0.5, 12);
もしかしたらJSで書かれているので①のサイト様のほうが私にはいいかもしれません。
画面サイズを半分にしてFTPを低くすればいいのか、なるほど。
【余談】
よしXcodeアイフォンで試してみようっておもったら、
なぜかUnityのバージョンアップに伴いxcodeもアップデートをして、
デバッグ用のiPhone機種がOSバージョンがあわないとエラーに・・・
iPhoneのほうをとりあえずアップデート中・・・
やっぱりUnityアップデートしなきゃよかった。
アップデート中ひまなので、
ソースを解析してみました。
//スマホ(Unity)が横ならそのまま
if(Input.deviceOrientation == DeviceOrientation.LandscapeLeft){
transform.localScale = new Vector3 (_w, _h, 1);
}
となっていたので、
アンドロイドで横に倒れているのは、
Player Settingsで画面回転禁止の縦固定にすればいいんだろうか・・・
と。やってみたけど直らない。
gameobject自体が判定してるのかな??
・・・もうちょっと調べてみます。
そうこうしているうちに、
iPhoneのバージョンアップが完了したので、
インストールしてみたら・・・・
強制エラー
こ、これは・・・
info.plistにカメラを使うと明示する必要があるようです。
iOS10ではカメラアクセスなどの目的を明示しないと強制終了する - Qiita
Privacy - Camera Usage Description
に説明文をつければOKのようです
で、
iOS・アンドロイドともに動きました。
よかったー
画面の回転がうまくいっていません。
つまりスマホの向きとカメラの向きがあべこべ。
ってことで④を参考にしてみます。
【Unityの世話になった書籍】
ほぼ初心者のわたしが御世話になったおすすめの書籍
深いとこまでちゃんと記述されていてありがたい。