当前位置: 首页 > news >正文

Unity C++交互

一、设置Dll输出。

两种方式:

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

二、生成Dll

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

三、c++代码补充

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

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

先创建DllForUnity.h头文件


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

再创建DllForUnity.cpp实现文件。

#include <DllForUnity.h>float GetDistance(float x, float y)
{return x+y;
}

四、C#调用

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

http://www.lryc.cn/news/248462.html

相关文章:

  • 人工智能-优化算法之动量法
  • 【MySQL】InnoDB中的索引
  • 《软件工程原理与实践》复习总结与习题——软件工程
  • 软工2021上下午第六题(组合模式)
  • 在Spring Boot中使用不同的日志
  • 运维知识点-openResty
  • 微服务中配置Nacos热更新
  • ABAP2XLSX 的安装和demo
  • 记一篇Centos7安装innodb_ruby
  • VMware虚拟机安装和使用教程(附最新安装包+以ubuntu为例子讲解)
  • c语言 / 指针错误的几种情况
  • Stable-Diffusion——Windows部署教程
  • Day60.算法训练
  • 深入了解Java8新特性-日期时间API之TemporalQuery、TemporalQueries
  • 记录一次现网问题排查(分享查域名是否封禁小程序)
  • linux下实现Qt程序实现开机自启动
  • TCP 基本认识
  • 智慧城市包括哪些内容?有哪些智慧城市物联网方案?
  • Arkts@Watch装饰器与内置组件双向同步深度讲解与实战应用【鸿蒙专栏-14】
  • iMazing是什么软件?2024最新版本如何下载
  • LeetCode(40)同构字符串【哈希表】【简单】
  • 【代码随想录算法训练营-第一天】【数组】704. 二分查找、27. 移除元素
  • [教程] 一文进阶Redis
  • 通用plantuml模板头
  • 网站公安备案流程
  • 关于使用若依,并不会自动分页的解决方式
  • 在PyCharm中配置PyQt5环境
  • SIFI 极值点拟合的详细推导过程
  • Kontakt v7.7.2(音频采样器)
  • Drawer抽屉(antd-design组件库)简单用法