Ürün Haberleri

Android XR SDK'sında güncellemeler: Geliştirici Önizlemesi 4 ile tanışın

Okuma süresi: 5 dakika

Bugün, Android XR SDK'nın geliştirici önizlemesi 4'ü kullanıma sunmanın heyecanını yaşıyoruz. Bu sürümde, kulaklıklar, kablolu XR gözlükleri ve akıllı gözlükler için cihazlar arası geliştirme sürecini birleştirme konusuna odaklanmaya devam ediyoruz. Platformumuzun sezgisel olmaya devam etmesi için form faktörlerimizde daha açıklayıcı adlandırma yöntemini benimsiyoruz. Bu kapsamda, yapay zeka destekli akıllı gözlükler artık sesli gözlük, ekranlı yapay zeka destekli akıllı gözlükler ise görüntülü gözlük olarak adlandırılacak. Bu değişiklikler, bugünden itibaren dokümanlarımızda yer alacak.

Bu sürüm, XR cihazlar için inanılmaz deneyimler oluşturmanıza, XR kulaklıklarında daha derin sürükleyici deneyimler sunmanıza ve sesli ve ekranlı gözlüklerde artırılmış gerçeklik deneyimleri oluşturma sürecini kolaylaştırmanıza yardımcı olacak güncellemelerle doludur. Ayrıca, XR Runtime, Jetpack SceneCore ve Jetpack XR için ARCore gibi temel kitaplıklarımız da yakında resmi olarak beta sürümüne geçecek.

Ekranlı ve sesli gözlükler ile XREAL'ın Project Aura'sı gibi yeni cihazlarda sürükleyici ve artırılmış gerçeklik deneyimleri oluşturmak için donanımlara ve kaynaklara erken erişim imkanı sunmak amacıyla Android XR Developer Catalyst Programı'nı duyuruyoruz. Daha fazla bilgi edinin ve başvurunuzu bugün yapın. 

Ses ve ekran gözlükleri için artırılmış gerçeklik deneyimleri oluşturma

Artırılmış deneyimler için kitaplıklarımızla başlayan Geliştirici Önizlemesi 4, uygulamalarınızı oluşturup test etmenize yardımcı olan yeni API'ler sunuyor.

Jetpack Projected: Cihaz Kullanılabilirliği ve ProjectedTestRule API'leri

Jetpack Projected kitaplığı, uygulama deneyimlerini telefondan kullanıcının görüş alanına taşımaya yardımcı olur. Giyilebilir durumunu ve bağlantı sinyallerini standart Android Lifecycle.State değerlerinde birleştiren Cihaz Kullanılabilirliği API'sini ekledik. Bu sayede, cihazın takılı olup olmamasına göre uygulamalarınızın davranışını ayarlayabilirsiniz.

val xrDevice = XrDevice.getCurrentDevice(projectedContext)

// Observe the device lifecycle flow
xrDevice.getLifecycle().currentStateFlow
    .collect { state ->
        when (state) {
            Lifecycle.State.STARTED -> { /* Device is available (worn) */ }
            Lifecycle.State.CREATED -> { /* Device is unavailable (not worn) */ }
            Lifecycle.State.DESTROYED -> { /* Device is DISCONNECTED */ }
        }
    }

Testi basitleştirmek için, öngörülen test yapıtındaki yeni ProjectedTestRule API, öngörülen test ortamlarının kurulumunu otomatikleştirir. Bu sayede, ortak metin kodu olmadan temiz ve güvenilir birim testleri yazabilirsiniz.

// from the 'androidx.xr.projected:projected-testing:1.0.0-alpha07' artifact
@get:Rule
val projectedTestRule = ProjectedTestRule()

@Test
fun testProjectedContextInitialization() {
    // by default, ProjectedTestRule automatically creates and connects
    // a projected device before each test
    val projectedContext = ProjectedContext.createProjectedDeviceContext(context)

    // assert the projected context is successfully initialized
    assertThat(projectedContext).isNotNull()
}

