‘セカンドライフ’ タグのついている投稿

LSL仕様メモ4 イベントchangedでllResetScriptを使う場合の注意点

2009 年 2 月 14 日 土曜日

仕様というよりただ自爆しただけですが、少しハマってしまったのでメモ。

結論から先に述べますと、

イベントattachとオーナーが変わった際のllResetScriptを同じスクリプトに入れてはいけない

前提として、

  1. イベントstate_entryは、初めてスクリプトが実行された時に1回だけ働く。
  2. llResetScript()は、そのスクリプトをリセットする。
  3. イベントchangedにおけるif(change & CHANGED_OWNER){~}は、オーナーが変わった時に働く。

以上のLSLの基本的な動きがあります。

例えばstate_entry内にllGetOwnerを書き、オーナーのkey(UUID)を得てなにかしら動く仕組みのものを作る場合、人にそのオブジェクトを渡すとstate_entryはもう実行されないので以前のオーナーのkeyが残ったまま不都合な動作が起こります。

これを回避するのに3.で挙げたchanged内でオーナーが変わった時にllResetScript()を動かし、state_entryを再度走らせてオーナーのkeyを取得し直す、というのがよくある手法です。

今回アタッチし機能するものを作っていたのですが、

  • state_entry内に初回だけ働く機能を盛り込む
  • attach内にアタッチするたびに働く機能を盛り込む
  • changed内にオーナーが変わったらllResetScript

という組み合わせをしたところ悲劇は起きました。 (というほど大げさじゃないですが)

「付けてみたらちゃんと動かなかったけど、突然動くようになったよ」という理解不能なレスポンスのシロモノになってしまったわけです。

誤動作の流れとしては

  1. オブジェクトを渡した相手がアタッチする
  2. イベントattachが働く
  3. オーナーが変わったのでllResetScriptが働く
  4. イベントstate_entryが働く

となります。つまり、イベントattachで機能した内容がllResetScriptで消去されていました。

ちゃんとスクリプトを理解している人には当然なのでしょうが、自分はイベントchangedのif(change & CHANGED_OWNER){~}は、相手に渡した時点で機能すると勘違いしていました。

スクリプトなので当然Rez(アタッチも含む)されて始めて動くわけで、使用する人にオブジェクトを渡して最初の稼動がアタッチだと、イベントattach内の内容は全てキャンセルされてしまいます。

そして2回目アタッチした時は、オーナーが変わっていないのでllResetScriptは働かずattachは正常に機能します。途中からちゃんと動く不具合品の出来上がりですw

わかったつもりっていうのは危ないですね。基本的な機能でもテストしてからじゃないとダメだと思い知った件でした。

LSL仕様メモ3 簡易なカメラ制御について

2008 年 10 月 17 日 金曜日
  • LSLでの簡易なカメラ制御、llSetCameraEyeOffset(カメラ設置位置)とllSetCameraAtOffset(カメラを向ける座標)は、llSitTarget(座る位置の指定)を設定してあるオブジェクトでないと機能しない
  • 上記2つのカメラ制御関数は、そのオブジェクトに座ったアバターの視点を一度固定するだけ。後から動的に制御したい場合はllSetCameraParamsを使うこと。
  • 上記2つのカメラ制御関数を一度でもオブジェクトにセットすると、その後関数自体を取り除いてもカメラ位置がセットされたままになる。解除するにはllSetCameraEyeOffset(<0,0,0>); llSetCameraAtOffset(<0,0,0>);を一度セットすること。

参考:BlackSheep-LSL@Wiki カメラ制御

LSL仕様メモ2

2008 年 9 月 21 日 日曜日
  • LSLのイベント、on_rez(integer sparam){ }は地面などへのフィールドへのrez、およびアバターへのアタッチでは機能するが、HUDとして画面上にアタッチした場合は機能しない。例えばHUDをon_rezでllResetScript();する仕様にしていると不具合となるので注意。

LSL 仕様メモ1

2008 年 8 月 5 日 火曜日
  • llMoveToTarget の最大移動限界値は60m程度。それ以上に設定すると、全く動かない、または少しずつ近づくといったおかしな動きになる。
  • llListen は、llListenを含むスクリプト自身およびそのオブジェクトにある他のスクリプトにおいて、自身がllSayなどで発したメッセージを受け取ることができない。(llDialog はオーナーアバターが発したことになるので受け取れる)

