theguildjp / GLDTween

SuperHandy Animation Engine
Other
189 stars 6 forks source link

UIColorをどうGLDTweenに対応させるか? #1

Open fladdict opened 9 years ago

fladdict commented 9 years ago

以下もろもろの懸念点

・UIColorをRGBとして保持した場合、トゥイーンの最中にグレーがかったトゥイーンが起こる。 ・UIColorをHSBとして保持した場合、色相環のアニメになるためこの問題は解決する。

ただし、UIColorをHSBとして扱う場合、現行のUIColorではHSB = 0,0,0と、HSB = 1,1,0 の区別がつかない。この問題を解決するには、UIColorを捨てて内部的にHSBで色を保持する、GLDColorを作るしかない。

どう解決するか?

kawanet commented 9 years ago

懸念点とあってるのかわからないけど、

KTween では、color transform と lightness transform と darkness transform の3つの処理を分離していました。 (赤→青とか)色を変えたい用途は実際にはそう多くなくて、たいていは、白 or 黒でフェードイン/アウトしたい用途が多かったので、開発者側の設定方法を分けちゃった。 (AS3 なので、実際の処理は ColorTransform で同じ処理になる)

(追記)と思ったけど、今はフェードインは alpha でやるのかな。AS3 は alpha は遅くて使えなかったけど、iOS なら速いかも。