Jetpack Compose Glimmer: Google Sans Flex ve yeni bileşenler

Ekranlı gözlükler için kullanıcı arayüzü kitaplığımız olan Jetpack Compose Glimmer'a, optik şeffaf ekranlarda daha iyi okunabilirlik için Google Sans Flex eklendi. Ayrıca birkaç etkileşimli bileşen de ekledik:

  • Gruplar: Her seferinde bir öğe gösteren, dokunmatik yüzey için optimize edilmiş gruplar için tasarlanmıştır.
  • Başlık çipleri: İçerik kartları için kategorizasyon ve bağlam sağlar.
glimmer (1).gif

XR Kulaklıkları ve Kablolu XR Gözlükleri İçin Sürükleyici Deneyimler Oluşturma

XR kulaklıkları ve kablolu XR gözlükleri için tamamen sürükleyici deneyimler oluşturmak istiyorsanız birkaç önemli güncellememiz var.

Beta Geçişi ve Modern Mimari

XR Runtime, Jetpack SceneCore ve Jetpack XR algılama özelliklerine (Derinlik Haritaları, Göz/El Takibi, isabet testi ve uzamsal bağlantılar) yönelik ARCore yakında beta sürümüne geçecek. Bu nedenle, Jetpack XR API'lerini basitleştirdik. Modern ve Kotlin öncelikli bir mimari için eski Guava ve RxJava3 paketlerini kaldırdık.

Jetpack SceneCore: glTF ve Özel Örgüler

3D modelleri ince ayarlama ve 3D modelle belirli düğümlere erişme özelliği ekleyerek 3D model özelliklerini genişletiyoruz. GltfModelNode kullanarak poz, materyal ve doku gibi özellikleri değiştirebilir, hatta belirli düğümler için animasyonlar çalıştırabilirsiniz.

// Create a new PBR material
pbrMaterial = KhronosPbrMaterial.create(
    session = xrSession,
    alphaMode = AlphaMode.OPAQUE
)

// Load a texture.
val texture = Texture.create(
    session = xrSession,
    path = Path("textures/texture_name.png")
)

// Apply the texture and configure occlusion to define how the material handles ambient lighting.
pbrMaterial.setOcclusionTexture(
    texture = texture,
    strength = 0.5f
)

// Access the hierarchy of nodes within the model entity.
val entityNodes = entity.nodes

// Find the specific node to apply the material override.
val myEntityNode = entityNodes.find { it.name == "node_name" }

// Apply the PBR material to the node.
myEntityNode?.setMaterialOverride(
   material = newMaterial
)

Ayrıca SceneCore'a özel ağlar da ekliyoruz. Özel ağlar, geometrileri programatik olarak anında oluşturmanıza olanak tanır. Bu özellik, özel 3D modeller oluşturmak için idealdir. Bu özellik deneysel olarak kullanıma sunulacak. Deneyin ve düşüncelerinizi bizimle paylaşın.

// Create the mesh
val roadMesh =
    CustomMesh.BuilderFromMeshData(session, roadVertexLayout)
        .addVertexData(ByteBufferRegion(roadDataBuffer, 0, vertexDataSize))
        .setIndexData(ByteBufferRegion(roadDataBuffer, vertexDataSize, indexDataSize))
        .setTopology(MeshSubsetTopology.TRIANGLES)
        .build()

// Define the material
val roadMaterial = KhronosPbrMaterial.create(session, AlphaMode.OPAQUE)

// Instantiate the entity using the custom mesh and material
val roadEntity =
    MeshEntity.create(
        session,
        roadMesh,
        listOf(roadMaterial),
        pose = roadPose,
    )

Compose for XR: Yerel glTF desteği

