Управление данными холста (типизированными массивами) по ссылке с использованием AssemblyScript - PullRequest
0 голосов
/ 11 апреля 2020

Я пытаюсь улучшить производительность довольно интенсивного графического метода, перенося его из Typescript в WebAssembly с помощью AssemblyScript. Метод манипулирует ImageData холста.

У меня проблемы с передачей этого ImageData (или хотя бы Uint8ClampedArray) из Typescript в AssemblyScript. Я нашел действительно хороший учебник , подробно описывающий, как создавать и отправлять эти данные из AS в TS, но не нашел много информации о том, как поступить наоборот.

Мне бы очень хотелось узнать, как это сделать, желательно без необходимости делать новую копию Uint8ClampedArray в AS, но я не уверен, возможно ли это вообще. Подробная информация о том, почему это (не) будет высоко ценится!

1 Ответ

1 голос
/ 11 апреля 2020

Я бы хотел узнать, как это сделать, желательно без необходимости создания новой копии Uint8ClampedArray в AS

. Вы не можете читать / писать напрямую на холст через WebAssembly. , как подробно в этом ответе на аналогичный вопрос . Вы можете поделиться экземпляром WebAssembly.Memory между WebAssembly и хостом JavaScript, однако вам все равно придется копировать изображение из этой памяти на холст для каждого отображаемого кадра.

...