タグ

ブックマーク / kkanda.hatenadiary.org (6)

  • メタボールにチャレンジしてみたよ - プログラミングとかそんなの

    Tweenerを使って動きを作っていくとシャキーンという感じの動きを簡単に作れるのですが、 慣れてくると少し有機的な動きを取り入れてみたいという衝動に駆られます。 ということで、今回は「メタボール」に挑戦してみました。 メタボールって言葉自体はあまり馴染みがないかもしれませんが、ボールが滑らかにくっついたり離れたりするデモを見た事ある人は結構いるのではないかと思います。 あのレンダリング手法をメタボールと言います。 今回チャレンジしたのは2Dメタボールです。3Dは実装が大変そうなのでやめました。 参考にしたのは、mysketch.blog 炎の作成(1):メタボールの作成という記事です。 というか実装の方針は、ほとんどそのままです。 作成したサンプルではマウスを追跡するボールを時間差で動かしています。ボール自体は中心から外側に向かってアルファ値を滑らかに変化させており、このボールをメタボー

  • BitmapDataを使ったParticle Systemの実装 - プログラミングとかそんなの

    前からずっと気になっていたParticle Systemの実装方式について調べました。 調査を進めてみると、SpriteをわずBitmapDataを使って描画をするという選択肢もあるということが分かり新鮮でした。 ということで、今回はBitmapDataを使ったParticleSystemの実装を解説します。 そもそもParticle Systemは、粒子(particle)の動きをシミュレーションし粒子の状態に基づいて画面描画するという動作を繰り返します。 この「動きのシミュレーション」と「画面描画」を分けるのが非常に重要で、調査前の私の理解ではこの境界が曖昧でした。 Spriteを使って描画するParticle Systemの実装は、たまに見かけるのであえて私はあえてBitmapDataに直接書き込む方式で実装してみました。 実装するにあたって、aM laboratoryのpartic

    sugawaramasaya
    sugawaramasaya 2008/04/23
    パーティクル
  • DisplacementMapFilterを使って波紋を表現する - プログラミングとかそんなの

    DisplacementMapFilterを使って波紋を表現する 今回も前回に引き続きDisplacementMapFilterを使ったエフェクトに挑戦してみました。今回は、Macのウィジェットを追加した時のエフェクトみたいな波紋を作ってみたいと思います。 少し分かりづらいのですが、上の画像はMacのウィジェットマネージャを起動してウィジェットを追加したときに背景が波紋で揺れるエフェクトが出た瞬間をキャプチャしたものです。 このような波紋を作るには、下記のような周期的かつ滑らかに変化する置き換えマップが必要になります。 しかし、PerlineNoiseでこのような画像を生成する方法を思いつかなかったので別なアプローチを試すことにしました。 波紋用の置き換えマップ生成法(その1) まずはじめに試したのは、単純にdrawCircle()関数で円を描きそれをBlurFilterでぼかすという方法

    DisplacementMapFilterを使って波紋を表現する - プログラミングとかそんなの
  • TextFieldの行間をマイナスに設定した場合の注意 - プログラミングとかそんなの

    TextFieldの行間は、TextFormatオブジェクトのleadingプロパティで指定出来ます。フォントサイズを大きくした場合、文章の見栄えを整えるために行間をマイナスに指定することがたまにあります(フォントサイズを大きくすると境界枠とグリフの間の余白が目立つので)。 その際、TextFieldのautoSizeプロパティが"none"以外に設定されている場合は注意が必要です。 TextFieldの行間をマイナスに指定し、autoSizeプロパティをデフォルトの"none"以外に設定するとテキストの下端が切れてしまいます。 以下、確認用のコードです。 package { import flash.display.Sprite; import flash.text.TextField; import flash.text.TextFormat; import flash.text.Te

    TextFieldの行間をマイナスに設定した場合の注意 - プログラミングとかそんなの
  • AS3のXML名前空間で嵌まる - プログラミングとかそんなの

    ActionScrip2.0以降ではXMLをリテラル型として扱えるので、DOMの操作がそれなりに簡単に記述できる。 var myXML:XML = fugo fugofugo ; trace(myXML.book[0].title); // hoge trace(myXML.book.(@id==2).author); //fugofugo これを踏まえて、RSSフィードからデータを取得を試みたところ、名前空間の扱いで嵌まった。 例として、ITメディアのRSSフィード(RSS1.0)からデータを取得する場合を見てみる。 var feed:XML = http://www.itmedia.co.jp/news/fortop/ ITmedia Top Story の最新記事一覧です。 ja 2007-10-04T09:25:00+09:00 http://rss.rssad.jp/rss/ar

  • DisplacementMapFilterの動作を理解する - プログラミングとかそんなの

    DisplacementMapFilterの動作は理解しづらいので、パラメーターとエフェクトの関連を確認するためのツールを作ってみました。 DisplacementMapFilterとは何か? DisplacementMapFilter クラスは、指定された BitmapData オブジェクト (置き換えマップイメージと言います) のピクセル値を使用して、オブジェクトの置き換え (変位) を実行します。このフィルタを使用して、MovieClip、SimpleButton、TextField、Video オブジェクトなどの DisplayObject クラスから継承したオブジェクト、および BitmapData オブジェクトにワープ効果や斑点効果を適用できます。 ActionScript 3.0 コンポーネントリファレンスガイドの DisplacementMapFilterクラスの説明から抜

    DisplacementMapFilterの動作を理解する - プログラミングとかそんなの
  • 1