Judulnya mengatakan semuanya. Apakah mungkin untuk mengganti C # dengan C ++ pada game menggunakan Unity?
Judulnya mengatakan semuanya. Apakah mungkin untuk mengganti C # dengan C ++ pada game menggunakan Unity?
Jawaban:
Dimungkinkan untuk menggunakan C ++ dengan Unity versi gratis, meskipun lebih mudah untuk digunakan jika Anda memiliki lisensi Unity Pro. Yang harus Anda lakukan adalah membungkusnya dalam DLL dan ikuti instruksi di bawah ini di mana harus meletakkannya.
Saya menulis artikel yang membahas topik ini: Persatuan dan DLL: C # (dikelola) dan C ++ (tidak dikelola)
Untuk Unity 4 Gratis:
- Tambahkan kode yang tidak dikelola ke Root Proyek Persatuan:
UnityProject
- Tambahkan kode terkelola ke folder Plugins:
UnityProject
->Plugins
- Saat Anda membangun proyek, salin kode yang tidak dikelola ke
BuildRoot
->Data
->Plugins
Untuk Unity 4 Pro dan Unity 5:
- Cukup salin DLL ke
UnityProject
->Plugins
Tidak terkelola berarti C ++ dan Dikelola berarti C #
Itu mungkin meskipun tidak nyaman. Anda harus menulis C ++ yang dikelola untuk mencapainya. Dan ya, ada yang namanya dikelola C ++. Dikelola tidak secara khusus berarti C # dan C ++ yang tidak dikelola. Untuk mencapainya, Anda harus mengimpor file DLL UnityEngine. Setelah selesai, Anda taruh di folder (Nama Proyek Kesatuan) / Plugin. Berikut adalah kode yang akan Anda gunakan: Dalam file C ++:
public ref class CPPUNITY {
public:
void Start() {
Debug::Log("C++ printed message");
}
};
Dalam file C #:
using UnityEngine;
public class FileName {
void Start() {
CPPUNITY.Start();
}
}
Kode persis itu tidak akan berfungsi tetapi itu adalah basis.