ASOK?
ActionScriptでFlashつくるよ
上記の広告は1ヶ月以上更新のないブログに表示されています。
新しい記事を書く事で広告が消せます。
page top
スポンサーサイト
page top
アルファつきビットマップの、アルファチャンネルのみスクロールさせたい場合。

1. copyChannel()を使用
copyPixels()で、バックバッファから表示バッファにRGBをコピー(本来不要だがcopyChannel()のバグか?)
2回のcopyChannel()で、バックバッファから表示バッファにαをコピー

2. copyChannel()×2+アルファソース指定copyPixels()
2回のcopyChannel()で、バックバッファからアルファ専用バッファでαを形成
アルファBitmapDataを指定したcopyPixels()で表示バッファにコピー

3. アルファソース指定copyPixels()
アルファBitmapDataを2倍の大きさにしておいて、copyPixels()のalphaBitmapDataとalphaPointを指定することで、一発コピー

ベンチとってみたら、
1.― 20.7
2.― 21.7
3.― 4.8
3が圧倒的。
3.の結果を3倍しても1および2に届かないので、copyChannel()はcopyPixel()より遅いということになる。
意外。
page top
Flashを閃光のごとく高速化するための基礎知識(1/2) - @IT

このページで紹介されてたStatsが素晴らしい。

コンパクト&シンプルかつ十分な表示内容。
使うときもたった1行だけ。addChild( new Stats() );

自分で作るものもかくありたい。
これ使ってメモリ食いに対処できた。
page top
検索しても情報がないので、自分が間違っているのかもしれないが。

BitmapData.copyChannel()で、bmp1のアルファからbmp2のアルファにコピーする場合。
出力ポイントを(0,0)以外にすると、アルファ以外のチャンネルも変更されてしまう。具体的には、なぜか黒になる。

srcRect指定が正確でなく、出力先がはみ出した場合に起きるのかと思ったが、指定ミスがなくても発生する。
解決できず、毎回copyPixels()してからcopyChannel()するという無駄で回避。
page top
[Tools]-[Program Settings] 左リストから[ASCompletion]-[Flash IDE]-[Path To Flash IDE]
page top
Copyright © 2005 ASOK?. all rights reserved.

上記広告は1ヶ月以上更新のないブログに表示されています。新しい記事を書くことで広告を消せます。