iOS Broadcast
3.4K subscribers
1.76K photos
85 videos
997 links
Подборка новостей и статей для iOS разработчиков.

Новости Kotlin и мультиплатформы @kotlin_broadcast
Новости Android @android_broadcast
Реклама и прочее @ab_manager
Download Telegram
🥽 RealityKit. Симуляция стекла через прозрачные объекты
На старте карьеры, после получения навыков iOS разработки, я заинтересовался разработкой игр. Собрал несколько демок в Unity, реализовал проект с одногрупниками по замене старого тренажера современной игрой и потерял интерес. Я понял что в разработке игр нет никакой магии, но много костылей. Vision Pro возродил интерес к этой области. Просто посмотрите, как это красиво!

🔵Рендеринг прозрачных объектов в 3D-системах сложен. Стекло является наиболее распространенным прозрачным предметом. Эту задачу обычно решают через прозрачные объекты. В этом подходов множество нюансов
🔵При низкой металлизации - стекло потеряет отражения, при высокой - станет слишком темным.
🔵Непрозрачность стекла: слишком высокая - стекло будет выглядеть твердым и потеряет прозрачность, слишком низкая - стекло станет слишком прозрачным и потеряет отражения
🔵Стеклянные предметы, созданные таким образом, выглядят искусственно.
🔵Имитация преломления стекла с помощью излучения окружающей среды - лучший подход.
🔵Преломление фона можно смоделировать, контролируя нормали отражения.
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
👍2
📱 Изучаем интерактивные Bottom Sheets в SwiftUI

Как это часто бывает, Apple добавила Bottom Sheets компонент в свои приложения без добавления в UIKit и только после того как он "настоялся" сделала его публичным. На WWDC21появился компонент для UIKit, а в iOS 16 для SwiftUI добавили возможность презентации presentationDetents(_:). Каким бы простым этот компонент не казался, кроличья нора по его настройке и кастомизации - гигантская:
🟢SwiftUI имеет Bottom Sheets разных размеров
🟢Bottom Sheet автоматически упорядочиваются снизу вверх
🟢Индикатор перетаскивания на листе регулируется автоматически в зависимости от количества Bottom Sheets
🟢Динамическое управление высотой Bottom Sheet возможно с помощью привязки
🟢Предотвращение скрытия Bottom Sheets возможно с помощью модификатора interactiveDismissDisabled(_:)
🟢Фоновое взаимодействие с Bottom Sheet возможно с помощью модификатора presentationBackgroundInteraction(_:)

Автор собрал все эти нюансы в одной статье, удобно 👍
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
👍2
▶️ SwiftUI Charts нововведения в iOS 18
Swift Charts — это библиотека для создания графиков с помощью SwiftUI.

Основные нововведения:
🔵Построение математических функций. Теперь можно строить графики математических функций прямо в приложениях. Для этого добавлены новые API: LinePlot для построения одной функции и AreaPlot для заполнения области между двумя функциями.
🔵Векторизованные API для построения графиков. Позволяют обрабатывать большие наборы данных более эффективно.
🔵Доступность. Все графики доступны для людей с ограниченными возможностями благодаря поддержке Voice Over и Audio Graph. Можно настраивать внешний вид графиков с помощью модификаторов.
🔵Построение параметрических и кусочно-заданных функций. Можно строить графики функций, заданных параметрически, и кусочно-заданных функций.
🔵Векторизованные API для всех остальных типов меток. Позволяют обрабатывать большие наборы данных более эффективно.
🔵Новые API для построения графиков: PointPlot, RectanglePlot и другие.
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥8👍1
🎹 Создание пользовательских визуальных эффектов в SwiftUI
Очень вдохновляющее видео с WWDC24 с множеством примеров создания визуальных эффектов, мелкие детали могут иметь большое значение, а визуальные эффекты могут показать, что функция работает должным образом:
🟢Прокрутка. Прокрутка используется в большинстве приложений. SwiftUI предоставляет автоматическую поддержку для прокрутки. Модификатор scrollTransition позволяет создавать уникальные эффекты прокрутки.
🟢Визуальные эффекты. Модификатор visualEffect позволяет изменять визуальные свойства в зависимости от положения и размера. Визуальные эффекты должны быть приятны в использовании и не отвлекать внимание.
🟢Цветовые эффекты. Цвет играет важную роль в интерфейсе. SwiftUI поддерживает различные типы градиентов и режимы наложения. Градиентые сетки полезны для создания динамичных фонов.
🟢Пользовательские переходы. Кастомные переходы помогают сообщить о происходящих изменениях
🟢Текстовые переходы. Текстовые переходы могут быть использованы для динамичного отображения информации. Использование TextRenderer для анимации текста. Метод draw(layout:in:) позволяет анимировать текст построчно.
🟢Использование шейдеров в SwiftUI. Шейдеры позволяют создавать более выразительные анимации и запускаются на графическом процессоре
🟢Создание эффекта слоя. Создан эффект слоя для реакции на касания. Разработана формула для вычисления искажений пикселей. Вызвана шейдерная функция из SwiftUI для применения эффекта.

Призыв к действию:
🟣Экспериментируйте с эффектами прокрутки
🟣Использовать градиентные сетки
🟣Настраивайте переходы между экранами
🟣Оживляйте текст с помощью нового API
🟣Создавайте новые анимации с помощью шейдеров
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
👍10🔥32