2011年09月07日
もう秋の気配と思いきや熱い毎日、でも先週末は台風
お出かけやレジャーを計画してた人も僕同様自宅で過ごして
いたことでしょう。
そこでちょっと週末気分をSLで体験ってかんがえてる方
僕の開発したビーチボールバズーカを抱えてセカンドライフのビーチへ行ってみては^^

代わってビーチボールバズーカの説明をします。

販売場所:C.M.G 販売本店
http://maps.secondlife.com/secondlife/Bassett/175/5/63
ビーチボールバズーカ
本商品は、バズーカ先端からカラフルなビーチボールが飛び出し10m程
先まで届きます。アバターに当たると星型のパーティクル出現し軽快なヒット
音が再生され楽しい演出がされています。 恋人同士や複数人のお友達との交流
にゲームとしてお使いください。アバターに当たればポイントがプラス一点、
当てられるとマイナス1点としてカウントしていますので装着を解除すると
自分のポイントがチャット欄に表示されます。 ビーチでの余興などにどうぞ
・色 7色中買った一色が使えます(グリーン,ピンク,スカイブルー,パープル
,イエロー,ブルー,レインボー) 30L$
レインボー色はランダムに7色のボールが発射されるスペシャル版です。 50L$
全色 80L$
・使用方法
装着で右手首に装着されます。
↑↓←→キーでアバターを移動
標的を画面の中央にしてマウス左クリックでボールが発射
スクロールホイールがあれば画面を拡大してマウスルックでの操作も可能
・注意点
レズ(オブジェクト生成)可能な場所でないとボールが出ません
ボールは60秒後に自動的に消えます。
連射間隔は約1.5秒
装着し直しでカウントクリア
当てた人と当てられた人の表示がチャット欄に表示されます。
AOをOFFをすると発射の構えのポーズをします。
質問等はクリエーターまでIMを
お出かけやレジャーを計画してた人も僕同様自宅で過ごして
いたことでしょう。

そこでちょっと週末気分をSLで体験ってかんがえてる方
僕の開発したビーチボールバズーカを抱えてセカンドライフのビーチへ行ってみては^^

ビーチボールバズーカ 各色
代わってビーチボールバズーカの説明をします。

ビーチボールバズーカ 30L$
販売場所:C.M.G 販売本店
http://maps.secondlife.com/secondlife/Bassett/175/5/63
ビーチボールバズーカ
本商品は、バズーカ先端からカラフルなビーチボールが飛び出し10m程
先まで届きます。アバターに当たると星型のパーティクル出現し軽快なヒット
音が再生され楽しい演出がされています。 恋人同士や複数人のお友達との交流
にゲームとしてお使いください。アバターに当たればポイントがプラス一点、
当てられるとマイナス1点としてカウントしていますので装着を解除すると
自分のポイントがチャット欄に表示されます。 ビーチでの余興などにどうぞ
・色 7色中買った一色が使えます(グリーン,ピンク,スカイブルー,パープル
,イエロー,ブルー,レインボー) 30L$
レインボー色はランダムに7色のボールが発射されるスペシャル版です。 50L$
全色 80L$
・使用方法
装着で右手首に装着されます。
↑↓←→キーでアバターを移動
標的を画面の中央にしてマウス左クリックでボールが発射
スクロールホイールがあれば画面を拡大してマウスルックでの操作も可能
・注意点
レズ(オブジェクト生成)可能な場所でないとボールが出ません
ボールは60秒後に自動的に消えます。
連射間隔は約1.5秒
装着し直しでカウントクリア
当てた人と当てられた人の表示がチャット欄に表示されます。
AOをOFFをすると発射の構えのポーズをします。
質問等はクリエーターまでIMを

2011年09月04日
もう秋の装いと思いきや熱い毎日、でも週末は台風
お出かけやレジャーを計画してた人も自宅で過ごして
いることと思います。
この時間をちょこっとセカンドライフをプレイ...
そこで僕の開発したビーチボールバズーカを抱えてセカンドライフのビーチへ行ってみては^^

代わってビーチボールバズーカの説明をします。

販売場所:C.M.G 販売本店
http://maps.secondlife.com/secondlife/Bassett/175/5/63
ビーチボールバズーカ
本商品は、バズーカ先端からカラフルなビーチボールが飛び出し10m程
先まで届きます。アバターに当たると星型のパーティクル出現し軽快なヒット
音が再生され楽しい演出がされています。 恋人同士や複数人のお友達との交流
にゲームとしてお使いください。アバターに当たればポイントがプラス一点、
当てられるとマイナス1点としてカウントしていますので装着を解除すると
自分のポイントがチャット欄に表示されます。 ビーチでの余興などにどうぞ
・色 7色中買った一色が使えます(グリーン,ピンク,スカイブルー,パープル
,イエロー,ブルー,レインボー) 30L$
レインボー色はランダムに7色のボールが発射されるスペシャル版です。 50L$
全色 80L$
・使用方法
装着で右手首に装着されます。
↑↓←→キーでアバターを移動
標的を画面の中央にしてマウス左クリックでボールが発射
スクロールホイールがあれば画面を拡大してマウスルックでの操作も可能
・注意点
レズ(オブジェクト生成)可能な場所でないとボールが出ません
ボールは60秒後に自動的に消えます。
連射間隔は約1.5秒
装着し直しでカウントクリア
当てた人と当てられた人の表示がチャット欄に表示されます。
AOをOFFをすると発射の構えのポーズをします。
質問等はクリエーターまでIMを
お出かけやレジャーを計画してた人も自宅で過ごして
いることと思います。
この時間をちょこっとセカンドライフをプレイ...
そこで僕の開発したビーチボールバズーカを抱えてセカンドライフのビーチへ行ってみては^^

ビーチボールバズーカ 各色
代わってビーチボールバズーカの説明をします。

