标题说明了一切。在使用Unity的游戏中是否可以用C ++替换C#?
如果您拥有专业版。欲了解更多信息,请参阅:docs.unity3d.com/Manual/Plugins.html
—
Ascendion
标题说明了一切。在使用Unity的游戏中是否可以用C ++替换C#?
Answers:
可以将C ++与免费版本的Unity一起使用,尽管如果您拥有Unity Pro许可证,则使用起来更容易。您所要做的就是将其包装在DLL中,并按照下面的说明进行放置。
我写了一篇涵盖该主题的文章:Unity和DLL:C#(托管)和C ++(非托管)
对于Unity 4 Free:
- 将非托管代码添加到Unity项目根目录:
UnityProject
- 将托管代码添加到Plugins文件夹:
UnityProject
->Plugins
- 生成项目时,将非托管代码复制到
BuildRoot
->Data
->Plugins
对于Unity 4 Pro和任何Unity 5:
- 只需将DLL复制到
UnityProject
->Plugins
非托管表示C ++,托管表示C#
尽管不方便,但这是可能的。您必须编写托管C ++才能实现它。是的,有托管C ++之类的东西。托管并不是专门指C#和非托管C ++。要实现它,您需要导入UnityEngine DLL文件。完成后,将其放在(Unity项目名称)/ Plugins文件夹中。这是您将使用的代码:在C ++文件中:
public ref class CPPUNITY {
public:
void Start() {
Debug::Log("C++ printed message");
}
};
在C#文件中:
using UnityEngine;
public class FileName {
void Start() {
CPPUNITY.Start();
}
}
该确切的代码不起作用,但这就是基础。