マイコン関連,パソコン関連から
ゲームレビューやらなにやら,
私の捻じ曲がった視点から
戯言を綴る趣味ページです.
[PR]
2025.05.23 Friday
×
[PR]上記の広告は3ヶ月以上新規記事投稿のないブログに表示されています。新しい記事を書く事で広告が消えます。
デブに苦しい季節到来
2011.05.08 Sunday
部屋が暑すぎる・・・外気温+5℃って・・・一体.動くと汗まみれ.流石にもうエアコンという選択肢はないけれど,我慢してだれてしまって何もしないなんていうのも時間の無駄だし.と,いうことで少し早めの冷風扇を出しました.知ってますか冷風扇?冷風扇に必要なのは水だけです.まあ,電気もいるけどね.冷風扇は水の気化熱を利用して少し冷たい風を作り出してくれます.電気代もエアコンよりは安いはず?電気の節約を考えると,これ以上はもう脱ぐしかないですね.真逆の発想で,あえて汗をかいてダイエットという手もありますが・・・あまり考えたくないですね.汗をかいてもジュースのむだけですから・・・
PR
テクスチャに挑戦
2011.05.08 Sunday
先日,money treeの前で佇んでいる折に,親切な方からまたいろいろ教えていただきました.今回はプリムに貼るテクチャについてです.プリムというのはプリミティブの意味で,SL内での物つくりの基本単位である球体や立方体やら円柱などのことです.テクチャはそのプリムの面毎に別々のテクスチャを貼ることができます.テクスチャの種類はデフォルトで幾らか用意されていますが,少し試しに貼ってみたりすると,そのうちに自分のオリジナルのテクスチャを使いたいなぁ,という気持ちになってきます.というか,私がなりました.しかし,ここで問題が.SL内に自作テクスチャをuploadするには1枚あたり10L$のお金がかかるのです.となると,なかなか手を出せない・・・やっと100L$貯まったばかりですし.
ここからが教えていただいた内容になるのですが,なんと『一時的にではありますが,テクスチャを無料で読み込む方法』あるのです.これは非常に便利ですよね?しかも近くにいる人にもそのテクスチャを見せることができます.やり方は簡単です.まず始めに,SLをプレイする際に公式のSL Viewerではなく,phoenix viewerという無料のviewerを使ってloginします.そしてメニューよりupdate fileを選択して,読み込む際に temporaryにチェックを入れるだけ.読み込むボタンには10L$と書かれていますが,temporaryにチェックが入っていると,読み込んでもお金はかかりません.便利ですね.ただ,まあ読んで字のごとく一時保存ですから.ずっと保存はできませんよ.
これで無料でテクスチャを貼る練習ができますね.そこで実際やってみました.貼ってみた画像がこちらです.お金がかかるなら絶対upしない画像ですね.

テクスチャのサイズには制限がありますので注意して下さいね.で,このテクスチャを引っ張ったり位置をずらしたりなんかして,複数の面に貼ったのがこのサイコロです.このように,1枚のテクチャで複数の面に貼れるわけです.その分画像が引き伸ばされて汚くなるのですが・・・こうすればお金の節約ができますね.