ビーチボールバズーカ レインボウ 50L$
販売場所:C.M.G 販売本店
http://maps.secondlife.com/secondlife/Bassett/175/5/63
ビーチボールバズーカ
本商品は、バズーカ先端からカラフルなビーチボールが飛び出し10m程
先まで届きます。アバターに当たると星型のパーティクル出現し軽快なヒット
音が再生され楽しい演出がされています。 恋人同士や複数人のお友達との交流
にゲームとしてお使いください。アバターに当たればポイントがプラス一点、
当てられるとマイナス1点としてカウントしていますので装着を解除すると
自分のポイントがチャット欄に表示されます。 ビーチでの余興などにどうぞ
・色 7色中買った一色が使えます(グリーン,ピンク,スカイブルー,パープル
,イエロー,ブルー,レインボー) 30L$
レインボー色はランダムに7色のボールが発射されるスペシャル版です。 50L$
全色 80L$
・使用方法
装着で右手首に装着されます。
↑↓←→キーでアバターを移動
標的を画面の中央にしてマウス左クリックでボールが発射
スクロールホイールがあれば画面を拡大してマウスルックでの操作も可能
・注意点
レズ(オブジェクト生成)可能な場所でないとボールが出ません
ボールは60秒後に自動的に消えます。
連射間隔は約1.5秒
装着し直しでカウントクリア
当てた人と当てられた人の表示がチャット欄に表示されます。
AOをOFFをすると発射の構えのポーズをします。
質問等はクリエーターまでIMを

2011年09月04日
もう秋の装いと思いきや熱い毎日、でも週末は台風
お出かけやレジャーを計画してた人も自宅で過ごして
いることと思います。
この時間をちょこっとセカンドライフをプレイ...
そこで僕の開発したビーチボールバズーカを抱えてセカンドライフのビーチへ行ってみては^^

代わってビーチボールバズーカの説明をします。

販売場所:C.M.G 販売本店
http://maps.secondlife.com/secondlife/Bassett/175/5/63
ビーチボールバズーカ
本商品は、バズーカ先端からカラフルなビーチボールが飛び出し10m程
先まで届きます。アバターに当たると星型のパーティクル出現し軽快なヒット
音が再生され楽しい演出がされています。 恋人同士や複数人のお友達との交流
にゲームとしてお使いください。アバターに当たればポイントがプラス一点、
当てられるとマイナス1点としてカウントしていますので装着を解除すると
自分のポイントがチャット欄に表示されます。 ビーチでの余興などにどうぞ
・色 7色中買った一色が使えます(グリーン,ピンク,スカイブルー,パープル
,イエロー,ブルー,レインボー) 30L$
レインボー色はランダムに7色のボールが発射されるスペシャル版です。 50L$
全色 80L$
・使用方法
装着で右手首に装着されます。
↑↓←→キーでアバターを移動
標的を画面の中央にしてマウス左クリックでボールが発射
スクロールホイールがあれば画面を拡大してマウスルックでの操作も可能
・注意点
レズ(オブジェクト生成)可能な場所でないとボールが出ません
ボールは60秒後に自動的に消えます。
連射間隔は約1.5秒
装着し直しでカウントクリア
当てた人と当てられた人の表示がチャット欄に表示されます。
AOをOFFをすると発射の構えのポーズをします。
質問等はクリエーターまでIMを
お出かけやレジャーを計画してた人も自宅で過ごして
いることと思います。
この時間をちょこっとセカンドライフをプレイ...
そこで僕の開発したビーチボールバズーカを抱えてセカンドライフのビーチへ行ってみては^^

ビーチボールバズーカ 各色
代わってビーチボールバズーカの説明をします。

ビーチボールバズーカ 30L$
販売場所:C.M.G 販売本店
http://maps.secondlife.com/secondlife/Bassett/175/5/63
ビーチボールバズーカ
本商品は、バズーカ先端からカラフルなビーチボールが飛び出し10m程
先まで届きます。アバターに当たると星型のパーティクル出現し軽快なヒット
音が再生され楽しい演出がされています。 恋人同士や複数人のお友達との交流
にゲームとしてお使いください。アバターに当たればポイントがプラス一点、
当てられるとマイナス1点としてカウントしていますので装着を解除すると
自分のポイントがチャット欄に表示されます。 ビーチでの余興などにどうぞ
・色 7色中買った一色が使えます(グリーン,ピンク,スカイブルー,パープル
,イエロー,ブルー,レインボー) 30L$
レインボー色はランダムに7色のボールが発射されるスペシャル版です。 50L$
全色 80L$
・使用方法
装着で右手首に装着されます。
↑↓←→キーでアバターを移動
標的を画面の中央にしてマウス左クリックでボールが発射
スクロールホイールがあれば画面を拡大してマウスルックでの操作も可能
・注意点
レズ(オブジェクト生成)可能な場所でないとボールが出ません
ボールは60秒後に自動的に消えます。
連射間隔は約1.5秒
装着し直しでカウントクリア
当てた人と当てられた人の表示がチャット欄に表示されます。
AOをOFFをすると発射の構えのポーズをします。
質問等はクリエーターまでIMを

2011年08月26日
夏休み真っ最中、みなさんお出かけ、レジャー、はたまた夏季講習に望んだり
アルバイトやお仕事にいそしんでることと思います。
この自由な時間を使ってカフェをちょこっと始めようと計画してる人も...
そこで僕の開発したオンラインチップジャーを使ってみてください^^
カフェのムービーも載せてみましたのでイメージを膨らませてくださいね。

代わってオンラインステータスとチップジャーの機能を持ったパネル
を紹介します。

販売場所:
http://maps.secondlife.com/secondlife/Bassett/175/5/63
本商品は、ダンスホールやクラブ又はカフェなどでREZして設置すると
登録者のオンライン時に高光度で光ったりONLINEの表示をします。
プロフ写真がパネルのテクスチャーになるイージー登録
分割チップジャーの機能があります。
・使用方法
1)オーナーさんは、土地にREZして口座からの引き落としを許可してください。
チップは一旦オーナーの口座に入金されレートにしたがってキャストに
自動で送金されます。 消費量1プリム
その時、グループをアクティブにしておいてパネルにグループ設定してください。
グループメンバーのみキャスト登録が出来ます。
2)登録者(キャスト)さんは、本体のどこかにカーソルを合わせてライトクリックし触るを選択
3)ダイアログメニュー
regist : キャスト登録
release : 登録解除
d.list : 献金者リスト表示 メモリーが満杯になると警告のIMを通知して自動消去します。
4)説明欄の数字を変えることでキャストに支払われるチップのレート
を変えられます。デフォルト0.65
・その他 サイズやテクスチャは入れ替え可能です。
オフライン表示 :CAST_name_plate_off_line
オンライン表示 :CAST_name_plate_on_line
初期パネル画像 :cast_panel
質問、苦情はクリエーターまでIMを 改造もいたします^^

