Unity 预编译选项

如何设置?

  • Player Settings->Scripting Define Symbols:可以输入多个(complile directives 编译指令),多个的话,每个以“;”(分号)隔开
  • 也可以在Assets/目录下添加一个:如:Assets/mcs.rsp,就可以为 运行时、编辑器时的脚本提供编辑指令
  • Assets/us.rsp的话可以给UnityScript(Unity脚本,还没用过)定义
    (mcs.rps是5.5版本或之后才用这个,之前的版本,可能使用:smcs.rsp或gmcs.rsp,具体参考ILRuntime的从零开始的-unsafe预编译选项的设置方式)

Assets/mcs.rsp例如如下内容:

-unsafe // 这意味可以使用unsafe的功能
-define:jave_macro_1;jave_macro_2 // 这里定义了jave_macro_2、jave_macro_2 的两个编译指令
public unsafe void Test()
{ 
  int* a = ...; // 这样就可以在unity脚本unsafe的方法来使用指针了
}
public void TestMacro()
{
#ifdef jave_macro_1
  Debug.Log("You have defined : jave_macro_1");
#endif
#ifdef jave_macro_2
  Debug.Log("You have defined : jave_macro_2");
#endif
}

Unity部分编译的工具

  • mcs.rsp都已被Unity安装目录下的mcs.exe预编译处理程序处理的(us.rsp是给us.exe处理的)
  • csc.exe 是c sharp 代码的编译工具

mcs.exe工具功能

mcs.exe

参考

猜你喜欢

转载自blog.csdn.net/linjf520/article/details/80508879