Unity 6.3
0 онлайн 85 гостей 3 в системе
Вход
Разработка платформы Шаг 296 из 387

Настройка плагина JavaScript

Вы можете вызывать функции из ваших плагинов JavaScript в ваших проектах Unity. Unity поддерживает два типа файлов плагинов JavaScript, которые позволяют добавить код JavaScript в ваш проект Unity:

  • .jslib
  • .jspre

Примечание: Unity в настоящее время поддерживает ECMAScript 5 (ES5) синтаксис в .jslib и .jspre файлы. ES6 синтаксис пока не поддерживается.

Если вы хотите вызывать функции из плагинов C++, обратитесь к Вызов функций C/C++/C# из скриптов Unity C#.

Импорт файлов JavaScript в проект Unity

Рекомендуемый способ использования браузера JavaScript в вашем проекте заключается в добавлении источников JavaScript (файлов .jspre и .jslib) в ваш проект, а затем использовании этих функций или библиотек непосредственно в коде вашего скрипта Unity C#.

Поместите файлы плагина JavaScript в любую папку, например, Assets/JSPlugins.

Вызов функций из файла типа .jslib

Вы можете вызывать функции из ваших файлов плагинов .jslib в Unity C# или в собственных скриптах.

Файлы .jslib используют модуль Emscripten --js-library. Дополнительные сведения см. в документации Emscripten о параметре Emscripten –js-library.

Следующий код показывает пример файла плагина .jslib с идеальным синтаксисом, который определяет некоторые функции (Hello и HelloString).

mergeInto(LibraryManager.library, {

  Hello: function () {
    window.alert("Hello, world!");
  },

  HelloString: function (str) {
    window.alert(UTF8ToString(str));
  },
});

Затем вы можете вызвать эти функции в коде Unity C#:

using UnityEngine;
using System.Runtime.InteropServices;

public class NewBehaviourScript : MonoBehaviour {

    [DllImport("__Internal")]
    private static extern void Hello();

    [DllImport("__Internal")]
    private static extern void HelloString(string str);

    void Start() {
        Hello();
        HelloString("This is a string.");
    }
}

Полный пример взаимодействия между функциями Unity, C# и JavaScript см. в Примеры кода: Вызов функций JavaScript и C/C++/C# в Unity.

Более подробную информацию о взаимодействии между Unity C# и JavaScript см. в Вызов функций JavaScript из скриптов Unity C#.

Включить библиотеки JavaScript с типом файла .jspre

Используйте тип файла плагина .jspre, чтобы включить существующие библиотеки JavaScript в код JavaScript. Вы не можете использовать код Unity для взаимодействия с файлами .jspre, но можете использовать их в коде .jslib.

Тип файла .jspre использует опцию --pre-js Emscripten. Дополнительные сведения см. в документации Emscripten об опции –pre-js Emscripten.

Во время процесса сборки Emscripten создает файл *.framework.js и копирует содержимое файла .jspre в начало файла *.framework.js. Этот процесс полезен, потому что весь код объединяется в один файл, что облегчает управление файлами, а код получает выгоды от оптимизации Emscripten.

Дополнительные ресурсы