当前位置:   article > 正文

Unity C++交互

Unity C++交互

一、设置Dll输出。

两种方式:

  • 第一:直接创建动态链接库工程
  • 第二:创建的是可执行程序,在visual studio,右键项目->属性(由exe改成dll)

二、生成Dll

根据选项Release或Debug,运行完上面的生成解决方案后,会在工程目录下生成x64/Relese/xxx.dll。至此dll生成完成。

三、c++代码补充

注意:_declspec(dllexport)是必须在方法前面,否则c#会调用不到这个方法。

extern "C" 以c的方式去编译也是必要的

先创建DllForUnity.h头文件

  1. #pragma once
  2. #include<math.h>
  3. #include<string.h>
  4. #include<iostream>
  5. #define _DllExport _declspec(dllexport) //使用宏定义缩写下
  6. extern "C"
  7. {
  8. _DllExport float GetDistance(float x, float y);
  9. }

再创建DllForUnity.cpp实现文件。

  1. #include <DllForUnity.h>
  2. float GetDistance(float x, float y)
  3. {
  4. return x+y;
  5. }

四、C#调用

  • 将打好的dll拷贝到Unity Plugins文件夹下
  • 引入c++方法
    1. [DllImport("RoboidS", EntryPoint = "GetDistance")]
    2. private static extern float GetDistance(float x, float y);
  • 最后直接调用 GetDistance(1, 2);

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/盐析白兔/article/detail/132996
推荐阅读
相关标签
  

闽ICP备14008679号