Замена устаревшего кода взаимодействия браузера
Некоторые коды, связанные с взаимодействием скриптов веб-браузера, устарели и были заменены альтернативным кодом.
Если ваш код содержит устаревший код, необходимо обновить код заменой, чтобы предотвратить неожиданное поведение или неисправность кода.
Быстрая справка по устаревшему коду
Следующий код устарел, и вам необходимо заменить его на код замены.
| Устаревший код | Код замены |
|---|---|
| dynCall() | makeDynCall() |
| Pointer_stringify() | UTF8ToString() |
| unity.Instance() | CreateUnityInstance() |
| gameInstance | unityInstance |
Изменить dynCall на makeDynCall
Функция dynCall устарела. Если у вас есть код, использующий dynCall, замените его на makeDynCall. Внесите это изменение независимо от того, включена ли функция WebAssembly.Table или нет.
Например, измените:
dynCall('vii', callback, [1, 2])
к:
{{{ makeDynCall('vii', 'callback') }}}(1, 2)
Вызов функции без аргументов
При миграции шаблона dynCall, не имеющего аргументов, для вызова функции необходимо добавить после шаблона makeDynCall пустые скобки ().
Например, изменить:
dynCall('v', callback, []);
к:
{{{ makeDynCall('v', 'callback') }}}()
Изменить Pointer_stringify() на UTF8ToString
Функция Pointer_stringify() устарела. Если ваш код содержит вызовы Pointer_stringify(), замените их на UTF8ToString().
Например, измените:
var stringMessage = Pointer_stringify(message);
к:
var stringMessage = UTF8ToString(message);
Изменить unity.Instance на CreateUnityInstance
unity.Instance устарел. Если в вашем коде используется unity.Instance, используйте вместо него CreateUnityInstance.
Например, измените:
var MyGameInstance = null;
script.onload = () => {
unity.Instance(canvas, config, (progress) => { /*...*/ }).then((unityInstance) => {
к:
var MyGameInstance = null;
script.onload = () => {
createUnityInstance(canvas, config, (progress) => { /*...*/ }).then((unityInstance) => {
Изменить gameInstance на unityInstance
Свойство gameInstance устарело. Если в вашем коде используется gameInstance, вместо него используйте unityInstance.
Например, измените:
MyGameInstance = gameInstance;
к:
MyGameInstance = unityInstance;