ホーム > タグ > パーティクル

パーティクル

Canvas パーティクル + shadowBlur

CanvasにはShadows、いわゆるドロップシャドウを付けるプロパティがある。

指定できるのは
・shadowColor (色)
・shadowOffsetX (横位置)
・shadowOffsetY (縦位置)
・shadowBlur (ぼかしのサイズ)
の4つ。

canvas13
html(別ウインドウ)

canvas13_2
html(別ウインドウ)

キャンパスに対して一律の指定しかできないので、
同一キャンパス内これは影付きでこっちは影無しとかはできない。
さらに処理負荷もかかる。

参考
http://www.html5.jp/canvas/ref/property/shadowBlur.html
http://www.w3.org/TR/2009/WD-html5-20090825/the-canvas-element.html#shadows

Canvas 軌跡にパーティクル

wonderfl fork第2弾。

canvas11
html(別ウインドウ)

マウスに追随するオブジェクトとパーティクルオブジェクトの
クラスはばっさりと簡略化した。

毎描画毎に表示オブジェクトを格納した配列を更新している。
この辺はaddChild/removeChildライクに出来るようなライブラリ作ったら
ActionScripterは幸せになれるかな。
visibleとかscaleとかをASライクに使える疑似Spriteクラスとか。

ちなみに今日は破の発売日らしいのでこんなのも作った。

canvas11_2
html(別ウインドウ)

CSS3ではhslで直接色を指定できる!ので
上記の実装は超簡単。

h+=10;
var col='hsla('+h+',100%, 50%,1)';
context.strokeStyle  =col ;
if(h == 360){
	h = 0;
}

こんな感じ。

あー破が見てぇ。けどオレは劇場版BOXセット var.3Dが出るまで我慢するんだw

参考
http://wonderfl.net/c/ybeh

CanvasでLiquid10000

さて、Canvasでどこまでの事が出来るのか。
ます手始めにLiquid10000をforkして
Canvasの描画性能を見てみようかと思う。

canvas10
html(別ウインドウ)

10000はさすがにムリがあるが1000程度ならまぁ何とか。
オリジナル版との違いは大きく以下の通り。

PerlinNoiseの描画

ビットマップからRとGの値を抽出しxy軸の加速度に変換

  • オリジナル版
    getPixelでRとGの値を抽出しxy軸の加速度に変換する。
  • Canvas版
    外部ファイルの色情報をgetImageDataで配列化。

残像処理

  • オリジナル版
    ColorTransformで着色しながら暗くする。
  • Canvas版
    全領域に半透明(alpha0.1)の黒を重ね塗りする。

やってみてわかったがCanvasのアニメーションはwonderflのパーティクル系と
非常に相性が良い。
というより、他に向いていないというべきか。

参考
http://wonderfl.net/c/4yyT

Home > Tags > パーティクル

Search
Feeds

Return to page top