При построении демонстрационной сцены в Unity для webgl и последующей ее загрузке сцена загружается, но при нажатии присоединяйтесь, я получаю сообщение об ошибке «прервать (чтобы использовать dlopen, вам необходимо использовать поддержку ссылок Emscripten...). Скриншот ошибки.
Справочная информация
Я немного погуглил . Вот у кого-то такая же проблема: https://dev.to/joelthomas362/create-an- ... unity-33ce (прокрутите вниз до комментариев).
Я думаю, это как-то связано со способом связывания DLL-библиотеки Agora (см., например, эту тему: https://forum.unity.com/threads/to -use-dlopen-you-need-to-use-emscriptens-linking-support.521968/), где разработчик Unity пишет: Динамическое связывание, то есть операторы @DllImport, не являются поддерживается WebAssembly (в форме, которая будет полезна, по крайней мере, для сборок плагинов Unity WebGL). При компиляции плагинов их следует создавать так, чтобы они статически связывались с проектом. Однако я не могу найти, как статически связать Agora IO.
Вопрос
Можно ли заставить Agora IO работать с Unity WebGL, и если да, то как?
Как воспроизвести
- Загрузить Agora video SDK для unity (2.9.2)
- Импортировать SDK в Unity.
- Введите AppID в объект GameController из демо-версии.
- Перейдите в «Настройки сборки». Добавьте SceneHome и ScenHelloVideo из демо-версии в «Сцены в сборке». Нажмите «ВебГл». Нажмите «Сменить платформу», затем создайте (это может занять некоторое время).
- Загрузите выходные файлы на сервер (сборки WebGl в Unity не открываются локально в Chrome).
- Откройте файл index.html на сервер.
- Сцена загружается. Нажмите «Присоединиться». Теперь вы получаете сообщение об ошибке.
Подробнее здесь: https://stackoverflow.com/questions/621 ... demo-scene