ここからが教えていただいた内容になるのですが,なんと『一時的にではありますが,テクスチャを無料で読み込む方法』あるのです.これは非常に便利ですよね?しかも近くにいる人にもそのテクスチャを見せることができます.やり方は簡単です.まず始めに,SLをプレイする際に公式のSL Viewerではなく,phoenix viewerという無料のviewerを使ってloginします.そしてメニューよりupdate fileを選択して,読み込む際に temporaryにチェックを入れるだけ.読み込むボタンには10L$と書かれていますが,temporaryにチェックが入っていると,読み込んでもお金はかかりません.便利ですね.ただ,まあ読んで字のごとく一時保存ですから.ずっと保存はできませんよ.
これで無料でテクスチャを貼る練習ができますね.そこで実際やってみました.貼ってみた画像がこちらです.お金がかかるなら絶対upしない画像ですね.
テクスチャのサイズには制限がありますので注意して下さいね.で,このテクスチャを引っ張ったり位置をずらしたりなんかして,複数の面に貼ったのがこのサイコロです.このように,1枚のテクチャで複数の面に貼れるわけです.その分画像が引き伸ばされて汚くなるのですが・・・こうすればお金の節約ができますね.
自作オブジェクトを操作できるLSL
2011.05.05 Thursday
LSLはLinden Script Language の頭文字をとったもので,SL内で作用するプログラミング言語になります.LSL内ではスクリプトといえば通じるはずです.私もやっとスクリプトをいじれる様になってきました.とりあえず参考になるURLを貼ります.
英語のリファレンス:とりあえずここを見れば全て載っているはずです
AIPIRO.COM:スクリプト例が沢山あります
Makapu@BlackSheep-LSL:SL内の親切な方に教えて頂ました
原宿竹下工房:オブジェクト作成からスクリプトまクリエイターのためのサイトです
上記のサイトを眺めるだけでもかなり勉強になります.
基本的なことは上記サイトで学べるので,以下は私のメモです.
オブジェクトを動かしたい
関数は『llSetPos』です.使い方例は以下,
vector pos = llGetPos(); //現在位置を取得
pos.x = pos.x + 1; //取得位置からx座標値を加算
llSetPos(pos); //座標を更新します
オブジェクトを回転したい
関数は『llSetRot』です.使い方例は以下,
rotation rot = llGetRot(); //現在の角度を取得
llSetRot(rot * llEuler2Rot(<5.0/180.0*PI,0,0>));
//角度を更新
注意すべきことは回転角度の指定はラジアンであること.
上の例は 5 [deg]回転するもの.
『/180*PI』を計算することでラジアンに変換しています.
定期的に割り込みをかけたい
関数は『llSetTimerEvent』です.使い方例は以下,
llSetTimerEvent(2.0); //2秒毎に割り込み
timer()関数内で割り込み処理を記述.
別のオブジェクトを操作したい
実はこれ,非常に簡単.話しかけるだけなんです.ただ普通にはなしかけるのではなく,特定のチャンネルを指定します.チャンネル0で普通の会話と同じです.
llSay(チャンネル,"内容");
これで送信側はOK.次は受信側の設定です.
state_entry()
{llListen(チャンネル,"","","");}}
llListenの引数は興味があれば自分で調べてみてください.上の例では送信側の特定はしていません.別のオブジェクトからの話でもチャンネルさえ合えば受信できます.受信した際の行動は,
listen(integer channel,string name,key id, string message)
{
if(message == "内容")
{
させたい内容;
}
}
のように記述すればOK.簡単でしょ?
これだけで十分objectを操作できますよね.最近よく思うようになってきたのですが,こんなに自由度が高く何でもできるSLが何故はやらないのだろう・・・不思議で仕方ない.ただ,人がそれ程いないお陰でSL内で自由にスクリプトの練習やら,オブジェクトの作成ができるのですが・・・そのうちお金払って自分の土地を持ちたいなぁと本当に考え始めています.
英語のリファレンス:とりあえずここを見れば全て載っているはずです
AIPIRO.COM:スクリプト例が沢山あります
Makapu@BlackSheep-LSL:SL内の親切な方に教えて頂ました
原宿竹下工房:オブジェクト作成からスクリプトまクリエイターのためのサイトです
上記のサイトを眺めるだけでもかなり勉強になります.
基本的なことは上記サイトで学べるので,以下は私のメモです.
オブジェクトを動かしたい
関数は『llSetPos』です.使い方例は以下,
vector pos = llGetPos(); //現在位置を取得
pos.x = pos.x + 1; //取得位置からx座標値を加算
llSetPos(pos); //座標を更新します
オブジェクトを回転したい
関数は『llSetRot』です.使い方例は以下,
rotation rot = llGetRot(); //現在の角度を取得
llSetRot(rot * llEuler2Rot(<5.0/180.0*PI,0,0>));
//角度を更新
注意すべきことは回転角度の指定はラジアンであること.
上の例は 5 [deg]回転するもの.
『/180*PI』を計算することでラジアンに変換しています.
定期的に割り込みをかけたい
関数は『llSetTimerEvent』です.使い方例は以下,
llSetTimerEvent(2.0); //2秒毎に割り込み
timer()関数内で割り込み処理を記述.
別のオブジェクトを操作したい
実はこれ,非常に簡単.話しかけるだけなんです.ただ普通にはなしかけるのではなく,特定のチャンネルを指定します.チャンネル0で普通の会話と同じです.
llSay(チャンネル,"内容");
これで送信側はOK.次は受信側の設定です.
state_entry()
{llListen(チャンネル,"","","");}}
llListenの引数は興味があれば自分で調べてみてください.上の例では送信側の特定はしていません.別のオブジェクトからの話でもチャンネルさえ合えば受信できます.受信した際の行動は,
listen(integer channel,string name,key id, string message)
{
if(message == "内容")
{
させたい内容;
}
}
のように記述すればOK.簡単でしょ?
これだけで十分objectを操作できますよね.最近よく思うようになってきたのですが,こんなに自由度が高く何でもできるSLが何故はやらないのだろう・・・不思議で仕方ない.ただ,人がそれ程いないお陰でSL内で自由にスクリプトの練習やら,オブジェクトの作成ができるのですが・・・そのうちお金払って自分の土地を持ちたいなぁと本当に考え始めています.
カレンダー
04 | 2025/05 | 06 |
S | M | T | W | T | F | S |
---|---|---|---|---|---|---|
1 | 2 | 3 | ||||
4 | 5 | 6 | 7 | 8 | 9 | 10 |
11 | 12 | 13 | 14 | 15 | 16 | 17 |
18 | 19 | 20 | 21 | 22 | 23 | 24 |
25 | 26 | 27 | 28 | 29 | 30 | 31 |
ブログ内検索
最新記事
カテゴリー
プロフィール
HN:
Porky Penguin
性別:
男性
職業:
実はニートではない
自己紹介:
落書きやら,趣味について雑記していく予定.他にはソフトの覚書きなど記していくつもりです.
自画像は,以前私に似ていると言われた漫画のキャラクター,わかるかなぁ・・・某少佐です.(9巻,p190を参考にしました)
ついでに眼鏡を私の眼鏡にかけ直してみました.
自画像は,以前私に似ていると言われた漫画のキャラクター,わかるかなぁ・・・某少佐です.(9巻,p190を参考にしました)
ついでに眼鏡を私の眼鏡にかけ直してみました.
カウンター
フリーエリア