2011-12-16 32 views
12

Tôi đang sử dụng Xcode 4.2 và tạo trò chơi cho iphone (từ iOS 3.0 - 5.0). Cocos2d có hỗ trợ ARC không? Những sửa đổi cần phải được thực hiện để chuyển đổi mã được viết trong các phiên bản trước?Cocos2d có hỗ trợ ARC không?

Nếu tôi sử dụng từ khóa mạnh và yếu cho biến và đặt trình biên dịch thành LLVM GCC 4.2, kết quả sẽ là gì? Có cần thiết phải thay đổi trình biên dịch thành 3.0 để hỗ trợ ARC không?

Trả lời

10

Cocos2d v1.1 và v2.0 tương thích với ARC. Tuy nhiên, chính mã cocos2d không sử dụng ARC và không có mẫu nào được cung cấp bởi cocos2d mà bạn có thể sử dụng để bắt đầu lập trình với ARC. Bạn được yêu cầu thêm một mục tiêu thư viện tĩnh riêng cho chính các tệp cocos2d.

Như Ankit đã chỉ ra, Tiny Tim Games đã thực hiện các thay đổi cần thiết đối với phiên bản cocos2d-iphone chia hai to make it ARC compatible. Những thay đổi này đã được tích hợp vào phiên bản phát triển và sẽ có sẵn trong nhánh cocos2d v2.x. Tôi đã viết từ tutorial to enable ARC in a cocos2d (2.0) project.

Người ta nói rằng bản thân cocos2d sẽ được chuyển đổi sang sử dụng ARC bên trong trong v2.1 hoặc v2.2. Điều quan trọng cần lưu ý là không có kế hoạch chính thức hỗ trợ ARC trong chi nhánh cocos2d v1.x vì dòng v1.x được cho là vẫn tương thích ngược với các thiết bị thế hệ thứ nhất và iOS 3.x. Nhưng tính tương thích ARC chung đã được thêm vào v1.1.


Kobold2D fully supports ARC and has it enabled in all 15 template projects cho almost two months now. Kobold2D sử dụng phiên bản ổn định mới nhất của cocos2d-iphone 1.x và 2.x. Chỉ cần bắt đầu một dự án Kobold2D mới và bạn đã thiết lập để làm việc với cocos2d và ARC.

+0

@ LearnCocos2D Tại sao bạn không tích hợp một số các Kobold2d tính năng (Ví dụ: kịch bản với lua) với Cocos2d? Bằng cách này, bạn sẽ không phải phân chia cơ sở phát triển cho người dùng Cocos2d và Kobold2d và chúng tôi sẽ có sản phẩm chất lượng tốt hơn vì nhiều nhà phát triển sẽ đóng góp cho cùng một dự án và cung cấp sản phẩm chất lượng tốt hơn trong thời gian ngắn hơn (cũng như không phải loại bỏ những cuốn sách chúng tôi đã mua - ví dụ: Tìm hiểu Cocos2d để phát triển trò chơi trên iPhone và iPad) – mm24

+1

Câu hỏi ngắn là sự khác biệt chung về hướng. Lua so với Javascript. Khả năng sử dụng so với hiệu suất. Tất cả-trong-một giải pháp so với mong muốn vẫn còn "tinh khiết". Điều quan trọng đối với người dùng so với những gì quan trọng đối với Zynga. Nhận được cập nhật mã phát hành kịp thời và chờ đợi nhiều tuần cho một yêu cầu kéo được chấp nhận và sau đó chờ đợi vài tuần nữa để phát hành chính thức tiếp theo. – LearnCocos2D

2

Mặc dù Cocos2d không hỗ trợ cung nhưng có cách bạn có thể sử dụng cả hai cùng nhau, và đó là tham chiếu chéo dự án. Bạn có thể tìm hiểu cách thực hiện điều này bằng cách tham khảo điều này .. cocos2d and ARC

Các vấn đề liên quan