Публикации по теме 'metal'


Использование металла в Swift Playgrounds 4
Два способа заставить металл петь как птица в Swift Playgrounds Swift Playgrounds 4 стала огромным обновлением, которое принесло полную разработку приложений в SwiftUI для iPad, а также сделало приложение более быстрым и удобным в использовании. Хотя Playgrounds хорошо подходит для создания прототипов и работы на ходу, в нем отсутствуют некоторые расширенные функции разработки, такие как Metal. В этой статье будут показаны два способа заставить Metal работать в Swift Playgrounds 4..

Вопросы по теме 'metal'

Metal MTLTexture заменяет полупрозрачные области черным, если альфа-значения не равны 1 или 0.
При использовании импортера текстур Apple или моего собственного Белый круг с мягкими краями, нарисованный в программном обеспечении (с прозрачным bg) или в Photoshop (сохраненный как PNG) при визуализации, будет иметь его полупрозрачные цвета,...
4112 просмотров
schedule 02.05.2022

Рендеринг металла очень медленный - как его ускорить
У меня есть работающее металлическое приложение, которое работает очень медленно и должно работать быстрее. Я считаю, что проблема в том, что я создаю слишком много объектов MTLCommandBuffer. Причина, по которой я создаю так много объектов...
1602 просмотров
schedule 09.08.2023

Вычислительный конвейер iOS Metal медленнее, чем реализация ЦП для задачи поиска
Я провел простой эксперимент, реализовав наивный алгоритм поиска символов, выполняющий поиск 1 000 000 строк по 50 символов в каждой (карта 50 mil char) как на ЦП, так и на графическом процессоре (с использованием вычислительного конвейера iOS8...
2254 просмотров
schedule 20.09.2023

Что эквивалентно GL_TRIANGLE_STRIP в Metal для iOS?
Попытка нарисовать полосу треугольников, как показано здесь: Пройден урок objc.io, где они рисуют четырехугольник из двух треугольников. Треугольники разъединены и рисуются по отдельности, то есть мне нужно указать 6 вершин вместо 4. //...
1933 просмотров
schedule 18.07.2023

Эквивалент tex2Dproj в Metal iOS
Как сделать проекцию текстуры с аппаратным ускорением в Metal? Я не могу найти никаких ссылок или ресурсов, описывающих, как это сделать.
340 просмотров
schedule 29.04.2024

Есть ли у металла задний буфер?
В настоящее время я отслеживаю некоторые визуальные всплывающие окна в моем приложении Metal и считаю, что это потому, что я рисую непосредственно в фреймбуфер, а не в задний буфер. // this is when I've finished passing commands to the render...
1223 просмотров
schedule 25.09.2022

Почему захват кадра графическим процессором не работает с Metal?
Когда я нажимаю кнопку камеры для захвата и отладки графического процессора, он просто отключает кнопку, и больше ничего не происходит. Когда я затем останавливаю приложение из XCode, представление (как ни странно) переключается на редактор...
2840 просмотров
schedule 28.07.2022

Как отключить металл в Unity
В Unity есть настройка для автоматического выбора Graphics API. По какой-то причине моя игра имеет гораздо более низкую производительность при использовании Metal; на данный момент я бы не хотел иметь Metal в качестве опции, но все же иметь...
9060 просмотров
schedule 18.06.2023

Металлический буфер iOS не учитывает значение шага
У меня есть унифицированный буфер для каждого экземпляра, где каждый элемент в буфере имеет размер 64 байта, но я использую только первые 16 байтов (float3) каждого элемента в вершинном шейдере. Я сделал шаг вперед, чтобы описать это. Проблема в...
1052 просмотров
schedule 25.07.2023

Лучшие практики работы с металлом — изменение renderPipelineDescriptor во время рендеринга
Во время моего конвейера рендеринга я хотел бы использовать несколько шейдеров и в некоторых случаях изменять параметры объекта MTLRenderPipelineDescriptor (например, изменять функции смешивания). Как я понимаю, у меня есть 2 варианта:...
1111 просмотров
schedule 12.01.2024

Использование ядра MPSImageConvolution с вычислительными шейдерами Metal
Я использую пример MetalVideoCapture, расположенный здесь https://github.com/FlexMonkey/MetalVideoCapture . Единственное, что я изменил в своей версии, это использование MPSImageConvolution (вместо MPSImageGaussianBlur) со значениями ядра:...
1208 просмотров
schedule 17.08.2023

В металле завершается ли выполнение одного вершинного шейдера до того, как выполнится следующий вершинный шейдер?
Предположим, вершинный шейдер Metal A обновляет буфер buf . Также предположим, что у меня есть второй вершинный шейдер B , который закодирован после A . Может ли B использовать результаты в buf или возможно, что B начнет выполнение до...
192 просмотров
schedule 27.02.2023

Безопасно ли передавать невыровненные буферы в MTLBuffer?
Пытаясь использовать Metal для быстрого отрисовки пиксельных буферов на экран из памяти, мы создаем объекты MTLBuffer , используя MTLDevice.makeBuffer(bytesNoCopy:..) , чтобы позволить графическому процессору напрямую считывать пиксели из памяти без...
1256 просмотров

Как связать фильтры в Metal для iOS?
Я выполнил это руководство Саймона Глэдмана (@flexmonkey) для захвата изображений из AVFoundation и применения фильтра к выходным данным. Однако я изо всех сил пытаюсь найти способ заменить фильтр размытия моим собственным вычислительным...
1137 просмотров
schedule 05.08.2022

Текстуры и отсутствие текстур одновременно в металле, с многократным смешиванием
Я рисую 2 разных буфера вершин в металле, один с текстурой (игнорируя данные о цвете вершин), а другой без текстуры (рисую только данные о цвете вершин): let commandBuffer = self.commandQueue.makeCommandBuffer() let commandEncoder =...
1193 просмотров
schedule 11.04.2024

Металлические ядра некорректно работают на новых графических процессорах MacBook Pro (конец 2016 г.)
Я работаю над проектом macOS, который использует Swift и Metal для обработки изображений на графическом процессоре. На прошлой неделе я получил свой новый 15-дюймовый MacBook Pro (конец 2016 г.) и заметил кое-что странное в моем коде: ядра, которые...
397 просмотров
schedule 22.02.2022

Сколько кадров занимает современный графический конвейер?
Предположим, что конвейер полностью заполнен: графический процессор ожидает vsync, буферы команд графического процессора / драйвера полностью заполнены, и, таким образом, пользовательская программа заблокирована. Сколько кадров данных находится в...
814 просмотров
schedule 19.11.2022

Металлический фреймворк на macOS
Я создаю простой дисплей текстуры, который по существу отображает кадры видео в формате BGRA через дисплей Metal. Я выполняю те же шаги, что и в сеансе Metal WWDC. Но у меня проблемы с созданием кодировщика рендеринга. Мой код id...
623 просмотров
schedule 18.12.2022

Как получить доступ к переданным данным фрагментного шейдера в Metal?
Так же, как вы используете квалификатор [[ buffer(n) ]] для доступа к информации, передаваемой в вершинный шейдер в Metal, как я могу передать данные с помощью setFragmentBuffer или setFragmentBytes ? buffer не является допустимым...
192 просмотров
schedule 01.06.2022

Как использовать собственные вычислительные шейдеры с использованием металла и добиться очень плавной работы?
Я пытаюсь применить фильтры живой камеры через металл, используя стандартные MPSKernal фильтры, предоставленные Apple и пользовательские compute Shaders . В вычислительном шейдере я сделал внутреннее кодирование с помощью MPSImageGaussianBlur, и...
1358 просмотров