Как вызвать метод в dll из юнити скрипт?

У меня есть очень простой dll с именем MyNativeDll, который содержит вот такой метод

extern "C" {
    int foo() { return 777; }
}

Я делаю билд для этого MyNativeDll.dll и складываю его в Assert директорию.

Теперь мне нунжно обратиться к этому методу из моего юнити проекта. Я создаю скрипт:

using System.Runtime.InteropServices;
using UnityEngine;

public class TestScript : MonoBehaviour
{
    private const string pluginName = "MyNativeDll";
    //native interface
    [DllImport(pluginName)]
    private static extern int foo();

    // Update is called once per frame
    void Update()
    {
        int i = foo();
        Debug.Log($"HERE :: {i}");
    }
}

Если я запускаю этот проект то в консоле выпадает вот такая ошибка

EntryPointNotFoundException: foo
TestScript.Update () (at Assets/TestScript.cs:20)

Что делаю не так?


Ответы (0 шт):