Artık SpatialGltfModel ile doğrudan Compose for XR'da yerel glTF desteği sunuyoruz. glTF modelindeki düğümlere ve animasyonlara erişmek için SpatiallGltfModelState ile birlikte kullanın veya 3D modellerinize doku ve materyal eklemek için kullanın.

val myGltfModelState = rememberSpatialGltfModelState(
        source = SpatialGltfModelSource.fromPath(
            Paths.get("models/my_animated_model.glb")
        )
    )

    val myGltfAnimation =
        myGltfModelState.animations.find { it.name == "animation_name" }

    DisposableEffect(myGltfAnimation) {
        myGltfAnimation?.loop()

        onDispose {
            myGltfAnimation?.stop()
        }
    }

    SpatialGltfModel(state = myGltfModelState, modifier = modifier)

Jetpack XR için ARCore: Kablolu XR gözlükler için Geospatial API Önizlemesi

Ayrıca, Jetpack XR için ARCore'da kablolu XR gözlüklerde kullanılacak Geospatial API'nin erken erişim sürümünü de sunuyoruz. Bu güncelleme, 87'den fazla ülkede gerçek dünya konumlarına bağlı dijital içeriklerin yüksek hassasiyetle sabitlenmesini sağlar.

ARCore'un Görsel Konumlandırma Sistemi (VPS) ile Gemini Live API'nin akıl yürütme ve ses özelliklerini birleştirerek, kullanıcınızın hem konumunu hem de pozisyonunu anlayan içeriğe duyarlı deneyimler oluşturabilirsiniz. Yakındaki yerlerin anlık sesli açıklamalarını sunan, yapay zeka destekli etkileyici bir rehberli yürüyüş turu oluşturduğunuzu düşünün. Bu turda dijital bilgiler, fiziksel ortamla sorunsuz bir şekilde birleştirilir.

Geleceği inşa etmeye bugün başlayın

Android XR için geliştirme yapmak için harika bir dönem. Jetpack XR SDK'nın yakında Beta sürümüne geçmesi ve yeni araçların parmaklarınızın ucunda olmasıyla birlikte, uygulamanızın deneyimlerini XR'ye hazır hale getirmek için aşağıdaki alanların her birini keşfedin.  

Dokümanları okuyun, örnekleri inceleyin ve XR denemelerine göz atın.

Tam teknik kılavuzlar, API referansı ve yeni emülatörün kurulumuyla ilgili talimatlar için resmi Android Developers sitesini ziyaret edin. Örneklerimiz ve denemelerimizden ilham alın. Bu API'leri kullanarak nasıl etkileyici üç boyutlu düzenler oluşturduğumuzu, 3D modeller yüklediğimizi, üç boyutlu sesi keşfettiğimizi ve daha fazlasını öğrenin.

Oyun motorlarındaki yeniliklere göz atın

Unreal Engine ve Godot için resmi destek ekledik. Ayrıca, Unity ve Android XR Interaction Framework ile Android XR için geliştirme sürecini hızlandıracak iki yeni araç kullanıma sunduk. Ayrıca, geri bildirimlerinize dayanarak deneyimlerinizi doğrudan tercih ettiğiniz motordan çalıştırmanıza olanak tanıyan Android XR Engine Hub'ı kullanıma sunuyoruz.

Android XR Developer Catalyst Programı'na başvurma

En yeni Android XR donanımı için geliştirme yapma fırsatını kaçırmayın. Sesli ve görüntülü gözlük prototipimiz ile XREAL'in Project Aura'sı da dahil olmak üzere yayın öncesi donanımlara erişme fırsatı için bugün başvurun.

Daha fazla bilgi edinin ve bugün başvurun.

Bu yılın ilerleyen dönemlerinde daha fazla Android XR cihazı kullanıma sunarken oluşturacağınız muhteşem XR deneyimlerini görmek için sabırsızlanıyoruz.

Bu duyuruyu ve Google I/O 2026'daki tüm güncellemeleri io.google adresinde inceleyin.

Yazan:
Okumaya devam et