Home
Creatizm Labo
About me
LB Systemについて
オープンソース / 研究メモ
製品・サービス
arz Nitelyってシステム屋どうよ?
Particle System Maker0.1-Beta [ver.0.10.29]
パーティクルメーカー
LSLコード
// Particle LSL :: Made with Particle System Maker0.1-Beta [ver.0.10.29] :: scripted by arz Nitely // Particle integer particle_sw = TRUE; uuParticle(integer flug){ particle_sw = flug; if (flug){ llParticleSystem([ PSYS_PART_FLAGS, 0 | 0 | 0 | 0 | PSYS_PART_INTERP_COLOR_MASK | PSYS_PART_INTERP_SCALE_MASK | 0 | 0 | 0, PSYS_SRC_PATTERN, PSYS_SRC_PATTERN_EXPLODE, PSYS_PART_START_ALPHA, (float)1.0, PSYS_PART_END_ALPHA, (float)0.2, PSYS_PART_START_COLOR, uuHEX2Vector("#FFFFFF"), PSYS_PART_END_COLOR, uuHEX2Vector("#000000"), PSYS_PART_START_SCALE, <0.1, 0.1, 0.0>, PSYS_PART_END_SCALE, <0.5, 0.5, 0.0>, PSYS_SRC_MAX_AGE, 0.0, PSYS_PART_MAX_AGE, (float)5.0, PSYS_SRC_ACCEL, <0.0, 0.0, -9.8>, PSYS_SRC_ANGLE_BEGIN, (float)0*DEG_TO_RAD, PSYS_SRC_ANGLE_END, (float)0*DEG_TO_RAD, PSYS_SRC_BURST_PART_COUNT, (integer)10, PSYS_SRC_BURST_RADIUS, (float)0.0, PSYS_SRC_BURST_RATE, (float)0.0, PSYS_SRC_BURST_SPEED_MIN, (float)0.5, PSYS_SRC_BURST_SPEED_MAX, (float)1.0, PSYS_SRC_OMEGA, <0.0, 0.0, 0.0>, PSYS_SRC_TEXTURE, "part_sound" ]); }else{ llParticleSystem([]); } } // Color Conversion :: HEX2Vector :: 2008-09-23 vector uuHEX2Vector(string HEX){ vector color; color.x = (float)("0x" + llGetSubString(HEX, 1, 2)) / 255; color.y = (float)("0x" + llGetSubString(HEX, 3, 4)) / 255; color.z = (float)("0x" + llGetSubString(HEX, 5, 6)) / 255; return color; } // Interface integer handle; integer d_ch = -123; uuListen(key id){ if (id != NULL_KEY){ handle = llListen(d_ch, "", id, ""); llSetTimerEvent(60.0); }else{ llSetTimerEvent(0.0); llListenRemove(handle); } } uuDialog(key id){ uuListen(id); list button = ["ON", "OFF"]; llDialog(id, "Particle System", [llList2String(button, particle_sw)], d_ch); } // Flow default{ state_entry(){ uuParticle(TRUE); } touch_start(integer total_number){ uuDialog(llDetectedKey(0)); } listen(integer channel, string name, key id, string message){ uuListen(NULL_KEY); if (message == "ON"){ uuParticle(TRUE); }else if (message == "OFF"){ uuParticle(FALSE); } } timer(){ uuListen(NULL_KEY); } }
※ 下のパラメータをLSLに変換したものです。このコードをコピペしてください
※ はじめての方は、コピペする前にパラメータを入力する必要があります
※ スクリプトはタッチでON / OFFのダイアログが出るようになってます。あとは改造してお使いください
パラメーターの入力
噴射パターン
EXPLODE(球状に拡散)
ANGLE(扇形に拡散)
ANGLE_CONE(円錐形に拡散)
ANGLE_CONE_EMPTY(???)
DROP(その場に据置)
オブジェクトの移動に伴い噴射後のパーティクルを相対的に移動させる
バウンドを有効にする
噴射位置
オブジェクトの中心から半径
mの位置に噴射
※ 「オブジェクトの移動に伴い噴射後のパーティクルを相対的に移動させる」にチェックを入れた場合、これは無効になります
開始角と終了角
「0度」の方向はオブジェクトのZ軸の正の向きになります。例えば「開始角-10度、終了角10度」とすると、Z軸の正の向きを中心にした20度のエリアにパーティクルを噴射します。
開始角:
度
終了角:
度
※ ANGLE / ANGLE_CONE / ANGLE_CONE_EMPTYを選択した場合にのみ有効
噴射方向の回転
<
,
,
>
※ ANGLE / ANGLE_CONE / ANGLE_CONE_EMPTYを選択した場合にのみ有効
ターゲット
ターゲットを設定しない
ターゲットに向けてまっすぐ進むように噴射する
ターゲットに向けてゆるやかに方向を変えて進むように噴射する
ターゲットUUID:
噴射数と寿命
秒ごとに
個ずつ噴射し
秒後に消滅する
※ 秒を0に設定すると、ローカル環境が許す限り連続して噴射します
※ 寿命は最大30秒です
初速度と加速度
初速度には「ばらつき」を設定することができます。「ばらつき」をなくしたい場合はどちらも同じ値に設定します。
初速度:
~
m/s
※ この値はオブジェクトの向きに相対的に作用します
風の影響を受ける
加速度:<
,
,
> m/(s^2)
※ 加速度はSIM座標軸が基準のためオブジェクトの回転に影響されません
粒子
サイズの変化を有効にする
開始サイズ: <
,
, 0.0> m
終了サイズ: <
,
, 0.0> m
※ 最大4.0mまで有効
テクスチャー:
※ テクスチャーは名前もしくはUUIDどちらでもOKです
※ テクスチャーを使わない場合は「part_sound」のままにしておいてください
カラーを有効にする
開始カラー:
終了カラー:
※ カラーコードは
このあたり
を参考にしてください
※ #FFFといった省略形式は利用できません。必ず#の後は6桁の16進数で入力してください
※ 大文字 / 小文字の区別はありません
開始アルファ:
終了アルファ:
※ 0.0〜1.0(0.0が完全透明)
明るさ最大
Total :
i2i無料WEBパーツ
/ Today :
i2i無料WEBパーツ
/ Yesterday :
i2i無料WEBパーツ
/ Since 2008-09-03 18:33