アルバイトやお仕事にいそしんでることと思います。
この自由な時間を使ってカフェをちょこっと始めようと計画してる人も...
そこで僕の開発したオンラインチップジャーを使ってみてください^^
カフェのムービーも載せてみましたのでイメージを膨らませてくださいね。

CAFEの前でスナップ
カフェイメージムービー
代わってオンラインステータスとチップジャーの機能を持ったパネル
を紹介します。

オンラインステータス & チップジャー COPY可 880L$
販売場所:
http://maps.secondlife.com/secondlife/Bassett/175/5/63
本商品は、ダンスホールやクラブ又はカフェなどでREZして設置すると
登録者のオンライン時に高光度で光ったりONLINEの表示をします。
プロフ写真がパネルのテクスチャーになるイージー登録
分割チップジャーの機能があります。
・使用方法
1)オーナーさんは、土地にREZして口座からの引き落としを許可してください。
チップは一旦オーナーの口座に入金されレートにしたがってキャストに
自動で送金されます。 消費量1プリム
その時、グループをアクティブにしておいてパネルにグループ設定してください。
グループメンバーのみキャスト登録が出来ます。
2)登録者(キャスト)さんは、本体のどこかにカーソルを合わせてライトクリックし触るを選択
3)ダイアログメニュー
regist : キャスト登録
release : 登録解除
d.list : 献金者リスト表示 メモリーが満杯になると警告のIMを通知して自動消去します。
4)説明欄の数字を変えることでキャストに支払われるチップのレート
を変えられます。デフォルト0.65
・その他 サイズやテクスチャは入れ替え可能です。
オフライン表示 :CAST_name_plate_off_line
オンライン表示 :CAST_name_plate_on_line
初期パネル画像 :cast_panel
質問、苦情はクリエーターまでIMを 改造もいたします^^

オンラインステータス & チップジャー COPY不可 148L$
2011年07月30日
夏休み真っ最中、みなさんお出かけ、レジャー、はたまた夏季講習に望んだり
アルバイトやお仕事にいそしんでることと思います。
この自由な時間を使ってカフェをちょこっと始めようと計画してる人も...
そこで僕の開発したオンラインチップジャーを使ってみてください^^
カフェのムービーも載せてみましたのでイメージを膨らませてくださいね。

代わってオンラインステータスとチップジャーの機能を持ったパネル
を紹介します。

販売場所:
http://maps.secondlife.com/secondlife/Bassett/175/5/63
本商品は、ダンスホールやクラブ又はカフェなどでREZして設置すると
登録者のオンライン時に高光度で光ったりONLINEの表示をします。
プロフ写真がパネルのテクスチャーになるイージー登録
分割チップジャーの機能があります。
・使用方法
1)オーナーさんは、土地にREZして口座からの引き落としを許可してください。
チップは一旦オーナーの口座に入金されレートにしたがってキャストに
自動で送金されます。 消費量1プリム
その時、グループをアクティブにしておいてパネルにグループ設定してください。
グループメンバーのみキャスト登録が出来ます。
2)登録者(キャスト)さんは、本体のどこかにカーソルを合わせてライトクリックし触るを選択
3)ダイアログメニュー
regist : キャスト登録
release : 登録解除
d.list : 献金者リスト表示 メモリーが満杯になると警告のIMを通知して自動消去します。
4)説明欄の数字を変えることでキャストに支払われるチップのレート
を変えられます。デフォルト0.65
・その他 サイズやテクスチャは入れ替え可能です。
オフライン表示 :CAST_name_plate_off_line
オンライン表示 :CAST_name_plate_on_line
初期パネル画像 :cast_panel
質問、苦情はクリエーターまでIMを 改造もいたします^^

アルバイトやお仕事にいそしんでることと思います。
この自由な時間を使ってカフェをちょこっと始めようと計画してる人も...
そこで僕の開発したオンラインチップジャーを使ってみてください^^
カフェのムービーも載せてみましたのでイメージを膨らませてくださいね。

CAFEの前でスナップ
カフェイメージムービー
代わってオンラインステータスとチップジャーの機能を持ったパネル
を紹介します。

オンラインステータス & チップジャー COPY可 880L$
販売場所:
http://maps.secondlife.com/secondlife/Bassett/175/5/63
本商品は、ダンスホールやクラブ又はカフェなどでREZして設置すると
登録者のオンライン時に高光度で光ったりONLINEの表示をします。
プロフ写真がパネルのテクスチャーになるイージー登録
分割チップジャーの機能があります。
・使用方法
1)オーナーさんは、土地にREZして口座からの引き落としを許可してください。
チップは一旦オーナーの口座に入金されレートにしたがってキャストに
自動で送金されます。 消費量1プリム
その時、グループをアクティブにしておいてパネルにグループ設定してください。
グループメンバーのみキャスト登録が出来ます。
2)登録者(キャスト)さんは、本体のどこかにカーソルを合わせてライトクリックし触るを選択
3)ダイアログメニュー
regist : キャスト登録
release : 登録解除
d.list : 献金者リスト表示 メモリーが満杯になると警告のIMを通知して自動消去します。
4)説明欄の数字を変えることでキャストに支払われるチップのレート
を変えられます。デフォルト0.65
・その他 サイズやテクスチャは入れ替え可能です。
オフライン表示 :CAST_name_plate_off_line
オンライン表示 :CAST_name_plate_on_line
初期パネル画像 :cast_panel
質問、苦情はクリエーターまでIMを 改造もいたします^^

