2009年06月23日
私んち
新しい土地に移住して、「反射する床」実験で200プリムの建物を作り、テスクでナスカの地上絵を描き。。。「あれれ、プリム数ヤバいよ」な罠に陥り。。。。
とりあえず200プリムの意味不明な建物の代わりに、以前作ったプレハブを設置してみました。

シンメトリーな絵でプレハブっぽさを表現。。。「安全第一」って無かったら、誰もプレハブって気付かないことは内緒です。
全体図はこんな感じ。

ナスカの地上絵の片隅にひっそりと建ててみました。(SIMのほぼ中心で、エラそうな位置って話もありますが)

出入り口にはシャッターのテスクを使用。
シャッターって上にガラガラって開くはずですが、「開けた人の頭にシャッターがぶつかったら楽しいな♪」と、下部を起点に開くようにしました。。。でもでも、当たっても、透けるようにダメージがなかったので残念です。
ドアのスクリはアチコチで紹介されてるので今さらですが、スクリ素人な私なりにご紹介。
rotation rot;
default
{
state_entry()
{
rot = llGetRot();
state close;
}
}
state open {
state_entry()
{
llSetRot(rot * llEuler2Rot(<95.0, 0.0, 0.0> * DEG_TO_RAD));
llSetTimerEvent(10.0);
}
タッチするとドアが開き、もう一回タッチすると閉まる式です。
llSetRot(rot * llEuler2Rot(<95.0, 0.0, 0.0> * DEG_TO_RAD));
ここの<>カッコで囲まれたところが、ドアの開閉する角度です。
X,Y,Z軸で回転するわけで、私のシャッターの場合、X軸に95度、回転させています。 なぜ、90度じゃないのか。。。プラス5度で、水平より回転させて地面と床の段差を無くすバリアフリー作戦なのですよ。
普通ならZ軸に開くとよくあるドアができます。
llSetTimerEvent(10.0);
タイマーイベントを入れることで、ドアを開いて10秒すると勝手に閉まってくれるので、閉め忘れても安心♪
他のこまごましたのは、よく理解しておりませんので、端折らせていただきます。
。。。で、ドアスクリの罠が一つ。
プリムでドアを作ってノブなんか付けたりして、テスクもキレイなの貼って「さぁスクリ入れて開くよぉ」。。。あれ、あれれ? ドアの真ん中を軸に回転しちゃったよ!
私、何度ドアを作っても、この罠に引っ掛かります。。。このスクリって「プリムの中心で」X,Y,Zのどれかの方向に開くんですね。
ということは、ドアの端っこに「プリムの中心点」を持って来なきゃイケナイわけで。。。ほら、面倒くさい。
簡単なのは、ドアの開閉する軸にもう一つプリム(透明にしとけば気付かれない)をくっつけて、それを親プリムにしてスクリを入れる方法。
そうすると親プリムの中心で回転するので、子プリムであるドアがちゃんと開くという作戦です。(親プリムの中心をドアプリムの端っこに合わせるのがミソ)
「そんなのでプリム数増やしたくなーい!」っていう私。。。ボックスのパスカットを使うことで1プリム増やさずにプリムの中心を端っこに持って行きました。(他でさんざん紹介されてるから偉そうに言えませんが。。。)
ボックス(0.500,0.500,0.500サイズでやってみた)を作ったら、
パスカット B=0.125 E=0.625 (実際のサイズは0.250,0.500,0.500に変わってます)

これで「プリムの中心の3軸を表す緑・赤・青の矢印」がプリムの端っこに移動しました。
つまり、ドアスクリを入れた時、その面を軸に回るようになるのですよ。 あとはその回転軸を頭に入れて、サイズ変更やデザインをしていけば、ほら出来た♪
。。。ぁ、私んちのプレハブ紹介するはずが、シャッターひとつでこんなに書くとは予想外。
プレハブ自慢は「次回につづく」ってことで。。。一応、このプレハブは私の作ったモノの中ではクオリティ高い方なのですよ。(こんなんでも)
ついでにSSもう一枚。。。前回の「アジの開きテスク」、再活用です。 ラヂオは置くところに迷ったのでぶら下げてみました。

ふと気づいた。。。
こうやって「つづきモノ」の記事にすると、書くネタない時にいいのね。
とりあえず200プリムの意味不明な建物の代わりに、以前作ったプレハブを設置してみました。

シンメトリーな絵でプレハブっぽさを表現。。。「安全第一」って無かったら、誰もプレハブって気付かないことは内緒です。
全体図はこんな感じ。

ナスカの地上絵の片隅にひっそりと建ててみました。(SIMのほぼ中心で、エラそうな位置って話もありますが)

出入り口にはシャッターのテスクを使用。
シャッターって上にガラガラって開くはずですが、「開けた人の頭にシャッターがぶつかったら楽しいな♪」と、下部を起点に開くようにしました。。。でもでも、当たっても、透けるようにダメージがなかったので残念です。
ドアのスクリはアチコチで紹介されてるので今さらですが、スクリ素人な私なりにご紹介。
rotation rot;
default
{
state_entry()
{
rot = llGetRot();
state close;
}
}
state open {
state_entry()
{
llSetRot(rot * llEuler2Rot(<95.0, 0.0, 0.0> * DEG_TO_RAD));
llSetTimerEvent(10.0);
}
タッチするとドアが開き、もう一回タッチすると閉まる式です。
llSetRot(rot * llEuler2Rot(<95.0, 0.0, 0.0> * DEG_TO_RAD));
ここの<>カッコで囲まれたところが、ドアの開閉する角度です。
X,Y,Z軸で回転するわけで、私のシャッターの場合、X軸に95度、回転させています。 なぜ、90度じゃないのか。。。プラス5度で、水平より回転させて地面と床の段差を無くすバリアフリー作戦なのですよ。
普通ならZ軸に開くとよくあるドアができます。
llSetTimerEvent(10.0);
タイマーイベントを入れることで、ドアを開いて10秒すると勝手に閉まってくれるので、閉め忘れても安心♪
他のこまごましたのは、よく理解しておりませんので、端折らせていただきます。
。。。で、ドアスクリの罠が一つ。
プリムでドアを作ってノブなんか付けたりして、テスクもキレイなの貼って「さぁスクリ入れて開くよぉ」。。。あれ、あれれ? ドアの真ん中を軸に回転しちゃったよ!
私、何度ドアを作っても、この罠に引っ掛かります。。。このスクリって「プリムの中心で」X,Y,Zのどれかの方向に開くんですね。
ということは、ドアの端っこに「プリムの中心点」を持って来なきゃイケナイわけで。。。ほら、面倒くさい。
簡単なのは、ドアの開閉する軸にもう一つプリム(透明にしとけば気付かれない)をくっつけて、それを親プリムにしてスクリを入れる方法。
そうすると親プリムの中心で回転するので、子プリムであるドアがちゃんと開くという作戦です。(親プリムの中心をドアプリムの端っこに合わせるのがミソ)
「そんなのでプリム数増やしたくなーい!」っていう私。。。ボックスのパスカットを使うことで1プリム増やさずにプリムの中心を端っこに持って行きました。(他でさんざん紹介されてるから偉そうに言えませんが。。。)
ボックス(0.500,0.500,0.500サイズでやってみた)を作ったら、
パスカット B=0.125 E=0.625 (実際のサイズは0.250,0.500,0.500に変わってます)

これで「プリムの中心の3軸を表す緑・赤・青の矢印」がプリムの端っこに移動しました。
つまり、ドアスクリを入れた時、その面を軸に回るようになるのですよ。 あとはその回転軸を頭に入れて、サイズ変更やデザインをしていけば、ほら出来た♪
。。。ぁ、私んちのプレハブ紹介するはずが、シャッターひとつでこんなに書くとは予想外。
プレハブ自慢は「次回につづく」ってことで。。。一応、このプレハブは私の作ったモノの中ではクオリティ高い方なのですよ。(こんなんでも)
ついでにSSもう一枚。。。前回の「アジの開きテスク」、再活用です。 ラヂオは置くところに迷ったのでぶら下げてみました。

ふと気づいた。。。
こうやって「つづきモノ」の記事にすると、書くネタない時にいいのね。
Posted by おまる at 06:02
│モノ作り