ゲームエンジン総合スレ★2at GAMEDEVゲームエンジン総合スレ★2 - 暇つぶし2ch■コピペモード□スレを通常表示□オプションモード□このスレッドのURL■項目テキスト853: ◆qSKP3eYtY6 12/06/29 15:09:28.16 KafWz+Or DDDのクラスは単一のObjectクラスを継承する(標準のObject)とは別 このObjectクラスにはUniqueID, UserID, UserObject等を含むがおもしくも何ともない話なので省略 Objectクラスの一番重要なのはアニメーション機能。 DDDではAnimationTrackを1基本アニメーション単位とする このアニメーションを任意のプロパティ(Setter必要)にセットすると準備完了 Animate()関数の呼び出しで値が書き換わる これはノードのアルファ値を書き換えている例 node.AddAnimationTrack (anim, () => node.Alpha); 第2引数が珍しい形だが、これがC#で最も簡単にプロパティを指定する方法 型はExpression<Func<T>>だが特に気にする必要はない 854: ◆qSKP3eYtY6 12/07/01 20:59:13.49 KktJ7lkD アニメーションは「値型でSetter/Getterを持ったプロパティ」なら何でもセットできるようにする この辺はC#の機能をフルに使っている クラス的にはKeyframeSequence<T>とAnimationTrackが存在し、 複数のAnimationTrackをAnimationClipが管理する(再生速度などはこのクラス) 歩くとか走るはこのClipが相当する Clipを差し替える時は特に仕組みを用意してないが(全てのTrackを手動で切り離すことになる) この辺は考慮中。あるいは node.AddAnimationTrack()ではなくnode.AddAnimationClip()でクリップ単位でアニメーションをセットしたほうがいいのかもしれない。 次ページ最新レス表示レスジャンプ類似スレ一覧スレッドの検索話題のニュースおまかせリストオプションしおりを挟むスレッドに書込スレッドの一覧暇つぶし2ch