オンラインステータス & チップジャー COPY不可 148L$
2011年07月09日

オンラインステータス & チップジャー COPY可 880L$
販売場所:
http://slurl.com/secondlife/Bassett/173/37/1283
本商品は、ダンスホールやクラブ又はカフェなどでREZして設置すると
登録者のオンライン時に高光度で光ったりONLINEの表示をします。
プロフ写真がパネルのテクスチャーになるイージー登録
分割チップジャーの機能があります。
・使用方法
1)オーナーさんは、土地にREZして口座からの引き落としを許可してください。
チップは一旦オーナーの口座に入金されレートにしたがってキャストに
自動で送金されます。 消費量1プリム
その時、グループをアクティブにしておいてパネルにグループ設定してください。
グループメンバーのみキャスト登録が出来ます。
2)登録者(キャスト)さんは、本体のどこかにカーソルを合わせてライトクリックし触るを選択
3)ダイアログメニュー
regist : キャスト登録
release : 登録解除
d.list : 献金者リスト表示 メモリーが満杯になると警告のIMを通知して自動消去します。
4)説明欄の数字を変えることでキャストに支払われるチップのレート
を変えられます。デフォルト0.65
・その他 サイズやテクスチャは入れ替え可能です。
オフライン表示 :CAST_name_plate_off_line
オンライン表示 :CAST_name_plate_on_line
初期パネル画像 :cast_panel
質問、苦情はクリエーターまでIMを

オンラインステータス & チップジャー COPY不可 148L$
2011年05月15日
ひさびさの投稿^^
ずーと暖めてきた案で自己満足なファッションショーステージを僕なりに作ってみました~
動画も掲載! どうぞご鑑賞を^^ 試してみたい人は下記SLURLでテレポートしてお越しを
・場所 ステージ場所
http://slurl.com/secondlife/Celeste/190/119/22


・ポーズアニメ :Striking-Poses
http://maps.secondlife.com/secondlife/Reasonable%20Desires/163/119/27
・ヘアー:Love soul
http://slurl.com/secondlife/Love%20Soul/215/74/27
・クロース:Phoenix Rising
http://slurl.com/secondlife/Ashoka/132/140/28
ずーと暖めてきた案で自己満足なファッションショーステージを僕なりに作ってみました~

動画も掲載! どうぞご鑑賞を^^ 試してみたい人は下記SLURLでテレポートしてお越しを

・場所 ステージ場所
http://slurl.com/secondlife/Celeste/190/119/22

ポーズ

ファッションショー sitball
・ポーズアニメ :Striking-Poses
http://maps.secondlife.com/secondlife/Reasonable%20Desires/163/119/27
・ヘアー:Love soul
http://slurl.com/secondlife/Love%20Soul/215/74/27
・クロース:Phoenix Rising
http://slurl.com/secondlife/Ashoka/132/140/28
動画 ファッションショー
2009年08月18日
僕がコツコツ組んでるダンスの出来栄えを確かめる
為、一部始終を途切れなく動画の収めてみました
結果を投稿~

・あとがき
僕なりには最高の出来栄え^^ でも、アニメが一部繋がらなかったり、シンクロが甘かったり
まだ直すところがある感じ。ちなみにダンスの中盤で出てくる巨大なリング中央に出てくるパーティクル
はタチコマノエルさんにパーティクルを改造できるよう作ってもらったものです。この場をもって感謝
為、一部始終を途切れなく動画の収めてみました

結果を投稿~

スナップ1 フォーメーションダンス
ムービー フォーメーションダンス一部始終 YouTube版
・あとがき
僕なりには最高の出来栄え^^ でも、アニメが一部繋がらなかったり、シンクロが甘かったり
まだ直すところがある感じ。ちなみにダンスの中盤で出てくる巨大なリング中央に出てくるパーティクル
はタチコマノエルさんにパーティクルを改造できるよう作ってもらったものです。この場をもって感謝
2009年01月24日
今日の題材は、音声再生スクリプトです。
SLでは、チャットでの会話やジェスチャーが主なコニュニケーション手段になりますけど
現実世界では会話は口で行いますし、オブジェクトに音声再生を加えれば劇的にSLは
面白くなりますよ~。ボイスがあるじゃないかという方もいるかと思いますがセカンドライフ
の観点から匿名性やもう一人の自分を演じるにはこれを多様しない手はないですねw
僕は、まだまだこの辺が弱くて面白いサウンドや会話用音声を使いこなしてないんだけど
今までやってきたシューティングゲーム用の弾の発射音やミュージック再生スクリプトの
一部を公開します。
・音声ファイルの種類
音ファイルにはMP3やWMAが代表的ですがこれらの音を作る前段階として生の
音源はWAVEファイルという圧縮無しのファイルがあります。SLでアップロードできる
音声はこの形式なので覚えておいてください。圧縮なしなのでファイルサイズは大きく
なります。 拡張子はwavになりますからネットでダウンロードしたりPCの録音機能を
使って取り込むことも可能です。
44.1kHzサンプリングで16ビット表現CD相当のクオリティーを持っています。
・各種サウンドデーターをwav形式にする方法
僕は、いろんな音声形式をwave形式に変換してくれるフリーのソフトを用いてます。
ソフト名:EcoDecoTooL
入手先:Vector http://www.vector.co.jp/
本ソフトを起動すると下記ダイアログが表示されるので変換したいファイルをドラッグ
アンドドロップすれは変換してくれる優れものです。
変換メニューにはWAVのラジオボタンを指定して音声指定は44.1KHz 16bitステレオを
指定。SLにアップロードの決まりではwavのみのファイルが指定されてるのでWAV変換の設定は他の
ものでも大丈夫と思います。

・マイクやPCの再生音を取り込む方法
私はWINDOWSのプログラムメニューのアクセサリ内のサウンドレコーダーを用いて
いろんな音源からPCに取り込んで楽しんでます。
この辺は、みなさんのPC(パソコン)の環境に依存しますから割愛しますけど
これを使って得た音声をSLにアップロードしてスクリプトに組み込みます。

