2010年03月01日
第08回 キー入力検出
LSLでは、ビークル以外にも様々な用途で移動キーの入力検出が有用になってきます。例えばポーズボールに座った人が、カーソルキーでポーズを変更したりするものです。キー入力を検知して動くコントロールイベントを使いこなせるようになると、使用者を楽しませる動的なスクリプトを作れるかと思います
今回は、椅子に座りカーソルキーの動きをチェックするテストコードです。カメラ位置が悪いと、テストで使うフローティングテキストが画面外に出て見えなくなってしまう場合があります。これを防ぐため、カメラ位置の制御も組み込みました。ポーズボール+カメラ制御+キー操作制御、このような内容です。
続きを読む
今回は、椅子に座りカーソルキーの動きをチェックするテストコードです。カメラ位置が悪いと、テストで使うフローティングテキストが画面外に出て見えなくなってしまう場合があります。これを防ぐため、カメラ位置の制御も組み込みました。ポーズボール+カメラ制御+キー操作制御、このような内容です。
続きを読む
2010年02月16日
無料配布! Redzone MultiFlight HUD
当ブログでいくつか紹介してきましたスクリプトを使った、多機能HUDをご紹介します。2月28日までの無料配布です 申し訳ありません中止致しました。
自分のLSLの勉強も兼ねてブログ記事にもなるようチマチマ作ってきた物ですので、機能的にちょっと寂しい所もあるかもしれません。こんなのでよければ使ってやって下さい
FlightAccelerator
→ 高高度飛行制限解除・飛行速度4段切替・移動速度表示 (ON/OFF 可)
→ ダッシュ入力による高速移動で壁抜け可能
LM History & Memory
→ テレポート先の場所を自動で最大20件、日付入りで自動保存
→ LM メモリー機能で最大18件、お気に入りのSIM座標を保存
WorldTimeClock
→ 最小 1分刻みで時差調整できる世界時計内蔵 (ON/OFF 可)
→ 世界標準時・太平洋標準時・日本標準時をプリセット済み
※ HUDサイズ2種類、カラー7種の切替機能付き
Redzone
http://slurl.com/secondlife/realize/172/69/22
詳しい説明書などはコチラをご覧下さい。
http://redzonesl.blog12.fc2.com/
自分のLSLの勉強も兼ねてブログ記事にもなるようチマチマ作ってきた物ですので、機能的にちょっと寂しい所もあるかもしれません。こんなのでよければ使ってやって下さい
FlightAccelerator
→ 高高度飛行制限解除・飛行速度4段切替・移動速度表示 (ON/OFF 可)
→ ダッシュ入力による高速移動で壁抜け可能
LM History & Memory
→ テレポート先の場所を自動で最大20件、日付入りで自動保存
→ LM メモリー機能で最大18件、お気に入りのSIM座標を保存
WorldTimeClock
→ 最小 1分刻みで時差調整できる世界時計内蔵 (ON/OFF 可)
→ 世界標準時・太平洋標準時・日本標準時をプリセット済み
※ HUDサイズ2種類、カラー7種の切替機能付き
Redzone
http://slurl.com/secondlife/realize/172/69/22
詳しい説明書などはコチラをご覧下さい。
http://redzonesl.blog12.fc2.com/
2010年02月14日
第07回 世界時計
さて、今回は1分刻みで時差調整できる世界時計のスクリプトです。LSLで取得できる日付・時間はグリニッジ標準時(GMT)なので、時差に合わせて加減しないといけません。日本はGMT+9時間ですが、地域によっては+6:30などもあります。5分進めた時計を使いたい場合もあるかと思いますので、分単位で時差指定できる関数を組んでみました。
続きを読む
続きを読む
2010年02月12日
第06回 速度検出HUD
第03~05回にかけて速度の求め方・小数点以下の四捨五入の事を書いてきましたが相当無駄なことをしていたようで
無理矢理作ったユーザー関数二つ分がなんと一行で書けてしまいました コメント頂いた方、ありがとうございましたm(_ _)m
では、当初よりすごく簡単になった小数第二位表示の速度検出HUDです。
続きを読む
無理矢理作ったユーザー関数二つ分がなんと一行で書けてしまいました コメント頂いた方、ありがとうございましたm(_ _)m
では、当初よりすごく簡単になった小数第二位表示の速度検出HUDです。
続きを読む
2010年02月11日
第05回 小数点以下を任意の桁数で四捨五入する
第03~04回では速度の求め方を解説してきました。主観ではありますが、実際に使ってみると速度表示が整数値なのでちょっと寂しい感じがします。セカンドライフでオブジェクトの速度を知る意味を考えると、武器やビークル等を「作る側」に必要な事であって、使用する側にとっては体感することであり数値を知る事の意味はあまりないと思います。あるとすれば機能美を感じるかどうかでしょうか。
LSLで小数点以下を任意の桁数で四捨五入する。というような関数は残念ながら用意されていないようでした。無いなら作ってしまおう!という事で今回のスクリプトです
続きを読む
LSLで小数点以下を任意の桁数で四捨五入する。というような関数は残念ながら用意されていないようでした。無いなら作ってしまおう!という事で今回のスクリプトです
続きを読む
2010年02月09日
第04回 llGetVel() を使って速度を算出
オブジェクトの進行方向の速度を求める公式がわかりましたので、次はLSLに組み込んで実際に動作させてみましょう。簡単な速度検出HUDを作ってみました。適当な小さな箱を作りHUD装着、その中にスクリプトを書きます。
続きを読む
続きを読む
2010年02月07日
第03回 llGetVel() を使って速度を算出
車などの乗り物やHUDには速度表示の機能がついているものがあります。LSLには llGetVel() 関数でオブジェクトの速度を得られますが、戻り値はグローバル座標を基準としたvector型であり単純に今、時速何キロメートル毎時で動いているかという数値は計算しないとわかりません。今回は少し数学の話を交えて解説していきます。三平方の定理・ピタゴラスの定理などと呼ばれるもので、三角定規を使って習った事を覚えている方も多いと思います。
続きを読む
続きを読む
2010年02月04日
第02回 リンクメッセージ
前回のダイアログモジュールでは、具体的な処理は llMessageLinked 関数による命令送信のみで済ましました。 第02回は、その llMessageLinked を受けて動作する link_message イベントについてです。
続きを読む
続きを読む
2010年02月01日
第01回 ダイアログモジュール
最初の記事はスクリプトの中でもとてもよく使う llDialog についてです。
タッチ、タイマー、リッスンイベント等を複合して使う必要があり、ダイアログを使いこなせればスクリプターとして一歩前進です
ダイアログスクリプトは、リッスン状態の管理にタイマーイベントを使用しますので、タイマーイベントを使用したものを作りたい場合は、ダイアログとは別のスクリプトで書いた方がいいでしょう。ですから今回のスクリプトは、「オブジェクトにタッチ→ダイアログを表示→選択したボタンに対応した命令を送信」という部分のみをモジュール化したものです。さらに、ユーザー関数を導入してコードの簡略化を図ります。
続きを読む
タッチ、タイマー、リッスンイベント等を複合して使う必要があり、ダイアログを使いこなせればスクリプターとして一歩前進です
ダイアログスクリプトは、リッスン状態の管理にタイマーイベントを使用しますので、タイマーイベントを使用したものを作りたい場合は、ダイアログとは別のスクリプトで書いた方がいいでしょう。ですから今回のスクリプトは、「オブジェクトにタッチ→ダイアログを表示→選択したボタンに対応した命令を送信」という部分のみをモジュール化したものです。さらに、ユーザー関数を導入してコードの簡略化を図ります。
続きを読む