2008年07月12日
HI-PRIM BIKE 製作17/カメラの調整
今日は、走行中のカメラの調整です〜
とりあえず、バイクをクリックすると5種類のカメラアングルが変えられるのですが
気になる所だけ修正しようと思いましたが。。。。
忘れない為にも書いときます(^^ゞ
最初は調整に戸惑ったんですが。。。それは
考えたら当たり前なんですが、2つの項目の設定が必要な事
llSetCameraEyeOffset(vector offset);
llSetCameraAtOffset(vector offset);
この2つの違いが分からなかったけど。。。。
理解すれば簡単です(^O^)/
llSetCameraEyeOffset(vector offset);
アバターがオブジェクトに座ったときのカメラの位置を設定
llSetCameraAtOffset(vector offset);
アバターがオブジェクトに座ったときのカメラの向きを設定
で3枚の写真ですが1枚目は、カメラの位置を高くして、後方に位置して
向きは、割と真正面にしてます

この状態だと、バイクがどこにあるか見えないので、試しに、
llSetCameraAtOffset(vector offset);
この数値を変えて、向きをしたを見る様にしてみます

これは,下向きすぎで、前のコースが見えませんね(^^ゞ
で、llSetCameraEyeOffset(vector offset);
ここで、カメラの位置をもう少し高さを低くして。。。。もうちょっと、本人に近くし
llSetCameraAtOffset(vector offset);
ここで、若干だけしたを向く様にしてみると

これくらいだと、コースも見えて、自分の乗り物も見えていいですね(^O^)/
こんな感じで、マウスルックくらいの目線の高さにしたりと,凄く上空からみてる
様な感じと。。。。
5種類を切り替えできる様になってます〜
とりあえず、バイクをクリックすると5種類のカメラアングルが変えられるのですが
気になる所だけ修正しようと思いましたが。。。。
忘れない為にも書いときます(^^ゞ
最初は調整に戸惑ったんですが。。。それは
考えたら当たり前なんですが、2つの項目の設定が必要な事
llSetCameraEyeOffset(vector offset);
llSetCameraAtOffset(vector offset);
この2つの違いが分からなかったけど。。。。
理解すれば簡単です(^O^)/
llSetCameraEyeOffset(vector offset);
アバターがオブジェクトに座ったときのカメラの位置を設定
llSetCameraAtOffset(vector offset);
アバターがオブジェクトに座ったときのカメラの向きを設定
で3枚の写真ですが1枚目は、カメラの位置を高くして、後方に位置して
向きは、割と真正面にしてます

この状態だと、バイクがどこにあるか見えないので、試しに、
llSetCameraAtOffset(vector offset);
この数値を変えて、向きをしたを見る様にしてみます

これは,下向きすぎで、前のコースが見えませんね(^^ゞ
で、llSetCameraEyeOffset(vector offset);
ここで、カメラの位置をもう少し高さを低くして。。。。もうちょっと、本人に近くし
llSetCameraAtOffset(vector offset);
ここで、若干だけしたを向く様にしてみると

これくらいだと、コースも見えて、自分の乗り物も見えていいですね(^O^)/
こんな感じで、マウスルックくらいの目線の高さにしたりと,凄く上空からみてる
様な感じと。。。。
5種類を切り替えできる様になってます〜
2008年01月22日
ドアのスクリプト
今回は、車のドアのスクリプトのお話です〜
先日のKAZEの大会で作ってた車のドアのスクリプトにエラーが見つかり
大体、ドアのスクリプトは、下の様に
llGetRot();
で書くのですが、これは、ドアに入れたスクリプトがどの角度であっても
その角度から動くという感じなんですが、車や、例えば、ドアのフレ−ムみたいな物を作って
リンクした場合、ルートプリムの角度で決まっちゃうそうで。。。。。
rot = llGetRot();
delta = llEuler2Rot(<0, 0, -DIRECTION * PI_BY_TWO>);
rot = delta * rot;
llSetRot(rot);
僕も車を作ってて、ルートプリムも(0,0,0)の状態でテストをしていたためきずきませんでしたが
例えば、車をちょっとでも動かして、車の角度が変わった状態で、ドアを開閉すると、下の写真の
ように変な角度で開いたり閉まったりしちゃいます(^^ゞ
そこで、車や、ドアのフレームをルートプリムにした時に、どの角度で設置しても
コプリムの角度で動いてくれる様にするには
GetLocalRot()
です。
こうすると、車がどの角度になっても、ドアのプリムに対して開閉してくれます(^O^)/
先日のKAZEの大会で作ってた車のドアのスクリプトにエラーが見つかり
大体、ドアのスクリプトは、下の様に
llGetRot();
で書くのですが、これは、ドアに入れたスクリプトがどの角度であっても
その角度から動くという感じなんですが、車や、例えば、ドアのフレ−ムみたいな物を作って
リンクした場合、ルートプリムの角度で決まっちゃうそうで。。。。。
rot = llGetRot();
delta = llEuler2Rot(<0, 0, -DIRECTION * PI_BY_TWO>);
rot = delta * rot;
llSetRot(rot);
僕も車を作ってて、ルートプリムも(0,0,0)の状態でテストをしていたためきずきませんでしたが
例えば、車をちょっとでも動かして、車の角度が変わった状態で、ドアを開閉すると、下の写真の
ように変な角度で開いたり閉まったりしちゃいます(^^ゞ
そこで、車や、ドアのフレームをルートプリムにした時に、どの角度で設置しても
コプリムの角度で動いてくれる様にするには
GetLocalRot()
です。
こうすると、車がどの角度になっても、ドアのプリムに対して開閉してくれます(^O^)/

2007年11月17日
雪のパーティクルをつくろう〜(^O^)/
今回は,折角クリスマスツリーを設置したのでちょこっとだけ、雪を降らせておこうと
スクリプトで作りました(^O^)/
四角の箱にスクリプトを埋め込んで、テクスチャを透明テクスチャにするだけです
超簡単です
スクリプトは
default {
state_entry(){
llParticleSystem( [
PSYS_SRC_TEXTURE,llGetInventoryName(INVENTORY_TEXTURE, 0),
PSYS_PART_START_SCALE, <0.3,0.3, 0>, ←スタートの大きさです
PSYS_PART_END_SCALE, <0.3,0.3, 0>,
PSYS_PART_START_COLOR, <1,1,1>, ←パーティクルの色を指定します
PSYS_PART_END_COLOR, <1,1,1>,
PSYS_PART_START_ALPHA, 0.7, ←パーティクルの透明度の設定
PSYS_PART_END_ALPHA, 0.3,
PSYS_SRC_BURST_PART_COUNT, 2, ←1度にいくつのパーティクルを噴射するか
PSYS_SRC_BURST_RATE, 0.1, ←パーティクルを出す間隔
PSYS_PART_MAX_AGE, 5.0, ←パーティクルの有効時間
PSYS_SRC_MAX_AGE, 0.0,
PSYS_SRC_PATTERN, 8,
PSYS_SRC_ACCEL, <0.0,0.0, -0.2>,
PSYS_SRC_BURST_RADIUS, 3, ←パーティクルを飛ばす半径
PSYS_SRC_BURST_SPEED_MIN, 0.0, ←噴射されるときのスピード
PSYS_SRC_BURST_SPEED_MAX, 0.1,
PSYS_SRC_ANGLE_BEGIN, 0*DEG_TO_RAD,
PSYS_SRC_ANGLE_END, 45*DEG_TO_RAD,
PSYS_SRC_OMEGA, <0,0,0>,
PSYS_PART_FLAGS, ( 0
| PSYS_PART_INTERP_COLOR_MASK
| PSYS_PART_INTERP_SCALE_MASK
| PSYS_PART_EMISSIVE_MASK
| PSYS_PART_WIND_MASK
) ] );
}
}
数値を買える事で、雪の大きさや、色なんかを細かく買える事が出来ます
でも、お店に設置なので、控えめにしていますー(^^ゞ
makapuさんのとこにも、パーティクルのパラメーターの説明が細かく書いています〜
間違ってたらすいません(^^ゞ
スクリプトで作りました(^O^)/
四角の箱にスクリプトを埋め込んで、テクスチャを透明テクスチャにするだけです
超簡単です
スクリプトは
default {
state_entry(){
llParticleSystem( [
PSYS_SRC_TEXTURE,llGetInventoryName(INVENTORY_TEXTURE, 0),
PSYS_PART_START_SCALE, <0.3,0.3, 0>, ←スタートの大きさです
PSYS_PART_END_SCALE, <0.3,0.3, 0>,
PSYS_PART_START_COLOR, <1,1,1>, ←パーティクルの色を指定します
PSYS_PART_END_COLOR, <1,1,1>,
PSYS_PART_START_ALPHA, 0.7, ←パーティクルの透明度の設定
PSYS_PART_END_ALPHA, 0.3,
PSYS_SRC_BURST_PART_COUNT, 2, ←1度にいくつのパーティクルを噴射するか
PSYS_SRC_BURST_RATE, 0.1, ←パーティクルを出す間隔
PSYS_PART_MAX_AGE, 5.0, ←パーティクルの有効時間
PSYS_SRC_MAX_AGE, 0.0,
PSYS_SRC_PATTERN, 8,
PSYS_SRC_ACCEL, <0.0,0.0, -0.2>,
PSYS_SRC_BURST_RADIUS, 3, ←パーティクルを飛ばす半径
PSYS_SRC_BURST_SPEED_MIN, 0.0, ←噴射されるときのスピード
PSYS_SRC_BURST_SPEED_MAX, 0.1,
PSYS_SRC_ANGLE_BEGIN, 0*DEG_TO_RAD,
PSYS_SRC_ANGLE_END, 45*DEG_TO_RAD,
PSYS_SRC_OMEGA, <0,0,0>,
PSYS_PART_FLAGS, ( 0
| PSYS_PART_INTERP_COLOR_MASK
| PSYS_PART_INTERP_SCALE_MASK
| PSYS_PART_EMISSIVE_MASK
| PSYS_PART_WIND_MASK
) ] );
}
}
数値を買える事で、雪の大きさや、色なんかを細かく買える事が出来ます
でも、お店に設置なので、控えめにしていますー(^^ゞ
makapuさんのとこにも、パーティクルのパラメーターの説明が細かく書いています〜
間違ってたらすいません(^^ゞ

2007年08月11日
シンボルになっちゃった〜&(Scripts)HPへのリンク
今日は、前々から、ちょこっと話してた、僕の2号店ですが
NEOJAPAN TOKYO Rabbit house in JAPAN
というのですが、ちょうどというか。。。。
NEOJAPAN TOKYOは、アキラから取ったらしく^^
ウサギとNEOJAPANをつなげるべく、SIMの真ん中に
で〜んとオブジェができました(^O^)/
でかいです

ウサギクリックすると、HPに行けますので、土地のレンタル(有料、無料)があり
クリエイターの方々には、若干の条件がありますが、無料のスペースが借りられます
で、昨日、作ったDEMOをNEOJAPANでも、おいて宣伝&あそんでもらう事に
さっそく、数名集まってきて、遊んでいただきましたー(^O^)/
で、スクリプトの事も、徐々にですが、書いていこうかなと思い
その都度、使うたびに1こずつでも。。。
初歩的なスクリプトを紹介してるHPも沢山ありますが。
僕も勉強中なので、忘れない為にも(^^ゞ
今回は、オブジェクトをクリックすると、HPへ行くやつです
default {
touch_start(integer total_number){
llLoadURL(llDetectedKey(0), "Goto Rabbit house in JAPAN HP", "http://secondlife.yu-yake.com/");
}
}
touch startなので、オブジェクトにタッチすると、ダイアログが出て、HPへのリンクを
します。
赤い文字が、そのダイアログに出したい文章です
青い文字が、行きたいURLです
スクリプトは、必ず、こうすれば、ああなるって感じで組み立てていきますので
今回のは、touch するとRoad URL(そのURLに行く)って感じです。
こうやって書いていくと簡単かな??(^^ゞ
続きを読む
NEOJAPAN TOKYO Rabbit house in JAPAN
というのですが、ちょうどというか。。。。
NEOJAPAN TOKYOは、アキラから取ったらしく^^
ウサギとNEOJAPANをつなげるべく、SIMの真ん中に
で〜んとオブジェができました(^O^)/
でかいです

ウサギクリックすると、HPに行けますので、土地のレンタル(有料、無料)があり
クリエイターの方々には、若干の条件がありますが、無料のスペースが借りられます
で、昨日、作ったDEMOをNEOJAPANでも、おいて宣伝&あそんでもらう事に
さっそく、数名集まってきて、遊んでいただきましたー(^O^)/
で、スクリプトの事も、徐々にですが、書いていこうかなと思い
その都度、使うたびに1こずつでも。。。
初歩的なスクリプトを紹介してるHPも沢山ありますが。
僕も勉強中なので、忘れない為にも(^^ゞ
今回は、オブジェクトをクリックすると、HPへ行くやつです
default {
touch_start(integer total_number){
llLoadURL(llDetectedKey(0), "Goto Rabbit house in JAPAN HP", "http://secondlife.yu-yake.com/");
}
}
touch startなので、オブジェクトにタッチすると、ダイアログが出て、HPへのリンクを
します。
赤い文字が、そのダイアログに出したい文章です
青い文字が、行きたいURLです
スクリプトは、必ず、こうすれば、ああなるって感じで組み立てていきますので
今回のは、touch するとRoad URL(そのURLに行く)って感じです。
こうやって書いていくと簡単かな??(^^ゞ
続きを読む
タグ :Tips