2009年1月30日金曜日

SnapShot カメラ目線の作り方

スナップショットを撮るとき、

「は~い、こっち向いて~」

って、意外と難しくありませんか?(笑

正面から撮るスナップショットはカメラ目線になりますが、横顔とかで「目線だけ」をカメラに向けるって、、、

camera
(クリックしても正面向いたままの絵・・・)

でも、横から上からでも、、、カメラ目線にする方法、、、あるんです。(って、ほどのものではないのですが)

Second Life をやりはじめたころ、ちょっとびっくりしたのが Avatar の顔の向きや目線が、ビューワーの中でマウスカーソルでクリックした方向を向くことだったんです。(正確には Alt + でクリックです)

どんなにポーズして、顔の向きがあっちの方向にいってても、目線はクリックした方向に動くんですよね。

ハイ、これの応用です。
llSetAlpha(0.0, ALL_SIDES); を使って透明な板を作って、それを通して SS を撮るとカメラ目線になるんです。
この一行を state_entry() の中に入れるだけで終了です。


Avatar の前に llSetAlpha で透明にした板をおきます。
Ctrl+Alt+T で透明のオブジェクトを表示させると以下のようになります。
カメラ2
Ctrl+Alt+T を押して、再度透明にして Avatar の方向をクリックすると、透明の板をクリックしたことになるので「目線」がカメラの方向に向きます。
カメラ3
(カメラ目線になった絵)
ここで Snapshot を撮るわけですね。
これ、透明テクスチャを貼り付けた透明板だと目線がカメラのほうに向きません。スクリプトで透明化しないとだめなんです。
そのあたりの話しは以前の投稿を参考に~。透明テクスチャだと、クリックスルーになっちゃうというか、板をクリックすることにならないからです。
この透明な板に グロウ をかけるとさらに面白い絵を撮ることができたりします。
こんな感じ。
カメラ4
マウスカーソルが普通にあることからわかるように、上の画像は画像編集ソフトなどでグロウ処理したものじゃないんです。
この方法を使って、in-world で「部屋の中から外をみたとき眩しく見える」状況を作り出してるところもありますね。
と、、、ちょっとした小ネタでした。
お試しください~。

2 件のコメント:

  1. はじめまして
    とてもためになりました。
    早速試してみます^^

    返信削除
  2. mizuki さん、はじめまして。
    参考になったようでなによりです~。

    返信削除