バーチャルワールドカンファレンス & エキスポ 2008

2008 年 5 月 30 日 金曜日

有明ビックサイト(東京国際展示場)で行われている、Virtual World Conference & Expo 2008に行ってきました。

vwc&expo2008-01

vwc&expo2008-02


イベント中日の今日は、注目のリンデンラボ社 元CEO フィリップ・ローズデールさんとIBM Corporation VP ポール・レダックさんの講演を始め、国内のメタバース企業の代表や関係者の方々による基調講演がありました(時間の都合上、僕が聞けたのは最初のお二方のみ)。フィリップ・ローズデールさんは日本初講演とのことでした。

※以下の内容は同時通訳で聞き取った内容の中で、僕なりに重要と思われる部分を走り書きし、それを元にまとめたものなので100%この通りのことを仰ったという保障はできませんので、ご了承ください。

フィリップ・ローズデールさんの講演

Webと違ってメタバースが可能なもの、それは

  1. “見る”ということによる理解ができる
  2. 誰かと共有、共同できる

Webの大半はテキストで構成されているのに対し、セカンドライフでは現実に馴染みのある3次元の物体として在る。例えば、「椅子」はWeb上では椅子というテキストだが、セカンドライフでは誰にでも椅子とわかる形状として椅子がある。

またテキストでは言語によって差異があり、母国語で書かれていればいいがそれ以外はわからない(椅子→Chair)。その点も視覚から得る椅子という形状、色などから言語を越えた理解ができる。

そして人々はオンラインで一緒にいたい、共に何かをしたい、情報を共有したいという願望がある。Webでは同じページを何人の人が同時に見ていようが、その人たちとふれあうことはできない。セカンドライフでは同じものに興味を持つ人とその場に居合わせ、そのものについて議論したり、共に製作したり、一緒に行動することができる、といったことを話されていました。

メタバースは以前のインターネットと同じ過程を辿る、つまり

  1. 遊び、ゲーム、クリエイト、芸術などの段階
  2. 教育に利用される段階
  3. (2~3の間は長い期間を要する)

  4. 社内利用される段階
  5. ビジネスとして利用される段階

今はどの段階でしょうね。2~3の間?教育のために利用されているSIMが非常に多いと話されていたので、少なくとも2の段階には来ているのでしょう。

今後重要になるものは、欲しい人が欲しいものに辿り着くための検索

これは本当に欲しいですね。セカンドライフに限らないと思いますが、今はメタバース内で欲しいものを簡単に探すことはできないと言っていいです。メタバース内の独自の検索アルゴリズムも必要でしょうし、人と人をつなぐ仕組みもこれといったものがないと僕は感じています。

他にもいくつかメモったんですが・・・よくある「自分の字が自分で読めない」状態や、箇条書きしてあるけど何のテーマに対しての3項目?という状態なので、ブログとしてはこれくらいで止めておきます。

詳しく聞きたいかたはインワールドでお尋ねください(笑)

IBM ポール・レダックさんの講演の内容は、難しい部分もあるので後日理解が深まれば書くかもです。

ちなみに有明の会場は5月30日 17:30までイベントを行っているので、まだのかたも間に合いますよ!一番近い駅は、ゆりかもめだと「国際展示場正門」駅、またはりんかい線「国際展示場」駅。どちらも歩いてすぐです。

詳しくはこちら↓

VWC & Expo 2008

癒しSIM tempura island

2008 年 5 月 27 日 火曜日

フレンドのmokurenさんの案内で、数日前にオープンしたばかりというSIMに行ってきました。

その名も、tempura island

名前から天麩羅のSIMと思うことなかれ(笑)、かなり綺麗なSIMです。

tempura1

tempura2

海辺には一面の花畑が。

tempura3

tempura4

太陽のほうにカメラを向けると逆光でちゃんと見た目が暗くなる。SLのクライアントもこんな光の表現までしてたんですね。

tempura5

tempura6

木々からもれる光もすごい。そして、ふたり滝に突入してずぶ濡れに(笑)

