Kotlin/Swift (iOS) Туда и Обратно
36 subscribers
128 photos
21 videos
9 files
85 links
Канал - журнал, рассказывающий об опыте изучения Swift & iOS backend-разработчиком на Java & Kotlin
Download Telegram
This media is not supported in your browser
VIEW IN TELEGRAM
Наконец дошли руки до Metal и шейдеров

Давно хотел разобраться с тем, что такое шейдеры. А тут ещё и на iOS.

Оказывается концепция простая, но очень мощьная. Если кратко, то шейдер это программа выполняемая на GPU, обрабатывающая пиксель или вершину. Обработка идёт в параллель, поэтому всё происходит так быстро.

Основные функции шейдера:
🔸 покрасить пиксель, зная только цвет текущего пикселя
🔸 изменить положение пикселя

Разбирался по статье: https://blog.jacobstechtavern.com/p/metal-in-swiftui-how-to-write-shaders. Доступно и с качественными примерами 👍

Эти примеры сделаны на iOS 17, используя iOS 15, всё выходит сильно сложнее, в плане заставить шейдеры отображаться (в статье не описано). Я попробовал самостоятельно, но у меня не получилось заставить MTKView работать. На 17 всё достаточно просто:

view.colorEffect(
ShaderLibrary.glowEdge(
.float(startDate.timeIntervalSinceNow),
.float2(viewSize)
)
)


#metal #shader
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥2