ARKit — qué es, conceptos clave y tecnología AR

Autor: IT Sectr Publicado: 2026-03-25 Tiempo de lectura: 8 min

El framework ARKit es la plataforma de realidad aumentada de Apple que permite a los desarrolladores crear aplicaciones AR para iOS sin conocimientos profundos de visión por computadora. Según Apple ARKit Documentation, 2025, el framework utiliza Visual-Inertial Odometry para el seguimiento preciso de la posición del dispositivo en el espacio sin marcadores externos. La comprensión semántica de la escena permite reconocer planos horizontales y verticales, determinar la iluminación y colocar objetos virtuales en el entorno real.

Puntos clave

  • ARKit — el framework de realidad aumentada de Apple para iOS, presentado en 2017 con iOS 11.
  • Motion Tracking — tecnología para rastrear la posición del dispositivo en el espacio sin balizas externas.
  • Scene Understanding — reconocimiento de planos, límites y objetos en el entorno real del usuario.
  • ARAnchor — un objeto que fija la posición del contenido virtual en la escena real.
  • ARSCNView — la clase principal para renderizar contenido 3D basado en SceneKit.

¿Qué es ARKit?

ARKit es el framework de realidad aumentada de Apple, anunciado en la WWDC 2017 junto con iOS 11. Combina las capacidades de la cámara, el coprocesador de movimiento de la serie M y el motor neuronal de los chips A para ofrecer una experiencia AR inmersiva sin necesidad de hardware especializado — solo un iPhone o iPad.

ARKit utiliza Visual-Inertial Odometry (VIO), que combina datos de la cámara y los sensores inerciales de Core Motion para rastrear con precisión el movimiento del dispositivo en el espacio. VIO permite al framework comprender dónde se encuentra el dispositivo en relación con su entorno sin usar GPS ni marcadores externos.

Según Apple WWDC 2024, ARKit 6 es compatible con dispositivos con chip A12 y posteriores (iPhone XS, iPad Pro 2018+). El número de aplicaciones AR en la App Store ha superado las 15,000, y el área total de planos reconocidos en todas las sesiones AR supera los 100 mil millones de metros cuadrados.

Evolución de ARKit

A lo largo de seis versiones, ARKit ha recibido mejoras significativas: ARKit 1.0 (iOS 11) — seguimiento básico y reconocimiento de planos; ARKit 2.0 — sesiones AR compartidas mediante ARWorldMap y detección de objetos 3D; ARKit 3.0 — seguimiento del cuerpo humano, segmentación de personas y cámaras frontal y trasera simultáneas.

ARKit 4.0 introdujo el escáner LiDAR para la determinación instantánea de profundidad y oclusión de objetos, así como Location Anchor para vincular contenido AR a coordenadas GPS. ARKit 6 añadió video 4K con HDR, Plane Estimation con LiDAR y una mejor gestión de la oclusión.

swift
import ARKit

let configuration = ARWorldTrackingConfiguration()
configuration.planeDetection = [.horizontal, .vertical]
configuration.environmentTexturing = .automatic

let arView = ARSCNView(frame: view.bounds)
arView.session.run(configuration)
arView.debugOptions = [.showFeaturePoints]
view.addSubview(arView)

Cómo funciona ARKit

ARKit opera a través de un bucle de sesión AR, que se inicia con una configuración y analiza continuamente el flujo de video de la cámara. En cada fotograma, el framework calcula la posición del dispositivo (6 grados de libertad), actualiza el mapa de planos reconocidos y ajusta las posiciones de los objetos virtuales — todo a 60 fotogramas por segundo.

El proceso VIO consta de dos tuberías paralelas: el algoritmo de odometría visual rastrea el movimiento de los puntos característicos entre fotogramas, mientras que los sensores inerciales de Core Motion predicen el movimiento en intervalos cortos cuando la cámara se mueve rápidamente o la imagen está borrosa. La combinación de ambos métodos proporciona una precisión de seguimiento de hasta 1 centímetro.

Según Apple, ARKit procesa hasta 500 puntos característicos por fotograma, y el mapa del entorno (ARWorldMap) puede alcanzar hasta 100 metros de diámetro. El escaneo del entorno y la construcción del mapa toma aproximadamente 2–3 segundos después de iniciar la sesión — durante este tiempo ARKit acumula datos de la cámara y los sensores.

ARAnchor y colocación de objetos

