[ON] Представлен Rust GPU, инструментарий для разработки шейдеров на языке Rust

Обсуждение новостей, соответствующих тематике форума

Модератор: Модераторы разделов

Ответить
Аватара пользователя
rssbot
Бот
Сообщения: 6002
ОС: gnu/linux

[ON] Представлен Rust GPU, инструментарий для разработки шейдеров на языке Rust

Сообщение rssbot »

Компания Embark Studios, специализирующаяся на разработке игр, опубликовала первый экспериментальный выпуск проекта Rust GPU, нацеленного на использование языка Rust для разработки кода для GPU. Код опубликован под лицензиями MIT и Apache 2.0.

Желание использовать Rust для написания программ для GPU объясняется не только средствами для обеспечения безопасности программ и высокой производительностью, но и необходимостью получить современные инструменты для работы с пакетами и модулями для повышения эффективности процесса разработки. Развивающая Rust GPU компания Embark Studios также использует Rust в своём игровом движке и работает в направлении упрощения совместного использования кода на Rust для CPU и GPU.

Rust GPU продолжает развитие идей проекта RLSL, в рамках которого была предпринята попытка создания компилятора из Rust в универсальное промежуточное представление шейдеров SPIR-V, которое предложено в API Vulkan и поддерживается в OpenGL 4.6. На текущем этапе развития Rust GPU уже позволяет запускать простые графические шейдеры и компилировать значительную часть базовой стандартной библиотеки Rust. При этом проект ещё далёк до готовности к повсеместному использованию, например, в шейдерах пока не поддерживаются циклы.

На основе кода на языке Rust формируется представление шейдеров SPIR-V, для генерации которого разработан специальный бэкенд к компилятору Rust, работающий по аналогии с генератором кода cranelift, применяемым для компиляции в представление WebAssembly. В настоящее время упор делается на поддержку графического API Vulkan и представления SPIR-V, но в будущем планируется создание генераторов для представлений шейдеров DXIL (DirectX) и WGSL (WebGPU). На базе Cargo и crates.io развиваются средства для разработки и публикации пакетов с шейдерами в формате SPIR-V.


Источник: https://www.opennet.ru/opennews/art.shtml?num=53949
(opennet.ru, основная лента)
Спасибо сказали:
Ответить