tempura7

tempura8

紅葉に染まる森も。おもむろにソファがあったのでちょっと休憩。それにしてもすごい・・・

tempura9

とても綺麗なSIMなので、物づくりに疲れたときなど寄ってみてはどうでしょう。
カップルにもおすすめです。

tempura islandはこちら
http://slurl.com/secondlife/tempura%20island/128/44/33

VWC(バーチャルワールドカンファレンス) & Expo 2008

2008 年 5 月 15 日 木曜日

5月28日(水)~30日(金)に有明・東京ビッグサイトでVirtual World Conference & Expo 2008が開催されます。

29日(木) 10:00からは、セカンドライフ運営のリンデンラボ設立者フィリップ・ローズデールさんの講演をはじめ、IBMのバーチャル事業責任者の方や国内のあらゆるメタバース事業関係各社の代表の講演などがあり、とても興味深いです。

事前登録しておくと、入場料5,000円が無料になるとのこと。

セカンドライフ以外にも多くのメタバース事業について詳しく知るチャンスなので、興味がある方はぜひ足を運んでみては。

VWC & Expo 2008

セカンドライフ アカウント管理画面(英語版)

2008 年 5 月 8 日 木曜日

セカンドライフの英語版アカウント管理画面が新しくなっています。(以前の記事は旧としました)

新しい管理画面はこちら(’08/5/8現在)

アカウント管理画面(英語版) メインメニュー

画面左側にメインメニューがすっきりとまとまりました。

変更点としては以下の通りです。

  • Blling Policies(利用料請求方針)・Request Rollback(SIM巻き戻し依頼)・Region Down Report(SIM落ち報告)項目の削除
  • Friends Online(オンラインフレンド確認)・Partners(パートナー申請)・Refer A Friend(勧誘の報酬)項目がMy Accountカテゴリに統合
  • Update VAT ID(VAT:付加価値税申請?)が追加
  • Land Store(SIM購入窓口)・Land Auctions(土地オークション)がLandカテゴリに統合

My Accountの項目は使いやすくなり良い変更となりました。

気になるのは、Update VAT IDの追加です。SL総合研究所さんのEU住民への付加価値税相当額の支払請求という記事に詳しいことが書かれていましたが、要はセカンドライフの課税に関わる項目のようです。

Update VAT IDをクリックしてもトップ画面に戻ってしまうだけですし日本アカウントでは関係ないとは思いますが、今後は日本でもセカンドライフが課税対象になってくる可能性がないとはいえませんね。

セカンドライフナイト in BarTube

2008 年 5 月 2 日 金曜日

今夜は、渋谷にあるBarTubeに寄ってみました。

BarTubeでは毎週木曜日の21:00くらいから、セカンドライフナイトというイベントを行っています。

GW中ということもあって人は少なかったようですが(それでも10数人いました)、普段はかなり混んでいるようですね。

今日はのんびりとセカンドライフ、国産メタバースのダレットワールド、ViZiMo、中国のメタバースHiPiHi、韓国メタバースntomoなどをみんなで眺めながら、あれこれと話しました。

セカンドライフの中ではメタバースについて色々と話せますが、リアル(現実)の場で友人など当たってみましたが・・なかなか話がわかる人がいませんでした。実際に会ってメタバースについて語れるとちょっと感動しますね(笑)

今後も極力顔を出せるようにしていきたいです。

BarTubeの場所はこちら↓

大きな地図で見る

セカンドライフはなにでできているか

2008 年 4 月 25 日 金曜日

セカンドライフとは実際どういうものなのか。なにでできていて、誰が居て、なにが可能なのか。今回はそのあたりを調べつつ書いてみます。

【自分・他人】 → アバター

左がスタート直後のアバターのひとつ、右がカスタマイズした僕のアバターです。

まず何をするにもアバターがないと話になりません。世界を見るための視点であるカメラもアバターに追従しますし、自分の存在を他人に知らせるためにも必須です。近づいてチャット、ボイスチャットによる会話やアニメーションによる身振り手振り、表情などでコミュニケーションがとれます。

