2010-05-14 3 views
13

Tôi cần phải di chuyển một sprite từ một CGPoint khác bằng cách sử dụng Cocos2d cho Iphone. Vấn đề là các hình ảnh động nên được cùng một bezier.Cocos2d: Di chuyển một Sprite dọc theo một con đường/bezier?

Về cơ bản tôi sẽ sử dụng này:

id move = [CCMoveTo actionWithDuration:.5f position:ccp(100,200)]; 
[sprite runAction:move]; 

Bây giờ làm thế nào tôi có thể làm điều này trong một con đường tuyến tính không?

Trả lời

29

Hãy thử điều này

ccBezierConfig bezier; 
bezier.controlPoint_1 = ccp(0, s.height/2); 
bezier.controlPoint_2 = ccp(300, -s.height/2); 
bezier.endPosition = ccp(300,100); 

id bezierForward = [CCBezierBy actionWithDuration:3 bezier:bezier]; 
+0

Làm thế nào tôi có thể hạn chế sprite của tôi để con đường bezier này như vậy, ví dụ, nó có thể không được kéo bất cứ nơi nào trừ cùng con đường đó? – tallen11

3

Vâng, thực ra tôi lại một lần nữa quá nhanh để tìm kiếm trợ giúp.

Tìm thấy các giải pháp, có một phương pháp: CCBezierTo