ARKit — mi ez, kulcsfogalmak és AR technológia

Szerző: IT Sectr Megjelenés: 2026-03-25 Olvasási idő: 8 perc

Az ARKit keretrendszer — az Apple kiterjesztett valóság platformja, amely lehetővé teszi a fejlesztők számára, hogy AR alkalmazásokat hozzanak létre iOS-re mély számítógépes látás ismeretek nélkül. A Apple ARKit Documentation, 2025 szerint a keretrendszer Visual-Inertial Odometry-t használ az eszköz pozíciójának pontos követésére a térben külső markerek nélkül. A jelenet szemantikus megértése lehetővé teszi a vízszintes és függőleges síkok felismerését, a megvilágítás meghatározását és a virtuális objektumok elhelyezését a valós környezetben.

Főbb pontok

  • ARKit — az Apple keretrendszere kiterjesztett valósághoz iOS-en, 2017-ben mutatták be az iOS 11-gyel.
  • Motion Tracking — technológia az eszköz térbeli pozíciójának követésére külső jelzők nélkül.
  • Scene Understanding — síkok, határok és objektumok felismerése a felhasználó valós környezetében.
  • ARAnchor — objektum, amely rögzíti a virtuális tartalom pozícióját a valós jelenetben.
  • ARSCNView — a fő osztály a 3D tartalom SceneKit-alapú megjelenítéséhez.

Mi az ARKit?

ARKit — az Apple kiterjesztett valóság keretrendszere, amelyet a WWDC 2017-en jelentettek be az iOS 11-gyel együtt. Egyesíti a kamera, az M-sorozatú mozgásprocesszor és az A-chipek neurális motorjának képességeit, hogy immerszív AR élményt hozzon létre speciális hardver nélkül — csak iPhone vagy iPad szükséges.

Az ARKit a Visual-Inertial Odometry (VIO) technológiát használja, amely egyesíti a kamera és a Core Motion inerciális érzékelők adatait az eszköz térbeli mozgásának pontos követéséhez. A VIO lehetővé teszi a keretrendszer számára, hogy megértse, hol van az eszköz a környezethez képest, GPS vagy külső markerek használata nélkül.

Az Apple WWDC 2024 szerint az ARKit 6 A12 chipes és újabb eszközökön támogatott (iPhone XS, iPad Pro 2018+). Az AR alkalmazások száma az App Store-ban meghaladta a 15 ezret, és az összes AR munkamenetben felismert síkok teljes területe meghaladja a 100 milliárd négyzetmétert.

Az ARKit fejlődése

Hat verzió alatt az ARKit jelentős fejlesztéseket kapott: ARKit 1.0 (iOS 11) — alapvető követés és síkfelismerés; ARKit 2.0 — megosztott AR munkamenetek ARWorldMap-en keresztül és 3D objektumok észlelése; ARKit 3.0 — az emberi test követése, személyek szegmentálása és egyidejű első és hátsó kamerák.

Az ARKit 4.0 bevezette a LiDAR Scanner-t az objektumok mélységének és átlátszatlanságának azonnali meghatározásához, valamint a Location Anchor-t az AR tartalom GPS koordinátákhoz kapcsolásához. Az ARKit 6 4K videót HDR-rel, Plane Estimation-t LiDAR segítségével és továbbfejlesztett okklúziós feldolgozást adott hozzá.

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)

Hogyan működik az ARKit

ARKit egy AR munkamenet cikluson keresztül működik, amely egy konfigurációval indul el és folyamatosan elemzi a kamera videó streamjét. Minden képkockában a keretrendszer kiszámítja az eszköz pozícióját (6 szabadságfok), frissíti a felismert síkok térképét és korrigálja a virtuális objektumok pozícióját — mindezt 60 képkocka/másodperc frekvencián.

A VIO folyamat két párhuzamos adatfolyamból áll: a vizuális odometria algoritmus követi a jellemző pontok (feature points) mozgását a képkockák között, a Core Motion inerciális érzékelők pedig rövid időközönként előrejelzik a mozgást, amikor a kamera gyorsan mozog vagy a kép elmosódott. A két módszer kombinációja akár 1 centiméteres követési pontosságot biztosít.

Az Apple szerint az ARKit akár 500 jellemző pontot is feldolgoz képkockánként, és a környezeti térkép (ARWorldMap) mérete elérheti a 100 méter átmérőt. A környezet beolvasása és a térkép felépítése körülbelül 2-3 másodpercet vesz igénybe a munkamenet elindítása után — ezalatt az ARKit adatokat gyűjt a kamerától és az érzékelőktől.

ARAnchor és objektumok elhelyezése

ARAnchor — a kulcsfontosságú objektum a tartalom elhelyezéséhez. Amikor az ARKit felismer egy síkot, létrehoz egy ARPlaneAnchor-t a felület pozíciójának, méretének és orientációjának megadásával. A fejlesztő reagál a session(_:didAdd:) delegáltra, és elhelyezi a 3D objektumot a sík észlelésének helyén SceneKit vagy RealityKit segítségével.

Az objektumok húzásának megvalósításához ARHitTestResult-ot használnak: a képernyő megérintésekor hit-test fut le az ARKit képkockán keresztül, amely visszaadja a sugár és a felismert síkok metszéspontját. A megtalált pont ARAnchor-vá alakul, és az objektum ebben a pozícióban rögzül.

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)
}

Az ARKit főbb képességei

ARKit olyan technológiák készletét kínálja, amelyek a kiterjesztett valóságot valósághűvé és funkcionálissá teszik: mozgáskövetés 6 szabadságfokkal, a jelenet megértése síkok és határok felismerésén keresztül, megvilágítás becslése a helyes árnyékvetéshez, személyek okklúziója és tükröződő felületek környezeti térképek alapján.

Motion Capture (ARKit 3+) — technológia az emberi test valós idejű követésére a kamerán keresztül. Lehetővé teszi karakterek animálását a felhasználó mozgásával külső érzékelők nélkül: 18 ízület felismerése 60 Hz frekvencián. Fitness alkalmazásokban és animáció prototípuskészítéshez használják.

Megosztott AR munkamenetek (ARKit 2+) lehetővé teszik, hogy több eszköz ugyanazokat a virtuális objektumokat lássa egy közös térben. Az ARWorldMap eltárolja a környezeti térképet, amelyet a hálózaton keresztül továbbítanak más eszközöknek. Az Apple példát ad a szinkronizálás pontosságára: két iPhone 12 Pro ugyanabban a szobában legfeljebb 2 centiméteres eltéréssel látja az objektumot.

Munka LiDAR-ral

A iPhone 12 Pro és újabb készülékekbe épített LiDAR szkenner gyökeresen megváltoztatja az ARKit képességeit. A szoftveres mélységmeghatározás helyett a képek elemzésén keresztül, a LiDAR azonnal mélységtérképet biztosít akár 3 centiméteres pontossággal, 5 méteres tartományban. Ez lehetővé teszi az ARKit számára, hogy a síkokat azonnal felismerje, a kamera előzetes letapogatása nélkül.

A LiDAR segítségével az ARKit meghatározhatja az objektumok átlátszatlanságát: egy virtuális tárgy elrejtőzhet egy valódi szék vagy asztal mögött. Emellett a Scene Reconstruction valós időben 3D hálót épít a környezetből — akár 10 millió poligon szobánként, amelyet ütközési fizika szimulációjához és valósághű megvilágításhoz használnak.

swift
// Konfiguráció LiDAR-hoz
let lidarConfig = ARWorldTrackingConfiguration()
lidarConfig.planeDetection = [.horizontal]
lidarConfig.sceneReconstruction = .mesh

arView.session.run(lidarConfig)

// Érintés érzékelése a síkon
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
        )
}

Az ARKit integrálása az alkalmazásba

Az ARKit integrálása minimális követelményekkel kezdődik: Xcode 15+, iOS 17 SDK, A12 Bionic chipes vagy újabb eszköz. Az Info.plist-ben hozzá kell adni az NSCameraUsageDescription kulcsot — az ARKit a kamerát használja az AR jelenet követéséhez és megjelenítéséhez. E kulcs nélkül az alkalmazás hibával fejeződik be az AR munkamenet indításakor.

A tartalom megjelenítéséhez az iOS három keretrendszert kínál: SceneKit közepes komplexitású 3D grafikához, RealityKit fotorealisztikus megjelenítéshez PBR anyagokkal és Metal maximális teljesítményhez. A RealityKit — az ajánlott választás új projektekhez, mivel beépített támogatást tartalmaz az ARKit funkciókhoz, animációhoz és fizikához.

Az Apple szerint az alapszintű AR képernyő meglévő alkalmazásba történő integrálásának átlagos ideje körülbelül 2 óra egy tapasztalt iOS fejlesztő számára. A fő nehézségek a UI elemek AR jelenetre történő rétegezésekor és az AR munkamenet megszakításainak — hívások, alkalmazásváltás vagy követés elvesztése gyenge fényviszonyok mellett — kezelésekor merülnek fel.

