ソラマメブログ
プロフィール
ねこねこ
ねこねこ
QRコード
QRCODE
アクセスカウンタ
読者登録
メールアドレスを入力して登録する事で、このブログの新着エントリーをメールでお届けいたします。解除は→こちら
現在の読者数 1人
オーナーへメッセージ

2007年11月20日

パーティクル-その2

  前回に引き続きパーティクルのパラメータについて解説します。初めての方は、是非前回のブログをご参照ください。

パーティクル-その2

  PSYS_PART_BOUNCE_MASK を指定すると、位置座標Zの値が0の位置で跳ね返ります。(発生源を地面に置けば地面でバウンドする感じが出ます。) わたしの感覚としてはちょうどパチンコ玉を床にぶちまけた感じ^^ これも扇型でためしているので2次元に広がっています。

パーティクル-その2

  緑から赤に色を変化させています。色と透明度の変化をさせるためには必ずフラグのPSYS_PART_INTERP_COLOR_MASK を指定する必要があります。

パーティクル-その2

  次は、噴射するものが動くとどのように変化するのかを見るため、2つのボールをリンクさせて、中心となるボールが回転し、もうひとつのボールでパーティクルを発生するように用意しました。方向も見るためにテクスチャもアゲハ蝶に変えました。写真は蝶のサイズを小から大に変化するようにして、コーン型に上方から発生するようセットしています。(なお、球体で発生させる場合、建造で出したままだとY軸が90度回転しています。0にすれば上から出るようになります。)

パーティクル-その2

  で、このまま回転させると、このように機関車のけむりがたなびくように、うしろに残っていきます。

パーティクル-その2

  PSYS_PART_FOLLOW_SRC_MASK を指定するとこのようにたなびかないで回転していきます。

パーティクル-その2

  次は、わたしが最後までわからなかった PSYS_PART_FOLLOW_VELOCITY_MASK について説明します。
  写真は、普通に上から発生させてます。先のものより数を少なくしています。


パーティクル-その2

  で、これが PSYS_PART_FOLLOW_VELOCITY_MASK を指定したものです。噴射する方向に向かって蝶が向きを変えているのがわかるでしょうか。

パーティクル-その2

  これは、さらに PSYS_SRC_OMEGA を指定して発射する方向を回転させて、更に発生源自体を動かしています。vector 型で値を入れます。これはどの値をいじればどうなるかというのは全くわかりませんでした。一応値はラジアンで指定するみたいです。
  こうやって PSYS_PART_FOLLOW_VELOCITY_MASK と 組み合わせると、まきちらす感じが出ると思います。


パーティクル-その2

  次はホーミングを組み合わせます。PSYS_SRC_TARGET_KEY, でオブジェクトのオーナー(自分自身)を指定し、PSYS_PART_TARGET_POS_MASK でターゲットに向かうようにしています。ターゲットキーを指定しないと発生源に向かっていくようです。
  この矢印は、持ち物の中に Library>Textures>Waterfalls>Particle System>Particle Arrow として入っています。下のプログラムで試す場合、パーティクルを仕込むオブジェクトのコンテンツ内にこの矢印のテクスチャを入れてください。最初この矢印はなんだろうとずっと思っていました。パーティクルの性質を確かめるためのものとして入っているのだとやっとわかりました。(違うかもしれませんが。)わたしも最初のうちは、デフォルトの光の粒でいじっていたので VELOCITY の性質が最後までわかりませんでした^^


default{
  state_entry(){
    llParticleSystem([]);
  }
  touch_start(integer detected){
    state start;
  }
}

state start{
  state_entry(){
    llParticleSystem([
      PSYS_SRC_TEXTURE,"Particle Arrow",
      PSYS_SRC_PATTERN,PSYS_SRC_PATTERN_DROP
     ,PSYS_PART_FLAGS,(0
      | PSYS_PART_EMISSIVE_MASK
      | PSYS_PART_FOLLOW_VELOCITY_MASK
      | PSYS_PART_INTERP_SCALE_MASK
      | PSYS_PART_TARGET_POS_MASK
     )
    ,PSYS_PART_START_SCALE,<0.3,0.3,0>
    ,PSYS_PART_END_SCALE,<0.3,0.3,0>
    ,PSYS_PART_MAX_AGE,3.0
    ,PSYS_SRC_ACCEL,<0,0,5.0>
    ,PSYS_SRC_BURST_PART_COUNT,5
    ,PSYS_SRC_BURST_RATE,1.0
    ,PSYS_SRC_TARGET_KEY,llGetOwner()
    ]);
  }

  touch_start(integer detected){
    state default;
  }
}

パーティクル-その2

  蝶々で試しました。ホーミングはスピードを変化させると同時にパーティクルの寿命もいじってやらないと望みどうりの動きをしないようです。上方でだけ確認したのですが、5000メートルぐらいまでパーティクルは届くみたいです。SIM越えは確認していません。


同じカテゴリー(スクリプト)の記事画像
パーティクルの復習^^ ほたるの光^^ 
物理そしてビークル
ライブ見たよ&llSetPos()卒業制作
llRezObject を使ってスカイボックス出現
パーティクル
くるくる回転しま~す
同じカテゴリー(スクリプト)の記事
 パーティクルの復習^^ ほたるの光^^  (2008-08-07 21:15)
 物理そしてビークル (2008-03-07 23:34)
 ライブ見たよ&llSetPos()卒業制作 (2008-02-22 01:05)
 llRezObject を使ってスカイボックス出現 (2008-01-26 15:38)
 パーティクル (2007-11-17 10:44)
 くるくる回転しま~す (2007-11-09 19:15)
Posted by ねこねこ at 19:07│Comments(0)スクリプト
上の画像に書かれている文字を入力して下さい
 
<ご注意>
書き込まれた内容は公開され、ブログの持ち主だけが削除できます。