ARAnchor es un objeto clave para colocar contenido. Cuando ARKit reconoce un plano, crea un ARPlaneAnchor que especifica la posición, el tamaño y la orientación de la superficie. El desarrollador responde al delegado session(_:didAdd:) y coloca el objeto 3D en la ubicación del plano detectado usando SceneKit o RealityKit.

Para implementar el arrastre de objetos, se utiliza ARHitTestResult: al tocar la pantalla, se realiza un hit-test a través del fotograma de ARKit, que devuelve el punto de intersección del rayo con los planos reconocidos. El punto encontrado se convierte en un ARAnchor y el objeto se fija en esa posición.

swift
func renderer(
    _ renderer: SCNSceneRenderer,
    didAdd node: SCNNode,
    for anchor: ARAnchor
) {
    guard let planeAnchor = anchor
        as? ARPlaneAnchor else { return }

    let boxNode = SCNNode(
        geometry: SCNBox(
            width: planeAnchor.extent.x,
            height: 0.01,
            length: planeAnchor.extent.z,
            chamferRadius: 0
        )
    )
    node.addChildNode(boxNode)
}

Funcionalidades clave de ARKit

ARKit proporciona un conjunto de tecnologías que hacen que la realidad aumentada sea realista y funcional: seguimiento de movimiento con 6 grados de libertad, comprensión de la escena mediante el reconocimiento de planos y límites, estimación de iluminación para un sombreado correcto, oclusión de personas y superficies reflectantes basadas en mapas del entorno.

Motion Capture (ARKit 3+) — tecnología para rastrear el cuerpo humano en tiempo real a través de la cámara. Permite animar personajes con los movimientos del usuario sin sensores externos: se reconocen 18 articulaciones a 60 Hz. Se utiliza en aplicaciones de fitness y para la creación de prototipos de animación.

Las sesiones AR compartidas (ARKit 2+) permiten que varios dispositivos vean los mismos objetos virtuales en un espacio compartido. ARWorldMap guarda el mapa del entorno, que se transmite a otros dispositivos a través de la red. Apple cita un ejemplo de precisión de sincronización: dos iPhone 12 Pro en la misma sala ven el objeto con una desviación de no más de 2 centímetros.

Trabajo con LiDAR

El escáner LiDAR, integrado en el iPhone 12 Pro y posteriores, cambia drásticamente las capacidades de ARKit. En lugar de la determinación de profundidad basada en software mediante análisis de imágenes, LiDAR proporciona instantáneamente un mapa de profundidad con una precisión de hasta 3 centímetros en un rango de hasta 5 metros. Esto permite a ARKit reconocer planos al instante, sin escaneo previo de la cámara.

Con LiDAR, ARKit puede determinar la oclusión de objetos: un objeto virtual puede ocultarse detrás de una silla o mesa real. Además, Scene Reconstruction construye una malla 3D del entorno en tiempo real — hasta 10 millones de polígonos por habitación, utilizada para la simulación de física de colisiones y la iluminación realista.

swift
// Configuración para LiDAR
let lidarConfig = ARWorldTrackingConfiguration()
lidarConfig.planeDetection = [.horizontal]
lidarConfig.sceneReconstruction = .mesh

arView.session.run(lidarConfig)

// Detección de toque en plano
override func touchesBegan(
    _ touches: Set<UITouch>,
    with event: UIEvent?
) {
    let location = touches.first?.location(in: arView)
    guard let hitPoint = location else { return }

    let results = arView
        .raycastQuery(
            from: hitPoint,
            allowing: .existingPlaneInfinite,
            alignment: .horizontal
        )
}

Integración de ARKit en una aplicación

La integración de ARKit comienza con los requisitos mínimos: Xcode 15+, SDK de iOS 17, un dispositivo con chip A12 Bionic o superior. Se debe agregar la clave NSCameraUsageDescription en Info.plist — ARKit usa la cámara para el seguimiento y la visualización de la escena AR. Sin esta clave, la aplicación fallará al iniciar una sesión AR.

Para el renderizado de contenido, iOS ofrece tres frameworks: SceneKit para gráficos 3D de complejidad media, RealityKit para renderizado fotorrealista con materiales PBR y Metal para máximo rendimiento. RealityKit es la opción recomendada para nuevos proyectos, ya que incluye soporte integrado para las funciones de ARKit, animación y física.

Según Apple, el tiempo promedio para integrar una pantalla AR básica en una aplicación existente es de aproximadamente 2 horas para un desarrollador iOS experimentado. Las principales dificultades surgen al trabajar con la superposición de elementos de UI en la escena AR y al manejar las interrupciones de la sesión AR — llamadas, cambio de aplicaciones o pérdida de seguimiento con poca luz.