・アップロード方法
SLのビューワーのメニューから音声アップロードを選択
ファイル選択ダイアログでWAV形式ファイルを選択
注意 アップロードできる最大時間は30秒までと決められてますので
音声データーを作るときはこの時間制限を守ってください。
アップロードでエラーになります。
また、アップロードして音声はジェスチャーに登録して再生もできますよ。
本日はここまで~~ 次回音声スクリリプトを紹介します。
SLでは、チャットでの会話やジェスチャーが主なコニュニケーション手段になりますけど
現実世界では会話は口で行いますし、オブジェクトに音声再生を加えれば劇的にSLは
面白くなりますよ~。ボイスがあるじゃないかという方もいるかと思いますがセカンドライフ
の観点から匿名性やもう一人の自分を演じるにはこれを多様しない手はないですねw
僕は、まだまだこの辺が弱くて面白いサウンドや会話用音声を使いこなしてないんだけど
今までやってきたシューティングゲーム用の弾の発射音やミュージック再生スクリプトの
一部を公開します。
・音声ファイルの種類
音ファイルにはMP3やWMAが代表的ですがこれらの音を作る前段階として生の
音源はWAVEファイルという圧縮無しのファイルがあります。SLでアップロードできる
音声はこの形式なので覚えておいてください。圧縮なしなのでファイルサイズは大きく
なります。 拡張子はwavになりますからネットでダウンロードしたりPCの録音機能を
使って取り込むことも可能です。
44.1kHzサンプリングで16ビット表現CD相当のクオリティーを持っています。
・各種サウンドデーターをwav形式にする方法
僕は、いろんな音声形式をwave形式に変換してくれるフリーのソフトを用いてます。
ソフト名:EcoDecoTooL
入手先:Vector http://www.vector.co.jp/
本ソフトを起動すると下記ダイアログが表示されるので変換したいファイルをドラッグ
アンドドロップすれは変換してくれる優れものです。
変換メニューにはWAVのラジオボタンを指定して音声指定は44.1KHz 16bitステレオを
指定。SLにアップロードの決まりではwavのみのファイルが指定されてるのでWAV変換の設定は他の
ものでも大丈夫と思います。

・マイクやPCの再生音を取り込む方法
私はWINDOWSのプログラムメニューのアクセサリ内のサウンドレコーダーを用いて
いろんな音源からPCに取り込んで楽しんでます。
この辺は、みなさんのPC(パソコン)の環境に依存しますから割愛しますけど
これを使って得た音声をSLにアップロードしてスクリプトに組み込みます。

・アップロード方法
SLのビューワーのメニューから音声アップロードを選択
ファイル選択ダイアログでWAV形式ファイルを選択
注意 アップロードできる最大時間は30秒までと決められてますので
音声データーを作るときはこの時間制限を守ってください。
アップロードでエラーになります。
また、アップロードして音声はジェスチャーに登録して再生もできますよ。
本日はここまで~~ 次回音声スクリリプトを紹介します。
2009年01月22日
今回は、スクリプトでアニメーションの再生を解説します。
みなさんは、HUDやジェスチャーなどにフリーや購入して得たアニメーションデーター
を登録して再生してると思いますがオブジェクトに入れてスクリで再生させる方法を
ご紹介します。
例題として3種類のモデルポーズのアニメーションを3秒間隔で繰り返し再生する
内容を載せますね。
・スクリプト内容
integer Number;
default
{
// 初期化
state_entry()
{
Number = 0;
}
// 装着時イベント
attach(key attached_person)
{
if(attached_person != NULL_KEY){llRequestPermissions(attached_person, PERMISSION_TRIGGER_ANIMATION);
llSetTimerEvent(3);
Number = 0;
}
else{llSetTimerEvent(0);
llStopAnimation("*MM* Model pose 1");
llStopAnimation("*MM* Model pose 2");
llStopAnimation("*MM* Model pose 3");
}
}
run_time_permissions(integer perm)
{
if (perm & PERMISSION_TRIGGER_ANIMATION)
{
// llStartAnimation("m stand05");
llSetText("Tomohiko Collection Start", <1,1,1>, 1.0);
}
}
timer()
{
Number++;
if(Number == 1){llStopAnimation("*MM* Model pose 24");llStartAnimation("*MM* Model pose 1");
llSetText("*MM* Model pose 1", <1,1,1>, 1.0);}
if(Number == 2){llStopAnimation("*MM* Model pose 1");llStartAnimation("*MM* Model pose 2");
llSetText("*MM* Model pose 2", <1,1,1>, 1.0);}
if(Number == 3){llStopAnimation("*MM* Model pose 2");llStartAnimation("*MM* Model pose 3");
llSetText("*MM* Model pose 3", <1,1,1>, 1.0);Number = 0;}
}
}
・解 説
1.integer Number;
default{}の外に変数宣言をしています。外部変数となりますのでどの関数からも参照可能です。
型はinteger 形なので-2147483648~2147483648まで表現できる整数です。
2.default{}
通常の標準ステートです。かならず書きましょう。
3. // 初期化
state_entry()
{
Number = 0;
}
//以降はコメントとなり処理コードとはみなされません。自由に書きたい内容を書きましょう。
あとからスクリをみて処理の流れがみやすくなります。
Number = 0;では変数を0クリアしています。外部変数には最初、関係ない数字が入って
いますので必ず数字の代入をし初期化するくせをつけると良いです。
4.// 装着時イベント
attach(key attached_person)
{}
オブジェクトを装着した時呼び出される関数です。 key attached_personにはキー型と呼ばれる
変数でインワールド内で一つしかない固有の数字を表せます。attached_personには装着した
アバの固有のUUIDが入ります。変数名はこの場合attached_personですが何でも可です。
5.if(attached_person != NULL_KEY)
オブジェクトを装着した時か外したときを判定します。
装着した時はattached_person に0以外のUUIDが入りますがNULL_KEY状態のとき(0)は
外した時となります。
6.{llRequestPermissions(attached_person, PERMISSION_TRIGGER_ANIMATION);
llSetTimerEvent(3);
Number = 0;
}
アバに装着した時、処理されます。
llRequestPermissions(attached_person, PERMISSION_TRIGGER_ANIMATION);
で装着したアバにアニメーションの再生許可を求めています。装着や椅子に座る場合では
青いダイアログの表示なしに自動的にアニメーションの再生が許可されてしまいます。
ご注意。
llSetTimerEvent(3);では3秒ごとにタイマーイベントを発生させよという命令になります。
後ほどでてくるtimer(){}の関数を3秒ごと繰り返し実行するとなりますね。
Number = 0;ここでも初期化で0クリアしたNumber変数に0を代入しますがスクリはコンパイル後
かリセットした時のみしかstate_entry(){}関数を実行しません。ですから装着した時行います。
7.else{llSetTimerEvent(0);
llStopAnimation("*MM* Model pose 1");
llStopAnimation("*MM* Model pose 2");
llStopAnimation("*MM* Model pose 3");
}
アバからオブジェクトを外したとき実行されます。
llSetTimerEvent(0);タイマーイベントを停止。ですがオブジェクト自体なくなるので
自動的にタイマーイベントはなくなりますから書かなくても良い。
llStopAnimation("*MM* Model pose 1");
llStopAnimation("*MM* Model pose 2");
llStopAnimation("*MM* Model pose 3"Number = 0;);
それぞれ再生したアニメーションを停止します。*MM* Model pose 1がアニメーション名
になります。ここでもオブジェクト自体なくなるので書かなくても良い。
アニメーション自体はスクリと一緒にコンテンツフォルダにいれましょう。