また身体・衣服などのカスタマイズもかなり細かく可能で、最初は左の写真のようなアバターにがっかりしますが(笑)、自分の好きな姿に作りこむほど愛着が湧いてきます。愛着あるアバターでファッションを楽しんだり、友達と一緒にカフェで語り合ったり、落ち着ける音楽の流れる海辺でのんびりと過ごす。まるでその空間に自分がいるのではないかという一体感のようなものを感じることができます。

前回の記事 アバターの普及 でも触れましたが、アバターは文字だけでも一枚の画像でもなく僕らの人としての姿に近いものとして在るので、より一体感が生まれやすいのかもしれません。

中にはこういうアバターもありますが(笑)

【空・海・大地】 → SIM

セカンドライフは全てのコンテンツをユーザーが創っていると言われますが、唯一形あるものとして運営会社リンデンラボが提供するものがSIM(Simulatorの略)です。

画像は最近よく居させてもらっているKadokawa 2 SIMのとある場所。生えている木はプリムですが、他は届きたてのSIMと雰囲気が似ていたので撮ってみました。

セカンドライフの世界は、このSIMという島(言い換えるとサーバー)が集まってできています。公式を見た限り4月のSIM総数は14,000ほど(おそらくリンデンラボ直轄の島・メインランド群は含んでいませんが)

256m×256m=65,536sq(平方)mのなにもない大地が広がり、島のまわりは海です。SIMオーナーではないので聞いた話ですが、SIMオーナーが設定した基準面より地面を下げると水が湧き出し写真のような川になります。上にはほぼ無制限に空間がありますが、現状のビューアーだと上空768m以上にプリムを置くことはできないので、256m×256m×768m=50,331,648cu(立方)m≒約5000万立方メートルの空間ですね、って体積にしてもピンとこないですね(笑) すでに正式ビューアー適用直前テスト版のビューアー・RC(ReleaseCandidate)版では4,000mくらいまでプリムが置けるので上空の限界が引きあがるのも時間の問題かもしれません。

空と海はWindLightという技術で写真のようにかなり綺麗に描画されています。PCスペックは高いものが要求されますが、最近のグラフィックボード搭載PCであれば問題なく見れるでしょうね。

【物体】 → プリム

セカンドライフにおけるほぼ全ての物体はプリム(Primitiveの略)でできています。

上の画像がセカンドライフにおける全種類のプリムです。といってもこの形にしか物を作れないわけではなく、これはあくまで基本形状です。ボックス・シリンダー・プリズム・球・トーラス・チューブ・リングの基本形状に加え、右下のリンゴ(っぽい)プリムがスカルプチャプリムと呼ばれる単体で複雑な形状が作れるプリムです。

ボックス型だけでも、左の画像のように切り欠き、くり抜き、ねじり、テーパー、傾斜などができます。最小サイズは豆粒のようなサイズから最大サイズは10mまで1プリムで表現可能です。またこれら単体のプリムを組み合わせ一体化することをリンクといって、リンクされたプリムをオブジェクトと言います。1オブジェクトは基本255プリムまで含むことができ、このオブジェクトによってセカンドライフの大半の物(アバターの立体的な服・髪の毛・靴やアクセサリー、建物、自然、生き物、乗り物、武器・兵器、食べ物など)は作られています。

そしてそれらプリム・オブジェクトに、よりリアル感をもらたすのがテクスチャです。

画像にあるのはどれもボックスや球形のプリムですが、テクスチャという表面画像を貼り付けると途端にリアル感が増します。プリムの透過もできるので、左下のプリムのように透けさせればガラスのようにもなります。オブジェクトとテクスチャを組み合わせると、果てしない表現が可能です。

アバターの肌や服もこのテクスチャによって表現されていて、まったく同じシェイプ(体型)でもスキン(肌のテクスチャ)を変えるだけで別人のようになることができます。

これらがセカンドライフを“静的”に構成する要素です。

他にも、光の表現や柔らかさのあるプリム、アバターを自在に動かすアニメーション、オブジェクトにあらゆる機能をもたせるスクリプト、音楽やサウンドなどがあり、さらに現実味のある(あるいは現実にはありえない)表現の世界を深めています。

こうやって考えてみると、セカンドライフを構成しているものは複雑ですね。これは一度に書ききれなそうなので、シリーズとしてまた書きます(笑)