スポンサーサイト


上記の広告は1ヶ月以上更新のないブログに表示されています。
新しい記事を書く事で広告が消せます。

視野角を調整して、パノラマ写真を撮ってみる


ちょっと別のところでやろうとしていることを調べていたら、Second Lifeでも使えるかな?と言うネタになったので、まとめてみることにしました。

 

今回やろうとしていること
Viewerの視野角を調整して、自分の周りをぐるっと一周したSSを撮影してパノラマ写真を作ってみようと思います。

Test20101111

 

視野角って?
Wikipediaの説明はこちらです。
詳しいことはカメラ技術などを扱っているところを見ると分かるかもしれません。

Second Life Viewerの場合、環境設定かCtrl+8、9、0で設定することが出来ます。
(いじっていて見た目がおかしくなってしまったら、Ctrl+9で元に戻ります)

 

20101111_006
デフォルトの視野角

 

20101111_007
視野角を広くした状態

 

20101111_008
視野角を狭くした状態

 

パノラマ写真を撮るには?
視野角を設定できるので、これを90度になるようにして東西南北のSSを撮ることが出来れば、パノラマ写真に流用できそうです。

実際インワールドでもRegionの周りにヒュージプリムでパノラマ写真を貼っているところを見たことがあるような気がします。

 

下準備として撮影用の椅子を用意する
東西南北を撮るために、撮影用の椅子を用意します。

キューブをRezして、その中にスクリプトを入れます。
とりあえず動くってレベルなので、プリムを回転した場合などのことは全く考えていません。

//This is an auto-generated script created by Dialog Generator
//Available at http://ugleh.com/llDialog.php
integer channel;
list menu = ["X+","X-","Y+","Y-","Z+","Z-"];
string message = "Select XYZ+-";
 
rotation sitRot;
 
default
{
    state_entry()
    {
        channel = 1;
        llListen(channel,"", "","");
 
        float degrees=0;
        sitRot = llAxisAngle2Rot(<0, 0, 1>, degrees * DEG_TO_RAD);
        llSitTarget(<0, 0, 0.1>, sitRot);
    }
 
    touch_start(integer count)
    {
        if (llDetectedKey(0) == llGetOwner()){
            llDialog(llGetOwner(), message, menu, channel);
        }
    }
 
    listen(integer chan, string name, key id, string mes)
    {
        if (mes =="X+"){
            //Do something for option X+
            llSay(0,"X+");
            llSetCameraEyeOffset(<0, 0, 0> * sitRot);      // カメラの置かれる位置
            llSetCameraAtOffset(<1, 0, 0> * sitRot);       // カメラの視点
        }
        else if (mes =="X-"){
            //Do something for option X-
            llSay(0,"X-");
            llSetCameraEyeOffset(<0, 0, 0> * sitRot);      // カメラの置かれる位置
            llSetCameraAtOffset(<-1, 0, 0> * sitRot);       // カメラの視点
        }
        else if (mes =="Y+"){
            //Do something for option Y+
            llSay(0,"Y+");
            llSetCameraEyeOffset(<0, 0, 0> * sitRot);      // カメラの置かれる位置
            llSetCameraAtOffset(<0, 1, 0> * sitRot);       // カメラの視点
        }
        else if (mes =="Y-"){
            //Do something for option Y-
            llSay(0,"Y-");
            llSetCameraEyeOffset(<0, 0, 0> * sitRot);      // カメラの置かれる位置
            llSetCameraAtOffset(<0, -1, 0> * sitRot);       // カメラの視点
        }
        else if (mes =="Z+"){
            //Do something for option Z+
            llSay(0,"Z+");
            llSetCameraEyeOffset(<0, 0, 0> * sitRot);      // カメラの置かれる位置
            llSetCameraAtOffset(<0, 0, 1> * sitRot);       // カメラの視点
        }
        else if (mes =="Z-"){
            //Do something for option Z-
            llSay(0,"Z-");
            llSetCameraEyeOffset(<0, 0, 0> * sitRot);      // カメラの置かれる位置
            llSetCameraAtOffset(<0, 0, -1> * sitRot);       // カメラの視点
        }
        else if (llToUpper(mes) =="MENU"){
            //Do something for option menu
            llDialog(llGetOwner(), message, menu, channel);
        }
    }
}

 

