Xcode 编写 Unity 在Mac 平台的Bundle插件

本文介绍如何使用Xcode创建Mac平台的Unity Bundle插件,并提供了具体的代码示例。详细步骤包括创建Xcode工程、编写C++代码、设置导出宏、编译插件并将其集成到Unity项目中,最后在C#中调用这些插件函数。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

Xcode 编写 Unity 在Mac 平台的Bundle插件

  1. Xcode创建工程,选择MacOs 的框架和库,中的bundle
  2. 创建和 bundle 相同名字的 cpp文件自动生成头hpp文件
  3. 头文件代码如下
#pragma once
#if UNITY_METRO
#define EXPORT_API __declspec(dllexport) __stdcall
#elif UNITY_WIN
#define EXPORT_API __declspec(dllexport)
#else
#define EXPORT_API
#endif
#include <stdio.h>

实现cpp中如下

extern "C" int EXPORT_API TestAB(int a,int b)
{
    return a+b;
}

extern "C"
{
    int TestAC(int a);

}

int TestAC(int w )
{
    return w * 10;

}

选中 Products 中的bundle 显示在finder中,拷贝复制到Unity 工程的Asset/Plugin 下

然后在c#中调用,调用的代码形式如下

using System.Collections;
using System.Collections.Generic;
using System.Runtime.InteropServices;
using UnityEngine;



public class StartMain : MonoBehaviour {

[DllImport("NetPlugin")]
public static extern int TestAB(int a, int b);

[DllImport("NetPlugin")]
    public static extern int TestAC(int c);

// Use this for initialization
void Start () {

}

// Update is called once per frame
void Update () {

}


public void ShowAdd()
{
int a = TestAB(1, 2);
Debug.Log("AB : "+a);


int c = TestAC(9);
        Debug.Log("AC : " + c);
}


}
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值