ทำความเข้าใจตัวแก้ไขพื้นที่ย่อย

อุปกรณ์ XR ที่รองรับ
คำแนะนำนี้จะช่วยคุณสร้างประสบการณ์การใช้งานสำหรับอุปกรณ์ XR ประเภทนี้
ชุดหูฟัง XR
แว่นตา XR แบบมีสาย

SubspaceModifier คล้ายกับตัวปรับแต่ง Compose สำหรับ Composable ใน Subspace SubspaceModifierช่วยให้คุณจัดการ Composable ในพื้นที่ 3 มิติ ได้ ซึ่งจะช่วยให้คุณจัดวาง หมุน และเพิ่มลักษณะการทำงานให้กับโหนดเลย์เอาต์ 3 มิติ

การจัดวาง

โดยค่าเริ่มต้น Subspace จะอยู่ในขอบเขตของพื้นที่ที่แนะนำสำหรับการดูแอป ขอบเขตเหล่านี้จะใช้เมื่อวัดเลย์เอาต์ของคอมโพเนนต์ของพื้นที่ย่อย ซึ่งคล้ายกับขอบเขตในเลย์เอาต์ Compose แบบ 2 มิติ

ขอบเขตการเติม

ตัวแก้ไข fillMaxSize, fillMaxWidth, fillMaxHeight และ fillMaxDepth จะทำให้เนื้อหา (บางส่วน) เติมขอบเขตขององค์ประกอบระดับบน การใช้ตัวแก้ไขการเติมจะช่วยให้เลย์เอาต์ของแอปแสดงเนื้อหาที่ไม่ขึ้นอยู่กับลักษณะการแสดงผลของอุปกรณ์ XR

ตั้งค่าขนาดและขนาดที่จำเป็น

ตัวแก้ไข size, width, height และ depth ประกาศขนาดที่ต้องการของเนื้อหา หากต้องการประกาศขนาดที่แน่นอนของเนื้อหา ให้ใช้ requiredSize, requiredWidth, requiredHeight และ requiredDepth ต้องระบุหน่วยเหล่านี้ใน dp หากต้องการแปลงจากเมตรเป็น dp ให้ใช้ Meter.toDp()

คอมโพเนนต์ที่กำหนดตำแหน่ง

offset

ตัวปรับแต่ง offset จะย้าย Composable ในพื้นที่ 3 มิติไปตามแกน x, y และ z ต้องระบุหน่วยเหล่านี้ใน dp หากต้องการแปลงจากเมตรเป็น dp ให้ใช้ Meter.toDp()

rotate

ตัวแก้ไข rotate จะหมุน Composable ที่ระบุในพื้นที่ คุณ ระบุทิศทางและจำนวนการหมุนได้หลายวิธีดังนี้

  • การใช้ระดับความสูงต่ำ การเอียง และการหมุน ซึ่งระบุการหมุนรอบแกน x, y และ z ตามลำดับ
  • การใช้ axisAngle ซึ่งเป็น Vector3 ที่แสดงแกนของการหมุน และจำนวนองศาที่ควรหมุนรอบ
  • ใช้ Quaternion ที่แสดงถึงการหมุนเวียน

rotateToLookAtUser

ตัวปรับแต่ง rotateToLookAtUser จะหมุนเนื้อหาอย่างต่อเนื่อง เพื่อให้หันหน้าไปทางผู้ใช้ตลอดเวลา คุณยังใช้ตัวปรับแต่งนี้ เพื่อให้ได้เอฟเฟกต์ "บิลบอร์ด" ที่เนื้อหาหมุนหันหน้าไปทางผู้ใช้บน แกน Y ในขณะที่ยังคงตั้งตรงและสอดคล้องกับแรงโน้มถ่วง โดยให้รวมตัวแก้ไข rotateToLookAtUser กับตัวแก้ไข gravityAligned

ตัวแก้ไขนี้กำหนดให้แอปของคุณต้องกำหนดค่าออบเจ็กต์ของเซสชันปัจจุบันด้วย DeviceTrackingMode.LAST_KNOWN

HeadTrackingMode.LAST_KNOWN

เปลี่ยนลักษณะที่ปรากฏของ Composable

alpha

ตัวแก้ไข alpha จะกำหนดความทึบแสงขององค์ประกอบและองค์ประกอบย่อย โดย 0f หมายถึงโปร่งใสโดยสมบูรณ์ และ 1.0f หมายถึงทึบสนิท

scale

ตัวแก้ไข scale จะปรับขนาดเนื้อหาของ Composable ตามแกนแนวนอน แนวตั้ง และความลึก

การทดสอบและการช่วยเหลือพิเศษ

semantics

ตัวแก้ไข semantics จะเพิ่มความหมายให้กับโหนดเลย์เอาต์เพื่อใช้ในการทดสอบและการช่วยเหลือพิเศษ ดูความหมายใน Jetpack Compose และ SemanticsModifier

testTag

ตัวแก้ไข testTag เป็นรูปแบบย่อของ SemanticsPropertyReceiver.testTag ซึ่งช่วยให้เฟรมเวิร์กการทดสอบค้นหา องค์ประกอบในการทดสอบได้