easy!CALayerって影を付けるとやたらと遅くなるのでビットマップ化するようにしたところ速度が劇的に改善(というか影で劇的に遅くなるのを回避しただけだけど)したのでサンプルコードをご紹介。CFRelease(image);}@endビットマップ化の処理自体はお決まりというかどこかで見たことのある処理かと思います。それにretina対応のコードと影のオフセットが上下逆になってしまう問題への対処のコードを追加して、カテゴリでCALayerを拡張するようにしてます。このソースをファイルに保存して#importするだけで、(これもまたネーミングセンスがないですが)bitmapnizeというメソッドがCALayerに自動的に追加されます。処理の内容としては、CALayerの内容をいい感じにビットマップ化したのち、(ここ重要)サブレイヤーを全て削除してビットマップの内容に置き換えます。本当は、CALayerを継承して随時サブレイヤーにもアクセス可能で何回もbitmap化可能なクラスがより使い勝手がいいんでしょうけど、今回そこまでは必要なかったので手っ取り早くカテゴリで、かつ破壊的なやり方を実装してます。このソースをそういう使い勝手の良いクラスに昇華させるのは簡単なんじゃないかなと思います。ビットマップ化の処理自体は重いはずなので、初期化処理で一度だけとか、内容を変える必要があるときだけとかに使うべきです。影はレイヤーのboundsの外に描画されるので、そのままbitmapnizeしても影が途切れてしまいます。大きめのレイヤーの中に含めるようにして、そのレイヤーに対してbitmapnizeするとうまくいきます。bitmapnizeすると本当にただの1枚絵になるというある意味究極的な方法なので、その後の速度的なデメリットはCALayerを使う限りは無いはずです。scale]をセットしとくとretinaディスプレイでも綺麗に描画出来ます。あと副作用的ではありますが、ビットマップ化するので、サブレイヤーで複雑な階層を構築して表現したイメージへ、contentsプロパティからアクセス出来るようになります。以下のような事が可能になります。これだけでaの内容がbにコピー出来るcontentsプロパティへのセットの処理が具体的にどうか(同じビットマップデータを共有するのか、複製されるのか)は知りませんが、内容のみをコピーする処理を楽に書けるのは間違いないでしょう。いってもこれがどのくらい有用なのかは謎。(例えば、Objective-Cの標準的な方法で単にインスタンスをコピーする事に対するアドバンテージはあまりなさげな気が。)でまぁ、これを書く前に影用のレイヤーを別にする方法(多分表面の物体と同じ形で黒いのを用意してそれを少しずらして裏に配置する方法かな)はどうかなんてアドバイスを頂いたんですが、考え方は確かにシンプル。表のCALayerをコピーして黒く塗りつぶす。CALayerといってもコードで描画された図形から、ファイルから読み込まれた画像、その他諸々の場合に対処しなければならない。影レイヤーにガウシアンフィルタとかを掛ける。表と影のレイヤーをまとめて扱うために、さらにコンテナレイヤーでまとめる。これは例えば単純計算で1000レイヤーまではなんとかグリグリ動かせてた環境で、333レイヤーまでしかグリグリ動かせなくなる事になる。コンテナを無視しても半分。いうのを実装しなければなりません。して、影のデータを手作業で予め作っとけという話だったのだろうか(例えばフォトショのマクロとかで自動化は出来るだろうけど、ユーザが変更可能な内容に対しては製作時の自動化は役に立たないし)。上記の実装を今回のビットマップ化の処理より簡単に書く方法があるのを私が知らないだけという可能性も高いので自信はないのですが。なんか取り留めの無い内容になってしまいましたが、今回これを実装しようと思ったのは、iPhoneのホーム画面のようなアイコンの並び替え処理の動きを、アプリで再現したくて普通に実装したら、アイコンにも影、テキストにも影がついてるので、各アイコンがふるふるするときや並び替えするときに、fpsが著しく落ちたからです。今回これを実装したおかげで、以下のように滑らかに動くようになりました。滑らかには見えないところもあるかもしれませんが、操作してる人がぎこちないだけで、実際ヌルヌルです。YouTubeiPhoneプログラミングはOpenGLESばかりやってたので、この辺のAPIはよく知らなかったんですが、結構使いやすい印象を受けました。コメントをキャンセルメールアドレスが公開されることはありません。コメントデータの処理方法の詳細はこちらをご覧ください。...774Fedexアカウント取得後にオンラインで手続きすれ...NETこういうのずっと見てしまう気持ちがよくわかります(...BINGEブログを拝見させていただきました・・・。花粉症対策についてはこれまで次の記事を書いてきました。花粉症対策についてはこれまで次の記事を書いてきました。花粉症対策についてはこれまで次の記事を書いてきました。花粉症対策についてはこれまで次の記事を書いてきました。花粉症対策についてはこれまで次の記事を書いてきました。