أجهزة XR المشمولة
تساعدك هذه الإرشادات في إنشاء تجارب لهذه الأنواع من أجهزة XR.
SceneCoreEntity هي دالة مركّبة للمساحة الفرعية تربط بين مكتبتَي Jetpack SceneCore وCompose for XR لتتمكّن من استخدام الكيانات التي تم إنشاؤها باستخدام SceneCore في تصاميم Compose. يتيح لك ذلك إنشاء كيانات ذات مستوى أدنى ومكوّنات مخصّصة مع السماح لـ Compose بتحديد حجم هذه الكيانات وموضعها وإعادة تحديد أصلها وإضافة عناصر فرعية إليها وتطبيق المُعدِّلات عليها.
استخدام كيان SceneCore لوضع الكيانات في التنسيق
يوضّح المثال التالي كيفية استخدام كيان SceneCore لوضع الكيانات في التنسيق:
val virtualPixelDensity = session.scene.virtualPixelDensity Subspace { SceneCoreEntity( modifier = SubspaceModifier.offset(x = 50.dp), factory = { SurfaceEntity.create( session = session, pose = Pose.Identity, stereoMode = SurfaceEntity.StereoMode.MONO ) }, update = { entity -> // Compose state changes may be applied to the SceneCore entity here. entity.stereoMode = SurfaceEntity.StereoMode.SIDE_BY_SIDE }, sizeAdapter = object : SceneCoreEntitySizeAdapter<SurfaceEntity> { override fun onLayoutSizeChanged( entity: SurfaceEntity, size: IntVolumeSize ) { val extents = FloatSize2d( size.width.toFloat(), size.height.toFloat() ) entity.shape = SurfaceEntity.Shape.Quad(extents) } }, ) { // Content here will be children of the SceneCoreEntity // in the scene graph. } }
نقاط رئيسية حول الرمز
- مجموعة المصنع: هي المكان الذي تتم فيه تهيئة كيان
SurfaceEntityالأساسي من SceneCore. - كتلة التعديل: استخدِم كتلة التعديل لتعديل خصائص الكيان استجابةً للتغييرات في حالة Compose.
- تعديل الحجم: يرسل
sizeAdapterأبعاد العنصر إلى نظام تنسيق Compose.
معلومات إضافية
- يُرجى الاطّلاع على مقالة إضافة نماذج ثلاثية الأبعاد إلى تطبيقك لفهم كيفية تحميل المحتوى الثلاثي الأبعاد بشكل أفضل ضمن
SceneCoreEntity.