セカンドライフプラネット

セカンドライフのスクリプト言語(LSL)をプラネットします。3DCG で物体をプラネットしたりもします。

スポンサーサイト

上記の広告は1ヶ月以上更新のないブログに表示されています。
新しい記事を書く事で広告が消せます。
  1. --/--/--(--) --:--:--|
  2. スポンサー広告

テレポテーションパネルを販売開始しました

「持ち物」から取り出すだけで設置完了。
すぐにワンクリック・テレポートできます。

テレポテーションパネル Ver.1.0
(Teleportation Panel Ver.1.0)

価格:100L$


セカンドライフ スクリプト テレポテーション


(1)超簡単テレポテーションパネルです
●超簡単その1(設置)

「持ち物」から取り出すだけ!


●超簡単その2(テレポテーション)


ワンクリックテレポート!



(2)高性能です
最大移動距離470m

SIM の端から端まで移動できます。
(注)SIM 内テレポート専用、最大高低差は300m


(3)変形自由です
形・サイズ・テクスチャーなど自由に変更できます。

思い通りに変形させ、あなただけの一品に仕上げてください。
例.花瓶など身近な小物果物家具、・・・


販売先(2007.09.26現在):
●巣鴨(sugamo)の月見神社:
http://slurl.com/secondlife/sugamo/26/199/22
●株(Kabu)のフリマ:
http://slurl.com/secondlife/Kabu/54/75/27
●MayonのLUVビル:
http://slurl.com/secondlife/Mayon/122/175/22
●豊島区(ToshimaKu)の白屋: 展示販売しています!
http://slurl.com/secondlife/ToshimaKu/153/175/22
●SLITEM.JP(SLアイテム販売サイト):
http://slitem.jp/


以前、テレポテーションパネルのプロトタイプを制作しました。
今回、それを製品化しました。

製品版ではプロトタイプ版で生じていたいくつかの問題点を全て解決済みです。


プロトタイプ版で生じていた問題点
●テレポテーション距離
最大100m でした。
●パネルの回転
パネルを回転させると違う方向にテレポートしていました。
●チャンネル
チャンネルは固定でした。同一SIM に2セット以上設置することはできませんでした。
●初期動作
パネルを設置して最初のテレポートは失敗していました。2回目以降は成功していました。

製品版での解決
●テレポテーション距離
最大距離470m。同一SIM 内であれば、水平方向にはSIM の対角線の端から端までテレポート可能。垂直方向には、2枚のパネルの高低差300m 以内でテレポート可能。
●パネルの回転
パネルを回転させても正確な方向にテレポートします。
●チャンネル
チャンネルはランダムに切り替わります。
●初期動作
パネルを設置して最初のテレポートから正常に動きます。

スポンサーサイト

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

  1. 2007/09/26(水) 15:37:47|
  2. テレポテーション
  3. | トラックバック:0
  4. | コメント:1

ミュートの失敗

突然ですが皆さん、ミュートってご存知ですか。

テレポートやお店(SL内です)に行くと、ランドマークなどを渡してくるときのあれです。

下の画像は、パーティクルラボでnote card をもらうときに表示されたものです。

セカンドライフ スクリプト ミュート


選択が三択です。 「維持」・「破棄」・「ミュート」

「維持」は「Yes」で、「破棄」は「No」です。これは分かります。

「ミュート」は何となくミューという感じで「あいまい」な印象で使っていました。

こんな感じでした。
●はっきり断るときは「破棄」:商店のランドマークなど
●何かはっきり断ると相手に悪いかなのときは「ミュート」:note card をもらうときなど

結論から言うと、「ミュートは選択してはいけない」です。

ひょっとして、皆さんご存知のことを言っているだけかも知れませんね。
Aa はオリエンテーションアイランドを「飛び方」を教わった段階で逃げ出したものですから・・・

●ミュートって
ミュートするとその人(オブジェクト)との関係がたたれます。メッセージのやり取りもできなくなるようです。何に使うかというと、繰り返し嫌がらせされたときのためだそうです・・・

そんな重大な判断がここで選択できるのは、UI(ユーザーインターフェース)的にどうなの?と思います。

●ミュートするとどうなるか
パーティクルラボで選択したnote card の受け取りをミュートしたことで、そこのオーナーとの関係が絶たれ(こちらから絶ったのですが)ました。

パーティクルラボでの体験
・・・デモンストレーションが実行されなくなります
・・・note card がもらえなくなります
・・・オブジェクトの購入ができなくなります

note card がもらえない時点では、「Aaが頻繁に行くからかなー」といった感じであまり気にしていませんでしたが、そこでテクスチャーを購入したときに、テクスチャーをもらえなかったので気がつきました。

購入した際、お金は支払われますが「もの」はもらえなくなります。
お金の関係は断たれないようです・・・?

●ミュートの解除方法
1.適当なオブジェクトを制作します。
2.そのオブジェクトを「Mute」に設定します。
オブジェクトを右クリックし、パイメニューから「詳細」-「詳細」と進むと「Mute」の選択画面となります。

セカンドライフ スクリプト mute

3.「ミュート」を選択します。
そうすると、「ミュートされた住人およびオブジェクト」の全リストが表示されます。

セカンドライフ スクリプト mute


4.住人・オブジェクト選択し「ミュートしない」ボタンを押します。

