저는 플립 애니메이션 라이브러리를 만듭니다 (데모 예제는 http://yfrog.com/7alhoz입니다).CATransform3DMakeRotation 및 shadow
두 단어로, 나는 CALayer를 만들고 CoreAnimation의 CATransform3DMakeRotation을 사용하여 회전시킵니다.
질문은 - 그 장면에 그림자를 추가하는 방법이 있습니까? OpenGL을 사용하여 전체 코드를 다시 작성하지 않고 :)
감사합니다.
저는 플립 애니메이션 라이브러리를 만듭니다 (데모 예제는 http://yfrog.com/7alhoz입니다).CATransform3DMakeRotation 및 shadow
두 단어로, 나는 CALayer를 만들고 CoreAnimation의 CATransform3DMakeRotation을 사용하여 회전시킵니다.
질문은 - 그 장면에 그림자를 추가하는 방법이 있습니까? OpenGL을 사용하여 전체 코드를 다시 작성하지 않고 :)
감사합니다.
CAGradientLayer
을 살펴보십시오. 비슷한 상황에서 그림자를 추가하기 위해 현재이 도구를 사용하고 있습니다. 성능면에서 현저히 비용이 많이 들지만 (여전히 확인해야 함) 상당히 납득이갑니다.
레이어에 하위 레이어로 CAGradientLayer
을 추가하고 opacity
에 애니메이션을 적용합니다. 그라디언트를 멈추고 색을 맞추면 게임을 제대로 진행할 수 있습니다.
나는 .PCH 파일에
#define DEGREES_TO_RADIANS(d) (d * M_PI/180)
추가 OpenGL
에 대해 확실하지 오전하지만 CATransform3D
을 확인해야
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
에 그림자를 추가 할 수 있습니다.
희망이 도움이 될 것입니다.