使い方ですが、

・プリムにタッチする、または「/1 menu」とチャットする
・X、Y、Z±の6方向から見たい方向をダイアログボックスから選択する
・プリムに座る

注意点としては

カメラの位置関係などから、体を貫通する可能性が高いので、アルファレイヤーを使用するかアバター表示をオフにして画面に表示されないようにする必要があります。

 

視野角をいくつにすれば90度になるのか?
今作った椅子に座って撮影するわけですが、問題は視野角をいくつに設定すればいいのか?と言うことです。

Second Life Viewerの環境設定の中にある「視野角」は、スライダーになっていて数値設定が出来なくなっています。
ただ、過去のバージョンやサードパーティ製Viewerでは数値設定できるものもあります。
(この数値はラジアン表示のようです)

そのため、数値設定できる場合は90度=π/2=1.57に設定すればOKです。

 

スライダーしかない場合は・・・一応こんなやり方で調整できると思います。

 

20101111_009
四方を壁で囲い、その中心に先ほどの撮影用の椅子を設置します。

 

20101111_010
画面の解像度を真四角にし、椅子に座ってスライダーを動かしながら、正面にある壁の色だけが見える位置にスライダーを調整すればOKです。

まだ左右に隣の壁の色が見えている時は、視野角が小さいと言うことです。

 

実際に撮影する
視野角が決まったら、東西南北の撮影をします。

 

20101111_001
20101111_002
20101111_003
20101111_004
こんな感じに撮れました。

 

 20101111_011
ちょっと分かりにくいかもしれませんが、 左手奥に見えるステージみたいなところから東西南北のSSを撮り、手前にテクスチャを貼った状態を示してみました。

遠くに見える山などがきちんと繋がっている状態が分かると思います。

 

20101111_012
GIMPを使って東西南北のSSを横に繋ぎ、シリンダーを中空にして貼ってみました。

それなりに違和感なく繋がっているように感じます。
こういう時は遠距離の風景だけをSSに撮った方が自然になるかもしれませんね。

 

使いどころが難しい・・・と言うか何に使うんだ、と言う気がしないでもありませんが、自分用メモと言うことで><

そもそも何を調べ始めてここに至ったのかは、また別エントリーで記事を書いてみようと思います。

スポンサーサイト

テーマ : セカンドライフ - ジャンル : オンラインゲーム

タグ : セカンドライフ Second Life SecondLife

コメント

No title

消えゆく運命となったSIMやスポットを擬似空間として保存出来ますね。面白いです

No title

コメントありがとうございます!

Wassrの方ではGoogleストリートビューみたいな使い方が出来ないか?と言う話になっていました。

使い方次第で面白いことが出来るかもしれませんね。
コメントの投稿
管理者にだけ表示を許可する

FC2カウンター
プロフィール

Kagami Kohime Kagamin_Super

Author:Kagami Kohime

Second Life内では身長140cmのチビッコ。
最近みんなからは「かがみん」と呼ばれています。

これまで獲得した称号
「イベント王女」「誤爆女王」


Kagami Kohime Original Brand Shop「KagamiN-YA」もよろしくお願いします。

↓お店の位置はこちら
★音の森店

Second Life Marketplaceでのオンラインショッピングはこちらです

管理用リンク

最近の記事+コメント
最近のトラックバック
ブログ内検索
カレンダー(月別)
09 ≪│2017/10│≫ 11
1 2 3 4 5 6 7
8 9 10 11 12 13 14
15 16 17 18 19 20 21
22 23 24 25 26 27 28
29 30 31 - - - -
カテゴリー
RSSフィード
QRコード
QRコード
メールフォーム

名前:
メール:
件名:
本文:

お遊び系のブログパーツ
★このFacebookプロフィール貼っておけば、毎回中の人男で・・・とか説明しなくて良いでしょうか・・・?
Katsumi Kenichi

バナーを作成

★ニコ動にアップした動画など


★ブログに妖精が・・・住み着いたようです・・・


★これまで入れたどのブログパーツよりも人気あるな、これ・・・


★XBox360好きなのですよ~。


★Second Lifeを起動していても、まだPCには余力があったりします。その余力をBOINCを使って社会貢献に役立ててみませんか?
上記広告は1ヶ月以上更新のないブログに表示されています。新しい記事を書くことで広告を消せます。