Tôi có thể gọi các hàm c trong khung XNA không?


10

Tôi muốn tạo một trò chơi 360 và chỉ tự hỏi liệu tôi có thể sử dụng lại một số mã C hiện có mà tôi có hoặc tôi có cần phải viết lại mọi thứ trong C # không. Bất kỳ trợ giúp được đánh giá cao.

Câu trả lời:


12

Có và không.

Chính thức, thứ duy nhất bạn có thể sử dụng trên 360 với XNA là C #. Bạn không thể gửi bất kỳ DLL nào không được quản lý với một ứng dụng trên xbox trực tiếp và nếu bạn muốn viết trò chơi của mình bằng C, bạn cần một bộ công cụ dev và hợp đồng không thể có được với Redmond.

Điều đó nói rằng, bất cứ điều gì bạn có thể biên dịch vào CIL sẽ chạy trên khung nhỏ gọn sẽ ổn. Nếu bạn có thể thuyết phục mã của mình để biên dịch thành c ++ được quản lý, bạn sẽ có thể làm cho nó hoạt động.

Cập nhật năm 2016

Thời gian đã thay đổi. Lấy VC ++, XBONE ngoài luồng của bạn và thực hiện.

Hoặc, tốt hơn nữa - nếu bạn thực sự bị mắc kẹt trên C #, một ngôn ngữ nhỏ khá tuyệt vời - hãy sử dụng Unity hoặc monogame. Cái trước là một động cơ và hệ sinh thái hoàn chỉnh, thực sự tuyệt vời, cái sau là hoàn hảo nếu bạn muốn tự mình lăn lộn.


1
Ngoài ra, bạn có thể làm bất cứ điều gì bạn muốn từ Trò chơi Windows XNA. Yêu cầu không có mã không được quản lý là XBOX (và WP7).
Nate

@Nate yep, hoàn toàn chính xác.
3Dave

-5

tốt hơn là sử dụng C #. bởi vì sử dụng C # sẽ không gây ra sự cố unkn.

tuy nhiên, có, nó có thể cll chức năng C.


3
-1 vì bạn không thực sự trau chuốt về bất kỳ điểm nào của bạn. "unkn [sic] vấn đề": loại nào? "có thể cll [sic]": làm thế nào?
Tetrad
Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.