ちなみに、Aaはこのリストが20人(個)ほどでした・・・
もちろん今は、全員(全部)元(ミュートしない設定)に戻してあります。

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

  1. 2007/09/04(火) 03:47:33|
  2. LSL-Tips制作講座
  3. | トラックバック:0
  4. | コメント:0

リンデンスクリプト言語の構造

前回のLSL超初心者講座で、コンピューターの構造を記述しました。今回は、ソフトウェアの構造についてです。

リンデンスクリプト言語(LSL:Linden Script Language)は次の大小の構造に分けることができます。

●大構造:コンテンツ、スクリプト、ステート、イベント、関数
●小構造:変数、定数、制御構造、演算子

「大構造」の部分は、LSLの特徴を色濃く反映していますが、「小構造」の部分はLSL以外の言語に共通する仕様となっています。

今回は、LSLの大構造について見ていきます。
(個々の詳しい内容については次回以降で記述する予定です)

LSLはいくつかの階層で表現されます。

●コンテンツ(Contents:内容)
最下層のコンテンツ層はスクリプトの入れ物です。ここにスクリプトを記述します。

・・・スクリプト名は変更することができます。
・・・スクリプトは複数記述することができます。

セカンドライフ スクリプト contents

例えば、「ツアーライド」のスクリプトと「課金」のスクリプトを別々に記述することができます。

この場合、個々のスクリプトは独立に動きます。ツアーライドの乗り物を動かしながら、課金を実行します。

セカンドライフ スクリプト contents

機能をハッキリと分けることができるスクリプトは分けて記述した方が、各スクリプトが短くなり見やすくなります。

●スクリプト(Script)
Contents層の上に、スクリプト層があります。この中に、ステートを記述します。

例えば、New Scriptの中は以下のようになっています。

セカンドライフ スクリプト script

defaultステートは必須です。このステートがないとコンパイルエラーとなります。

スクリプト層に複数のステートを記述することができます。 defaultステート以外のステートは全てユーザーが定義します。

例えば、スイッチONとスイッチOFFとにステートを分けることができます。

セカンドライフ スクリプト script

ステートをハッキリと分けることができる場合は分けて記述した方が、各ステートが短くなり見やすくなります。

●ステート(State:状態)
スクリプト層の上に、ステート層があります。この中に、イベントを記述します。

例えば、defaultステートの中は以下のようになっています。

セカンドライフ スクリプト ステート

ステートの中に複数のイベントを記述することができます。

イベントの種類は既に決まっていて、ユーザーが追加定義することはできません。

●イベント(Event)
ステート層の上に、イベント層があります。この中に、関数を記述します。

例えば、state_entryイベントの中は以下のようになっています。

セカンドライフ スクリプト イベント

イベントの中に複数の関数を記述することができます。

●関数(Function)
関数とは、何らかのまとまった処理に名前を付けたものです。コンピューターの基本的な動き(入力→処理→出力)と相性がよい考え方です。

関数は、LSLに予め用意されている関数群(llSay関数、等)とユーザーが新たに定義する関数(ユーザー定義関数)に分類できます。

ユーザー定義関数の場合、最初に関数を定義する必要があります。

関数を定義する場所は決まっています。
・・・ユーザー定義関数はスクリプト層で定義する

関数を使用できる場所も決まっています。
・・・ユーザー定義関数の定義中(スクリプト層)
・・・イベント層

ユーザー定義関数の例: 関数名xyz

セカンドライフ スクリプト 関数

●スクリプト「ハロー、アバター」
建造ウィンドウでオブジェクトを作成し、新しいスクリプトを作成した際に、最初から記述されているのが下記スクリプトです。

default
{
      state_entry  (  )
      {
             llSay(0,  "Hello, Avatar!");
      }

      touch_start(integer  total_number)
      {
            llSay(0,  "Touched.");
      }
}

これをLSL階層図にすると下図のようになります。

セカンドライフ スクリプト ハローアバター

●建造ウィンドウの操作方法
sandboxでボックスを作成し、新しいスクリプトを作成する方法は以下を参照してください。細かい説明は読み飛ばし、主に建造ウィンドウの操作方法を習得してください。

1.sandboxでボックスを作成する方法
http://gameworkshop.blog106.fc2.com/category2-3.html
2.ボックスに新しいスクリプトを作成する方法http://gameworkshop.blog106.fc2.com/category2-2.html

●確認
1.contents層に複数のスクリプトを定義できることを実際に確認してください。
2.スクリプト層からdefaultステートを削除するとエラーになることを確認してください。

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

  1. 2007/09/01(土) 06:19:31|
  2. LSL-Tips集
  3. | トラックバック:0
  4. | コメント:0

プロフィール

Aa

Author:Aa
SLプラネットへようこそ!
Koenjiで物づくりしてます。
皆さん、遊びにきてください。

ショップのSLURL

ショップ(白屋)のSLURLです。メタバーズの高円寺にあります。商品を展示販売しています。

メタバーズ、高円寺、白屋

最近の記事

月別アーカイブ

カテゴリー

ブログ内検索

おすすめ商品!


パソコンの横において、疑問点をサッと調べられます!...



オブジェクト制作を基礎から解説!販売方法も詳しく記述!...



すぐに使えるサンプルプログラムを多数収録!...



関数の詳しい記述あり!辞書のように便利!...

ゲームPC

ゲーム用パソコンならドスパラへ!Galleriaシリーズが大人気!

リンク

このブログをリンクに追加する

スポンサードリンク

スポンサードリンク

最近のコメント

最近のトラックバック

RSSフィード

FC2カウンター

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