ARKit: Temel Bilgiler

Apple’ın arttırılmış gerçeklik kütüphanesi ile uygulamalarınızı gerçek dünyaya göre geliştirin.

Rana Taki
TurkishKit
4 min readApr 6, 2020

--

Merhaba TurkishKit okuyucuları!👋 Arttırılmış gerçeklik konusu ne kadar karmaşık duyuluyor olsa bile aslında bu kütüphane ile çok basitleştiriliyor. Yani ARKit diyip hemen korkmayın, bu makale serisi ile ARKit uygulamaları yazabileceksiniz 😉. Bu makalede, arttırılmış gerçekliğin ne olduğuna bakacağız ve ARKit kütüphanesini yüzeysel bir şekilde inceleyeceğiz.

Arttırılmış Gerçeklik Nedir?

Arttırılmış gerçeklik, cihazın kamerasıyla dijital dünyayı gerçek dünyaya entegre etmek için kullanılır. Bu kullanıcının dijital dünya deneyiminin kalitesini arttırır ve daha ilginç kılar. Arttırılmış gerçeklik, gerçek dünyada erişemediğimiz çoğu unsuru kullanıcının cihazı ve yazılım aracılığıyla gerçek dünyaya getirir.

ARKit Nedir?

ARKit, arttırılmış gerçeklik konusunu Swift diline entegre etmek için Apple’ın geliştirdiği bir kütüphanedir. ARKit aracılığıyla, arttırılmış gerçeklik uygulamaların kodlanması çok daha basitleşmiş, ulaşılabilirliği artmıştır. Uygulamalarınızda ARKit kullanarak kullanıcınızı kolaylıkla etkileyebilirsiniz!

AR Kullanan Uygulamalar

Snapchat ve Instagram

Herkesin çok haşır neşir olduğu yüz filtreleri bir AR örneğidir! Daha önce yaptıysanız bu konu ile ilgili biraz da olsun bilginiz vardır. Bu filtreler kullanıcının yüzünü algılar, ve yüzünün konumuna göre ortama 3 boyutlu veya 2 boyutlu nesneler ekler.

Instagram ve Snapchat uygulamalarındaki AR filtreler.

IKEA Place

Evinize eşya alırken nasıl gözükeceğini bilmek, o eşyayı almadan önce size iyi bir yönlendirme olurdu. Ikea dükkanını evinize getiremezsiniz, ancak bu uygulama öyle yapıyor. AR özelliğini kullanarak adeta IKEA’nın eşyalarını evinize getiriyor ve istediğiniz köşeye koymanızı sağlıyor. Böylece siz de gönül rahatlığıyla evinize eşya seçebilir hale geliyorsunuz.

Pokemon GO

Herkesin bir aralar bağımlı olduğu oyun Pokemon GO da AR kullanır. Dünya’da her yere kendi 3 boyutlu karakterlerini entegre etmiş oyun, adeta Pokemon’un dünyasını hayata getirmiştir. Bu da kullanıcının yerini algılar, ve dünyadaki konumuna göre kendi karakterlerine erişimini sağlar.

ARKit Kütüphanesinin 2 Temel Başlığı

ARKit kütüphanesi 2 temel özelliğin birbiriyle uyum içinde çalışmasıyla çalışır. Bunlar, konum algılama ve entegre etmektir.

Konum Algılama (Tracking)

Bu özellik, cihazınızın konumunu anlamak için kullanılır. ARKit kütüphanesinin kameranızdan etrafınıza herhangi bir nesne entegre edebilmesi için öncellikle konumunuzu bilmesi gerekir. Konum algılama özelliği etrafınızdaki objeleri de algılar ve buna göre uygulamanızı nesneleri entegre etmesi gereken yerlere yönlendirir. Kütüphanede, konumunuzu takip etmek için kullanılan bazı özellikler şöyledir:

ARWorldTrackingConfiguration: Cihazın kamerasından görülen dünyayı algılar. Farklı yüzeyler veya gerçek hayatta bulunan objeler bu özelliği kullanarak algılanır.

