Как добиться эффекта размытия для представлений виртуального пользовательского интерфейса в ARKit, например Apple VisionIOS

Программируем под IOS
Ответить Пред. темаСлед. тема
Anonymous
 Как добиться эффекта размытия для представлений виртуального пользовательского интерфейса в ARKit, например Apple Vision

Сообщение Anonymous »

Я работаю над приложением на основе ARKit, в котором хочу создать виртуальное представление с эффектом размытия, аналогичным тому, что показано в Apple Vision Pro. Однако в настоящее время я могу добиться только изменения непрозрачности, и моя реализация приводит к черной плоскости, а не к правильному размытию. Ниже я поделился своим кодом для создания самолета и добавления его в AR-сцену.

Код создания самолета:

Я использую следующую функцию для создания плоского объекта заданного цвета:

Код: Выделить всё

func createSmallPlaneEntity(baseEntry: ModelEntity, index: Int) -> ModelEntity {
let planeMesh = MeshResource.generatePlane(width: 0.1, height: 0.1)
var material = UnlitMaterial()
material.baseColor = MaterialColorParameter.color(index == 1 ? .blue : index == 2 ? .red : .green)

let planeEntity = ModelEntity(mesh: planeMesh, materials: [material])
planeEntity.move(to: Transform(pitch: 0, yaw: 0, roll: 0), relativeTo: baseEntry, duration: 1.5, timingFunction: .easeInOut)

return planeEntity
}

Добавление самолета в сцену AR:

Я использую следующий код, чтобы добавить объект плоскости в мою сцену AR:

Код: Выделить всё

let arView = ARView(frame: .zero)

// Configure AR session
let config = ARWorldTrackingConfiguration()
arView.session.run(config)

// Create a blurred plane entity
let planeEntity = createBlurredPlaneEntity()
planeEntity.position = [0.0, 0, 0.04]

let anchor = AnchorEntity(world: [0, 0, 0])
anchor.addChild(planeEntity)
arView.scene.addAnchor(anchor)
Несмотря на настройку baseColor с прозрачностью, я не могу воспроизвести эффект размытия, наблюдаемый в пользовательском интерфейсе Apple Vision Pro. Вместо этого мне удается применить только прозрачную или сплошную цветную плоскость. Я приложил скриншот, показывающий мою текущую реализацию в сравнении с желаемым эффектом в Apple Vision Pro.

Мои вопросы:

  • Как создать размытый стеклоподобный материал или Эффект размытия по Гауссу на виртуальной плоскости в ARKit с использованием RealityKit?
  • Есть ли способ применить эффекты размытия в реальном времени или получить доступ к Информацию о глубине ARKit для имитации размытия объектов за плоскостью?
Я ищу решения, которые не использовать предварительно обработанные текстуры или статические изображения, так как мне нужно, чтобы размытие было динамичным и интерактивный.
Чего я пытаюсь достичь.
Изображение

Чего я достиг.
[img]https://i.sstatic.net /Z4KGdTzm.png[/img]


Подробнее здесь: https://stackoverflow.com/questions/793 ... vision-pro
Реклама
Ответить Пред. темаСлед. тема

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

  • Похожие темы
    Ответы
    Просмотры
    Последнее сообщение

Вернуться в «IOS»