2012-03-20 5 views
5

私は、iOSで2Dプラントの成長を手作業でアニメーション化する最良の方法を理解しようとしています。2Dプラントのアニメーションを手順的にアニメーション化する

私はプラントをアニメートしてユーザーに侵入感を与えたいと思っています。 基本的に、ブランチの成長をアニメーション化するには、小さな芽をつけて、最終的に完全に成長した葉にアニメーション化します。 少し生命を吹き込むために、画面に手を塗っているのを感じるのではなく、植物が成長するにつれて少し揺れるようにしたいと思います。

私が考えてきた方法の1つは、CGPathsとベジエ曲線を使って茎と葉の形を作成することですが、パスの描画をアニメーション化する方法は完全にはわかりません。私は茎の "描画"を取得すると、私はラインが成長している/アニメーションと植物の外側に成長し始めると、茎の特定のポイントで小さな芽を "植えたい"と思います。

このタスクを達成するためにどのようなルートをとるべきですか?私は、手作業で各フレームを描き、そのようにアニメ化するのではなく、手続き的にアニメーション化する方が好きです。私が推論するのは、手続き的にアニメーション化することは時間のかかるものではなく、アニメーションのさまざまな側面をより詳細に制御し、他のプロジェクトでも再利用できると想像していることです(プログラムするのは面白くないでしょう!)

I 'アニメーションの線の描画のために、このブログ投稿に出くわしまし: http://oleb.net/blog/2010/12/animating-drawing-of-cgpath-with-cashapelayer/ おそらくこれは私が望む結果を達成するための出発アプローチだろう、私は座って、彼は投稿のコードを通過する必要があります。

また、おそらくこれはcocos2dなどを使用して簡単に行うことができるものでしょうか?または、石英コアとコアアニメーションがうまくいくでしょう。

ご意見ありがとうございました。この時点で役立つ情報があります。

+0

あなたは確かにCAShapeLayersの正しい軌道に乗っていますが、やっていることは面倒です。それにもかかわらず、大きな質問です!間違いなく私のお気に入りのリストに。 – pasawaya

+0

いくつかのリソースリンクを無回答として追加しました。たぶんあなたが探していた以上のものですが、それは本当に豊富なアルゴリズム領域です(そして、あなたが探していた以上のものかもしれません)。それにもかかわらず、いくつかのアイデアを与えるかもしれません。 –

+0

私はCW回答にいくつかのリソースを追加しましたが、L-Systemsなどで複雑な3Dツリー生成アルゴリズムを探しているのではなく、単純な2Dマンガ派ツリーの成長をアニメーション化する方法について考えています。 – pasawaya

答えて

2

(素晴らしい質問ですが、これは「コミュニティウィキ」として投稿されていますが、これは答えではなく、一部の参考文献であり、リンクにコメントが欲しかったからです。 )

「手続き型ツリー分岐コード」で簡単な検索を行いました。興味深いヒットがたくさんありました。本当に豊富なエリアです。

gameDev.stackExhange上のポストは、この偉大なリソースを指摘:またAlgorithmic Botany

Snappy Treeはかなり驚くべきであり、ソースコードが入手可能です。

これら二つのも面白い音:

TRealは、リアルな3D樹木モデルを生成することができるプログラムです。

Arbaroは、Javaで書かれたJason Weber、& Joseph Penn: "現実的な木の作成とレンダリング"で説明されているツリー生成アルゴリズムの実装です。

おそらくよりOPにアクセスし、あまり複雑でない結果とfractal trees上でこれらのActionScriptのチュートリアルです。 ActionScriptの描画コードは、Core Graphicsに簡単に変換されます。