我正在創建翻轉動畫庫(這裏是演示示例:http://yfrog.com/7alhoz)。CATransform3DMakeRotation和shadow
用兩個詞來說,我創建了CALayer並使用CoreAnimation的CATransform3DMakeRotation旋轉它。
問題是 - 有沒有辦法給該場景添加陰影?無需用OpenGL重寫整個代碼:)
謝謝。
我正在創建翻轉動畫庫(這裏是演示示例:http://yfrog.com/7alhoz)。CATransform3DMakeRotation和shadow
用兩個詞來說,我創建了CALayer並使用CoreAnimation的CATransform3DMakeRotation旋轉它。
問題是 - 有沒有辦法給該場景添加陰影?無需用OpenGL重寫整個代碼:)
謝謝。
看一看CAGradientLayer
。我目前正在使用它在類似的情況下添加陰影。可能是昂貴的性能方面(仍然必須檢查),但看起來很有說服力。
將CAGradientLayer
作爲子圖層添加到您的圖層併爲其設置動畫opacity
。你可能不得不使用漸變停止和顏色來讓它們正確。
我不知道OpenGL
但你檢查CATransform3D
添加
#define DEGREES_TO_RADIANS(d) (d * M_PI/180)
在.PCH文件
CATransform3D myTransform = CATransform3DIdentity;
myTransform.m34 = 1.0/-500;
myTransform = CATransform3DRotate(myTransform, DEGREES_TO_RADIANS(90), 0.0f, 0.0f, 1.0f);
myView.layer.transform = myTransform;
你可以去這裏改變角度DEGREES_TO_RADIANS(90)
在這裏你可以添加陰影到myView
。
希望這會對你有所幫助。