ARBodyTrackingConfiguration: Cihazınızın kamerasından etrafınızdaki ortamı değil, vücudunuzu algılar. El kaldırma, yürüme veya zıplama gibi hareketler bu özellikle algılanır.

ARFaceTrackingConfiguration: Cihazınızın kamerasının görüş alanında olan yüzleri algılamak için kullanılır. Yüzünüzle yaptığınız herhangi bir mimik veya ifadeyi algılama bu özellikle gerçekleşir.

Entegre Etmek (Rendering)

ARKit kütüphanesi kodunuzda bulunan 3 boyutlu dijital nesneleri gerçek hayata entegre eder. Bu kategorinin altına, 3 boyutlu obje oluşturmak ve ona bir hareket katmak girebilir. Aynı zamanda entegre etme başlığının en önemli özelliklerinden biri ise ortama 3 boyutlu objenin gözükebilmesi için dijital dünyadan ışık katmaktır. Bu noktadaki her şey bilgisayarınızın ARKit arayüzünde gerçekleşir, yani tamamen dijital dünyada gerçekleşir. Gerçek dünyaya bir obje entegre ederken uygulamanız, konum algılamanın verdiği sonuçlardan yararlanır.

ARKit Hangi Cihazlarda Çalışır?

Maalesef ki ARKit kütüphanesi çok fazla bilgisayar gücü gerektirdiğinden her cihazda çalışamaz. ARKit uygulamanızı çalıştırmak için kameraya da ihtiyacınız olduğu için bu, Xcode’un simülatöründe çalışamaz. Bir ARKit uygulaması için ihtiyacınız olanlar:

  • Xcode 10 veya üstü
  • iOS 11 veya üstü
  • iPad 2017 veya üstü / herhangi bir iPad Pro modeli
  • iPhone SE, 6S veya üstü

ARKit Arayüzünü Tanımak

Son olarak, ARKit konusunda biraz daha ilerlemeden çalışacağımız ortamı biraz tanıyalım. Bilgisayarınızda Xcode 10 veya üstü olmalıdır. Buradan yeni bir Xcode projesine başlamanız gerekecektir. Buna “deneme” adı verebilirsiniz.

İlk proje oluşturduğunuzda “Single View App” seçeneği yerine “Augmented Reality App” seçeneğini seçmeniz gerekecektir. Bu, size çalışmak için bir “Scene” dijital ortamı verir ve bu ortam, karşınıza Apple’ın örneğiyle çıkar.

Apple’ın örneğinin bulunduğu, “assets” dosyasının içindeki ortam, nesnelerinizi oluşturabileceğiniz yerdir. Apple’ın örnek olarak yarattığı nesneyi hareket ettirmeyi ve baktığınızın ekranın açılarını değiştirmeyi denerseniz, bu size ileriki projelerinizde ortamı kullanmak konusunda kolaylık sağlayacaktır.

Kodlama, her uygulamada olduğu gibi o ekranın “ViewController.swift” dosyasından olacaktır. Bu dosyayı açıp incelediğinizde “Single View App” uygulaması oluşturmaktan farklı olarak bir çok komut göreceksinizdir. Bir sonraki makalelerimizde bu komutları daha detaylı inceleyeceğiz!

Bu makalede, arttırılmış gerçekliğin ne olduğunu öğrendik, çevremizdeki örnekleri inceledik ve Apple’ın arttırılmış gerçeklik için yazdığı ARKit kütüphanesini biraz inceledik. Bundan sonraki makalelerde, bu kütüphaneyi daha derinden tanıyıp muhteşem uygulamalar oluşturabileceğiz! 🥳 Hepinize keyifli kodlamalar!

Bizi daha yakından takip etmek istiyorsanız, sosyal medya hesaplarımıza aşağıdan ulaşabilirsiniz!

Twitter | Instagram | Facebook

--

--