Các loại tiêu đề nói lên tất cả. Có thể thay thế C # bằng C ++ trên một trò chơi bằng Unity không?
Các loại tiêu đề nói lên tất cả. Có thể thay thế C # bằng C ++ trên một trò chơi bằng Unity không?
Câu trả lời:
Có thể sử dụng C ++ với phiên bản Unity miễn phí, mặc dù nó dễ làm việc hơn nếu bạn có giấy phép Unity Pro. Tất cả bạn phải làm là gói nó trong một DLL và làm theo các hướng dẫn bên dưới về nơi đặt nó.
Tôi đã viết một bài viết đề cập đến chủ đề này: Unity và DLL: C # (được quản lý) và C ++ (không được quản lý)
Dành cho Unity 4 miễn phí:
- Thêm mã không được quản lý vào Unity Project Root:
UnityProject
- Thêm mã được quản lý vào thư mục Plugins:
UnityProject
->Plugins
- Khi bạn xây dựng một dự án, sao chép mã không được quản lý vào
BuildRoot
->Data
->Plugins
Dành cho Unity 4 Pro và mọi Unity 5:
- Chỉ cần sao chép các DLL vào
UnityProject
->Plugins
Không được quản lý có nghĩa là C ++ và Managed có nghĩa là C #
Nó có thể mặc dù bất tiện. Bạn sẽ phải viết C ++ được quản lý để đạt được nó. Và vâng, có những thứ như C ++ được quản lý. Được quản lý không có nghĩa cụ thể là C # và C ++ không được quản lý. Để đạt được nó, bạn sẽ cần nhập tệp UnityEngine DLL. Khi bạn hoàn thành, bạn đặt nó vào thư mục (Tên dự án Unity) / Plugins. Đây sẽ là mã bạn sử dụng: Trong tệp C ++:
public ref class CPPUNITY {
public:
void Start() {
Debug::Log("C++ printed message");
}
};
Trong tệp C #:
using UnityEngine;
public class FileName {
void Start() {
CPPUNITY.Start();
}
}
Mã chính xác đó sẽ không hoạt động nhưng đó là một cơ sở.