Manejo de errores y fallos

ARKit puede perder el seguimiento en varias situaciones: iluminación insuficiente (menos de 100 lux), falta de puntos característicos (paredes monocromáticas), movimientos rápidos de la cámara u obstrucción del lente. El ARSessionDelegate proporciona métodos para manejar estos estados — se recomienda mostrar indicaciones al usuario: “Mueva el dispositivo más lentamente” o “Encienda la luz.”

Para la recuperación después de un fallo, ARKit inicia automáticamente la reubicación — intenta coincidir el flujo de video actual con el mapa del entorno guardado. Si la reubicación no es posible, la sesión se reinicia con una nueva configuración. Se recomienda guardar el ARWorldMap al salir de la aplicación para una rápida restauración de la escena AR al regresar.

swift
class ARViewController: UIViewController {

    let arView = ARSCNView()

    override func viewDidLoad() {
        super.viewDidLoad()
        arView.session.delegate = self

        let config = ARWorldTrackingConfiguration()
        config.planeDetection = [.horizontal]
        config.frameSemantics = .personSegmentation
        arView.session.run(config)
    }

    func sessionWasInterrupted(
        _ session: ARSession
    ) {
        showAlert("Sesión interrumpida")
    }
}

Preguntas frecuentes

¿En qué dispositivos funciona ARKit?

ARKit funciona en dispositivos Apple con chip A12 Bionic y posteriores: iPhone XS, XR, 11, 12, 13, 14, 15, 16 y SE (2.ª y 3.ª generación), iPad Pro 2018+, iPad Air 2020+, iPad mini 2021+. Las funciones LiDAR requieren iPhone 12 Pro/Pro Max, iPhone 13 Pro/Pro Max, iPhone 14 Pro/Pro Max, iPhone 15 Pro/Pro Max y iPad Pro 2020+.

¿Se puede usar ARKit sin SceneKit o RealityKit?

Sí, ARKit se puede usar con Metal directamente, pero esto requiere escribir shaders y renderizado personalizados. SceneKit y RealityKit proporcionan soluciones listas para usar con integración de ARKit a nivel de framework. Para principiantes, RealityKit es la opción óptima, ya que maneja automáticamente las funciones de ARKit.

¿Cómo maneja ARKit los cambios de iluminación?

ARKit evalúa automáticamente la iluminación de la escena a través de la cámara y proporciona datos sobre la dirección, intensidad y temperatura de color de la fuente de luz mediante AREnvironmentProbeAnchor. Esto permite que los objetos virtuales proyecten sombras correctamente y reflejen el entorno, creando una fusión realista con el mundo real.

¿En qué se diferencia ARKit de ARCore?

ARKit funciona solo en iOS y utiliza Visual-Inertial Odometry para el seguimiento, mientras que ARCore de Google funciona en Android y utiliza su propio Motion Tracking basado en IMU y cámara. ARKit tiene ventaja gracias a la integración de hardware con los chips de Apple, mientras que ARCore ofrece capacidades multiplataforma a través de Cloud Anchors.

¿Se puede usar ARKit para crear juegos?

Sí, ARKit es ideal para juegos AR. SceneKit y RealityKit admiten física (SCNPhysicsBody, PhysicsSimulation), animación, sonido y partículas. Ejemplos conocidos incluyen Pokémon GO (usa su propio motor con ARKit), Angry Birds AR y Lego AR Studio. ARKit también admite sesiones multijugador a través de ARWorldMap.

Resumen

  • ARKit — el framework de realidad aumentada de Apple basado en Visual-Inertial Odometry de 2017.
  • 6 grados de libertad — seguimiento preciso de la posición del dispositivo en el espacio tridimensional.
  • SceneKit y RealityKit — dos frameworks para renderizar contenido AR con diferentes niveles de complejidad.
  • LiDAR proporciona determinación instantánea de profundidad y reconstrucción del entorno en dispositivos Pro.
  • Sesiones compartidas permiten que varios usuarios vean los mismos objetos AR.
  • Motion Capture rastrea 18 articulaciones del cuerpo para la animación de personajes en tiempo real.

Desarrollaremos una aplicación móvil llave en mano

IT Sectr crea aplicaciones para iOS y Android para startups y empresas desde 2017. Le asesoraremos y le propondremos la mejor solución.

Discutir el proyecto

Lea también