8.run_time_permissions(integer perm)
{
if (perm & PERMISSION_TRIGGER_ANIMATION)
{
// llStartAnimation("m stand05");
llSetText("Tomohiko Collection Start", <1,1,1>, 1.0);
}
ここでは、アニメーション許可がされたとき実行されます。
アニメーションばかりではなくいろんな許可体系があるのでif (perm & PERMISSION_TRIGGER_ANIMATION)
でアニメーションのみ選択しています。
通常ダンスボールなどでは、青いダイアログが出てOKした時この処理がされますが
ここではオブジェクトを装着した時実行されます。アニメーション開始の命令を入れたり
しますが、ここではllSetText("Tomohiko Collection Start", <1,1,1>, 1.0);関数でテキストを
オブジェクト上に表示させています。
9. timer()
{
Number++;
if(Number == 1){llStopAnimation("*MM* Model pose 24");llStartAnimation("*MM* Model pose 1");
llSetText("*MM* Model pose 1", <1,1,1>, 1.0);}
if(Number == 2){llStopAnimation("*MM* Model pose 1");llStartAnimation("*MM* Model pose 2");
llSetText("*MM* Model pose 2", <1,1,1>, 1.0);}
if(Number == 3){llStopAnimation("*MM* Model pose 2");llStartAnimation("*MM* Model pose 3");
llSetText("*MM* Model pose 3", <1,1,1>, 1.0);}
}
ここでタイマーイベントが3秒ごと実行されてNumber変数が1ずつ増分され前のポーズを停止し次の
ポーズを再生させています。アニメーションは重ねて再生することもできるのですが強さが5段階あり
売られているアニメはその強さがわからないケースが多いので次のアニメを再生させるときは前に再生
させてたアニメを停止しましょう。
停止の関数llStopAnimation("*MM* Model pose 24");
再生の関数llStartAnimation("*MM* Model pose 3");
llSetText("*MM* Model pose 3", <1,1,1>, 1.0);で再生中のアニメーション名をテキスト
表示させます。""のダブルクオーテーションで囲まれた内容がアニメーション名やテキスト内容
<1,1,1>はテキストカラーで最大1まで少数点つきで表現します左から赤,緑,青の度合いとなります。
最後の1.0は、不透明度です。1が強く0で透明になります。
・後書き
今回は透明な丸いオブジェクトにしてましたが、帽子や靴,メガネなどに応用すればアニメーション付きの
アクセサリーになりますよ~^^
みなさんは、HUDやジェスチャーなどにフリーや購入して得たアニメーションデーター
を登録して再生してると思いますがオブジェクトに入れてスクリで再生させる方法を
ご紹介します。
例題として3種類のモデルポーズのアニメーションを3秒間隔で繰り返し再生する
内容を載せますね。
・スクリプト内容
integer Number;
default
{
// 初期化
state_entry()
{
Number = 0;
}
// 装着時イベント
attach(key attached_person)
{
if(attached_person != NULL_KEY){llRequestPermissions(attached_person, PERMISSION_TRIGGER_ANIMATION);
llSetTimerEvent(3);
Number = 0;
}
else{llSetTimerEvent(0);
llStopAnimation("*MM* Model pose 1");
llStopAnimation("*MM* Model pose 2");
llStopAnimation("*MM* Model pose 3");
}
}
run_time_permissions(integer perm)
{
if (perm & PERMISSION_TRIGGER_ANIMATION)
{
// llStartAnimation("m stand05");
llSetText("Tomohiko Collection Start", <1,1,1>, 1.0);
}
}
timer()
{
Number++;
if(Number == 1){llStopAnimation("*MM* Model pose 24");llStartAnimation("*MM* Model pose 1");
llSetText("*MM* Model pose 1", <1,1,1>, 1.0);}
if(Number == 2){llStopAnimation("*MM* Model pose 1");llStartAnimation("*MM* Model pose 2");
llSetText("*MM* Model pose 2", <1,1,1>, 1.0);}
if(Number == 3){llStopAnimation("*MM* Model pose 2");llStartAnimation("*MM* Model pose 3");
llSetText("*MM* Model pose 3", <1,1,1>, 1.0);Number = 0;}
}
}
・解 説
1.integer Number;
default{}の外に変数宣言をしています。外部変数となりますのでどの関数からも参照可能です。
型はinteger 形なので-2147483648~2147483648まで表現できる整数です。
2.default{}
通常の標準ステートです。かならず書きましょう。
3. // 初期化
state_entry()
{
Number = 0;
}
//以降はコメントとなり処理コードとはみなされません。自由に書きたい内容を書きましょう。
あとからスクリをみて処理の流れがみやすくなります。
Number = 0;では変数を0クリアしています。外部変数には最初、関係ない数字が入って
いますので必ず数字の代入をし初期化するくせをつけると良いです。
4.// 装着時イベント
attach(key attached_person)
{}
オブジェクトを装着した時呼び出される関数です。 key attached_personにはキー型と呼ばれる
変数でインワールド内で一つしかない固有の数字を表せます。attached_personには装着した
アバの固有のUUIDが入ります。変数名はこの場合attached_personですが何でも可です。
5.if(attached_person != NULL_KEY)
オブジェクトを装着した時か外したときを判定します。
装着した時はattached_person に0以外のUUIDが入りますがNULL_KEY状態のとき(0)は
外した時となります。
6.{llRequestPermissions(attached_person, PERMISSION_TRIGGER_ANIMATION);
llSetTimerEvent(3);
Number = 0;
}
アバに装着した時、処理されます。
llRequestPermissions(attached_person, PERMISSION_TRIGGER_ANIMATION);
で装着したアバにアニメーションの再生許可を求めています。装着や椅子に座る場合では
青いダイアログの表示なしに自動的にアニメーションの再生が許可されてしまいます。
ご注意。
llSetTimerEvent(3);では3秒ごとにタイマーイベントを発生させよという命令になります。
後ほどでてくるtimer(){}の関数を3秒ごと繰り返し実行するとなりますね。
Number = 0;ここでも初期化で0クリアしたNumber変数に0を代入しますがスクリはコンパイル後
かリセットした時のみしかstate_entry(){}関数を実行しません。ですから装着した時行います。
7.else{llSetTimerEvent(0);
llStopAnimation("*MM* Model pose 1");
llStopAnimation("*MM* Model pose 2");
llStopAnimation("*MM* Model pose 3");
}
アバからオブジェクトを外したとき実行されます。
llSetTimerEvent(0);タイマーイベントを停止。ですがオブジェクト自体なくなるので
自動的にタイマーイベントはなくなりますから書かなくても良い。
llStopAnimation("*MM* Model pose 1");
llStopAnimation("*MM* Model pose 2");
llStopAnimation("*MM* Model pose 3"Number = 0;);
それぞれ再生したアニメーションを停止します。*MM* Model pose 1がアニメーション名
になります。ここでもオブジェクト自体なくなるので書かなくても良い。
アニメーション自体はスクリと一緒にコンテンツフォルダにいれましょう。

8.run_time_permissions(integer perm)
{
if (perm & PERMISSION_TRIGGER_ANIMATION)
{
// llStartAnimation("m stand05");
llSetText("Tomohiko Collection Start", <1,1,1>, 1.0);
}
ここでは、アニメーション許可がされたとき実行されます。
アニメーションばかりではなくいろんな許可体系があるのでif (perm & PERMISSION_TRIGGER_ANIMATION)
でアニメーションのみ選択しています。
通常ダンスボールなどでは、青いダイアログが出てOKした時この処理がされますが
ここではオブジェクトを装着した時実行されます。アニメーション開始の命令を入れたり
しますが、ここではllSetText("Tomohiko Collection Start", <1,1,1>, 1.0);関数でテキストを
オブジェクト上に表示させています。
9. timer()
{
Number++;
if(Number == 1){llStopAnimation("*MM* Model pose 24");llStartAnimation("*MM* Model pose 1");
llSetText("*MM* Model pose 1", <1,1,1>, 1.0);}
if(Number == 2){llStopAnimation("*MM* Model pose 1");llStartAnimation("*MM* Model pose 2");
llSetText("*MM* Model pose 2", <1,1,1>, 1.0);}
if(Number == 3){llStopAnimation("*MM* Model pose 2");llStartAnimation("*MM* Model pose 3");
llSetText("*MM* Model pose 3", <1,1,1>, 1.0);}
}
ここでタイマーイベントが3秒ごと実行されてNumber変数が1ずつ増分され前のポーズを停止し次の
ポーズを再生させています。アニメーションは重ねて再生することもできるのですが強さが5段階あり
売られているアニメはその強さがわからないケースが多いので次のアニメを再生させるときは前に再生
させてたアニメを停止しましょう。
停止の関数llStopAnimation("*MM* Model pose 24");
再生の関数llStartAnimation("*MM* Model pose 3");
llSetText("*MM* Model pose 3", <1,1,1>, 1.0);で再生中のアニメーション名をテキスト
表示させます。""のダブルクオーテーションで囲まれた内容がアニメーション名やテキスト内容
<1,1,1>はテキストカラーで最大1まで少数点つきで表現します左から赤,緑,青の度合いとなります。
最後の1.0は、不透明度です。1が強く0で透明になります。
・後書き
今回は透明な丸いオブジェクトにしてましたが、帽子や靴,メガネなどに応用すればアニメーション付きの
アクセサリーになりますよ~^^
2009年01月21日
今日はスクリプトをプログラミングする前に僕が行ってる
テクニックを紹介します。
SLビューワーに付属のエディーター(スクリプト編集画面)
ではコードを打ち込むのに効率が悪いしOFF LINEでは、
編集が出来ません^^;ヴューワーがフリーズしたりすると
せっかく打ち込んだ内容がパーになって目もあてられません。
そこでやってるのがSLビューワー以外のエディーターで
テキストを書き込みコーディングしカットアンドペーストで
書き写し、その後保存しコンパイルする。楽チンにプログラミング出来ますよ。
PCに保存も出来るので管理がしやすいし流用が出来るし超~便利。
・カット&ペースト方法
編集ソフトでマウスでヒダリクリックしてドラッグ CTRL + C でクリップボードに取り込み
書き写すSLビューワーでマウスをクリックして有効画面として CTRL + Vで複写
・使用しているエディーター
秀丸エディタ Version 3.01 製作者 斉藤秀夫 シェアウエアです。
入手先
http://www.vector.co.jp/
ですが、メモ帳でも出来ます。
・編集画像



テクニックを紹介します。
SLビューワーに付属のエディーター(スクリプト編集画面)
ではコードを打ち込むのに効率が悪いしOFF LINEでは、
編集が出来ません^^;ヴューワーがフリーズしたりすると
せっかく打ち込んだ内容がパーになって目もあてられません。
そこでやってるのがSLビューワー以外のエディーターで
テキストを書き込みコーディングしカットアンドペーストで
書き写し、その後保存しコンパイルする。楽チンにプログラミング出来ますよ。
PCに保存も出来るので管理がしやすいし流用が出来るし超~便利。
・カット&ペースト方法
編集ソフトでマウスでヒダリクリックしてドラッグ CTRL + C でクリップボードに取り込み
書き写すSLビューワーでマウスをクリックして有効画面として CTRL + Vで複写
・使用しているエディーター
秀丸エディタ Version 3.01 製作者 斉藤秀夫 シェアウエアです。
入手先
http://www.vector.co.jp/
ですが、メモ帳でも出来ます。
・編集画像

CTRL + C でクリップボードに取り込み

ウインドウ内をマウスでクリック後 CTRL + Vで複写

書き写した後
2009年01月20日
セカンドライフの世界では、摩訶不思議な体験が出来ますが
ジェットコースターに乗るとかTPして瞬間移動したり戦闘機に乗ったり
楽器を演奏など簡単な動作でもオブジェクトにはリンデンスクリプト言語
というプログラミング規約にしたがってコードが書かれてたノートがあります。
映像やテクスチャ(オブジェクトの表面の画像)音だけでも十分
SLの世界では楽しめますが、スクリプトをオブジェに吹き込むと
更に世界が広がると思います。
ぼくが、今まで培ってきたスクリプトの内容を少しずつ公開して
みなさんの参考になれればいいかなと思いこのカテゴリをつくりました^^
・スクリプトの登録方法
オブジェクトのコンテンツ覧の新しいスクリをクリックするとContentsフォルダ配下にNew Scriptが作成されます。
それをクリックして編集画面を開きます。
・内容
default
{
state_entry()
{
llSay(0, "Hello, Avatar");
}
touch_atart(integer total_number)
{
llSay(0, "Touched.");
}
}
・意味
defaultは標準ステートのことで、複雑なプログラミングをする場合はこのステートが何種類
も出てきますが慣れてなければ決まり文句のようにこの構文のみ記述すれば良いと思います。
意味はスクリプトが最初に動くステートのことです。
書き方はdefault{}となります。かならず左かっこと右かっこを対に記述します。
state_entry()は関数の一種ですがコンパイル後やリセットした時実行されます。
書き方は関数名(){}となります。{}内にいろいろな処理を記入します。
llSay(0, "Hello, Avatar"); では0番のパブリックチャンネルに文字列Hello, Avatar
を出力せよという意味になります。パブリックチャンネルとは通常のチャット覧のこと。
ちなみにチャット覧に表示されないチャンネルがオブジェクト間通信に使えますが
チャンネル数は何百チャンネルか用意されています。
touch_atart(integer total_number)は、オブジェクトをタッチし始めたとき呼び出される
関数です。ここではllSay(0, "Touched.");があるのでチャット覧にTouched.が表示されます。
関数の表記は 関数名(変数タイプ 変数名)となります。この関数では変数タイプが
整数で変数名はtotal_numberとなります。total_numberにはタッチした人数が格納
されます。
・注意
構文の最後にはかならずセミコロン;を記述します。コンパイラという翻訳ソフトが文の区切り
を検出するのに必要となります。
今日は、この辺でへばってきたので~~~これにて終了^^;
・出典 セカンドライフ Linden Scripting Language プログラミング入門 赤坂玲音 著
ジェットコースターに乗るとかTPして瞬間移動したり戦闘機に乗ったり
楽器を演奏など簡単な動作でもオブジェクトにはリンデンスクリプト言語
というプログラミング規約にしたがってコードが書かれてたノートがあります。
映像やテクスチャ(オブジェクトの表面の画像)音だけでも十分
SLの世界では楽しめますが、スクリプトをオブジェに吹き込むと
更に世界が広がると思います。
ぼくが、今まで培ってきたスクリプトの内容を少しずつ公開して
みなさんの参考になれればいいかなと思いこのカテゴリをつくりました^^
・スクリプトの登録方法
オブジェクトのコンテンツ覧の新しいスクリをクリックするとContentsフォルダ配下にNew Scriptが作成されます。
それをクリックして編集画面を開きます。
・内容
default
{
state_entry()
{
llSay(0, "Hello, Avatar");
}
touch_atart(integer total_number)
{
llSay(0, "Touched.");
}
}
・意味
defaultは標準ステートのことで、複雑なプログラミングをする場合はこのステートが何種類
も出てきますが慣れてなければ決まり文句のようにこの構文のみ記述すれば良いと思います。
意味はスクリプトが最初に動くステートのことです。
書き方はdefault{}となります。かならず左かっこと右かっこを対に記述します。
state_entry()は関数の一種ですがコンパイル後やリセットした時実行されます。
書き方は関数名(){}となります。{}内にいろいろな処理を記入します。
llSay(0, "Hello, Avatar"); では0番のパブリックチャンネルに文字列Hello, Avatar
を出力せよという意味になります。パブリックチャンネルとは通常のチャット覧のこと。
ちなみにチャット覧に表示されないチャンネルがオブジェクト間通信に使えますが
チャンネル数は何百チャンネルか用意されています。
touch_atart(integer total_number)は、オブジェクトをタッチし始めたとき呼び出される
関数です。ここではllSay(0, "Touched.");があるのでチャット覧にTouched.が表示されます。
関数の表記は 関数名(変数タイプ 変数名)となります。この関数では変数タイプが
整数で変数名はtotal_numberとなります。total_numberにはタッチした人数が格納
されます。
・注意
構文の最後にはかならずセミコロン;を記述します。コンパイラという翻訳ソフトが文の区切り
を検出するのに必要となります。
今日は、この辺でへばってきたので~~~これにて終了^^;
・出典 セカンドライフ Linden Scripting Language プログラミング入門 赤坂玲音 著