Hibák és meghibásodások kezelése

Az ARKit számos helyzetben elveszítheti a követést: elégtelen megvilágítás (kevesebb mint 100 lux), jellemző pontok hiánya (egyszínű falak), a kamera gyors mozgása vagy a lencse eltakarása. Az ARSessionDelegate delegált módszereket biztosít ezen állapotok kezelésére — ajánlott tippeket megjeleníteni a felhasználónak: „Mozgassa az eszközt lassabban” vagy „Kapcsolja be a világítást”.

A meghibásodás utáni helyreállításhoz az ARKit automatikusan elindítja a relokalizációt — megpróbálja összeilleszteni az aktuális videó streamet a mentett környezeti térképpel. Ha a relokalizáció nem lehetséges, a munkamenet új konfigurációval indul újra. Ajánlott az ARWorldMap mentése az alkalmazásból való kilépéskor az AR jelenet gyors visszaállításához való visszatéréskor.

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("Munkamenet megszakítva")
    }
}

Gyakran ismételt kérdések

Milyen eszközökön működik az ARKit?

Az ARKit A12 Bionic chippel és újabb Apple eszközökön működik: iPhone XS, XR, 11, 12, 13, 14, 15, 16 és SE (2. és 3. generáció), iPad Pro 2018+, iPad Air 2020+, iPad mini 2021+. A LiDAR funkciókhoz iPhone 12 Pro/Pro Max, iPhone 13 Pro/Pro Max, iPhone 14 Pro/Pro Max, iPhone 15 Pro/Pro Max és iPad Pro 2020+ szükséges.

Használható az ARKit SceneKit vagy RealityKit nélkül?

Igen, az ARKit használható közvetlenül Metallal, de ez saját shader és renderelő írását igényli. A SceneKit és RealityKit kész megoldásokat kínálnak ARKit integrációval keretrendszer szinten. Kezdőknek a RealityKit az optimális választás, mivel automatikusan kezeli az ARKit funkciókat.

Hogyan kezeli az ARKit a megvilágítás változását?

Az ARKit automatikusan értékeli a jelenet megvilágítását a kamerán keresztül, és adatokat szolgáltat a fényforrás irányáról, intenzitásáról és színhőmérsékletéről az AREnvironmentProbeAnchor segítségével. Ez lehetővé teszi a virtuális objektumok számára, hogy helyesen vessenek árnyékot és tükrözzék a környezetet, valósághű összeolvadást teremtve a valós világgal.

Miben különbözik az ARKit az ARCore-tól?

ARKit csak iOS-en működik és Visual-Inertial Odometry-t használ a követéshez, míg a Google ARCore Androidon működik és saját, IMU-n és kamerán alapuló Motion Tracking-et használ. Az ARKit előnye az Apple chipekkel való hardveres integrációnak köszönhető, az ARCore-é pedig a többplatformos támogatás a Cloud Anchors segítségével.

Használható az ARKit játékok készítésére?

Igen, az ARKit ideális AR játékokhoz. A SceneKit és RealityKit támogatja a fizikát (SCNPhysicsBody, PhysicsSimulation), animációt, hangot és részecskéket. Ismert példák — Pokémon GO (saját motort használ ARKit-tal), Angry Birds AR és Lego AR Studio. Az ARKit támogatja a többjátékos munkameneteket is ARWorldMap-en keresztül.

Összefoglalás

  • ARKit — Apple kiterjesztett valóság keretrendszer Visual-Inertial Odometry alapon 2017-ből.
  • 6 szabadságfok — az eszköz pozíciójának pontos követése a háromdimenziós térben.
  • SceneKit és RealityKit — két keretrendszer AR tartalom megjelenítéséhez különböző komplexitási szinteken.
  • LiDAR azonnali mélységmeghatározást és környezeti rekonstrukciót biztosít Pro eszközökön.
  • Megosztott munkamenetek lehetővé teszik, hogy több felhasználó ugyanazokat az AR objektumokat lássa.
  • Motion Capture 18 testízületet követ a karakterek valós idejű animációjához.

Kulcsrakész mobilalkalmazást fejlesztünk

Az IT Sectr 2017 óta készít iOS és Android alkalmazásokat induló vállalkozásoknak és vállalkozásoknak. Tanácsot adunk, és a legjobb megoldást javasoljuk.

Projekt megbeszélése

Olvassa el is