Android端末でも実行できることを確認しました。
今回はその続きです。
せっかくならフルスクリーン表示したい。
そんなときは、
(1) カメラ設定で、「Projection」を「Orthographic」にする
(2) Planeに表示する
(3) Planeを画面いっぱいに拡大する
ことで実現できました。
そのときの備忘メモ。
==============================================================
(1) カメラ設定で、「Projection」を「Orthographic」にする
デフォルトのカメラの場合は、↓のような設定をしました。
座標で「y=0」というのが、後の作業でポイントになります。

(2) Planeに表示する
Planeを用意して、下記のスクリプトを用意します。
スクリプトは「[Unity] WebCamTextureの設定で元々のカメラ解像度を使いたい」とほとんど同じです↓
-------------------------------------------------------Planeは、(1)のカメラ位置と揃えるために「y=0」としています。
private var webcamTexture : WebCamTexture;
private var webcamTextureOrg : WebCamTexture;
private var deviceMem : WebCamDevice[] = new WebCamDevice[3];
private var deviceLength : int = 0;
function Start () {
yield Application.RequestUserAuthorization(UserAuthorization.WebCam);
// カメラを取得
var devices : WebCamDevice[] = WebCamTexture.devices;
// メモリに保持
for (var i = 0; i < devices.length; i++) {
if (i < 3) {
deviceMem[i] = devices[i];
}
}
deviceLength = devices.length;
if (deviceLength > 0) {
// オリジナルのままカメラ情報を取得
webcamTextureOrg = WebCamTexture(devices[0].name);
// 解像度とFPSを下げて表示スピードを上げる試み
webcamTexture = WebCamTexture(devices[0].name, webcamTextureOrg.width * 0.5, webcamTextureOrg.height * 0.5, 12);
// WebCamTextureをマテリアルに指定
renderer.material.mainTexture = webcamTexture;
// キャプチャスタート
webcamTexture.Play();
} else {
Debug.LogError("カメラが検出できませんでした。");
}
}
function OnGUI(){
var fps : int = 1 / Time.deltaTime;
GUI.Label(Rect(0, 0, 100, 50), "FPS = " + fps);
}
-------------------------------------------------------
また、Planeをカメラの正面に向けるために回転させています↓

(3) Planeを画面いっぱいに拡大する
画面解像度が「480x800」だったら、Planeの拡大倍率は「x=20,z=12」です。
※(2)で設定したy位置がカメラとPlaneでずれがあると、画面端にスペースができてしまいます

動作させたときのスクリーンショットです↓

画面端に隙間はないです。
ぼやけているのは、(2)で解像度を落としたからです。
カメラのFPSも落としたので、アプリの処理速度はそれなりに確保できました。
↑のスクリーンショット左上にFPSを表示しています。10〜30FPSで変動して若干処理落ちを感じる程度でした
※HTC Desire(Android 2.2.2)で確認
※最近の機種だともっとFPSは上がります
次の予定アプリでは、カメラ動画は「なんとなく見た目がわかれば良い」程度と考えているので
目標は達成できました。
あとは、これに付加する表示処理でFPSを落とさないように注意ですね。
また、Android端末は何種類もあるので、画面解像度の種類もいくつもあります。
その都度、Planeのxとzの拡大倍率は適宜変えていく必要があります。
この2点がこれからの課題になりそうです。