ย้อนกลับไปที่ "ข่าวสำหรับผู้พัฒนา"

การสร้างประสบการณ์ VR แบบผู้เล่นหลายคน

ประสบการณ์แบบผู้เล่นหลายคนได้กลายเป็นส่วนสำคัญของระบบนิเวศ VR เพิ่มมากขึ้น โดยฟีเจอร์แบบผู้เล่นหลายคนทำให้ผู้ใช้ค้นหา เชิญ รวมถึงเล่นเกมและแอพต่างๆ ร่วมกันได้อย่างง่ายดาย ในบล็อกและซีรีส์วิดีโอเรื่อง “การสร้างประสบการณ์ VR แบบผู้เล่นหลายคน” ซึ่งประกอบด้วย 4 ส่วนนี้ เราจะพูดถึงฟีเจอร์แบบผู้เล่นหลายคนใน Quest ของ Platform SDK โดยสำรวจตัวอย่าง SharedSpaces แบบโอเพนซอร์สที่สร้างไว้ใน Unity และแสดงให้คุณดูวิธีใช้งานตัวอย่างนี้เพื่อสร้างแอพแบบผู้เล่นหลายคนของคุณเอง หากคุณสนใจที่จะรับชมหรือรับฟังเพื่อเรียนรู้ข้อมูลเพิ่มเติม โปรดรับชมวิดีโอนี้ในช่อง YouTube เกี่ยวกับโอเพนซอร์สของ Meta

ในบล็อกวันนี้ เราจะอธิบายฟีเจอร์แบบผู้เล่นหลายคนใน Platform SDK และสิ่งที่คุณสามารถสร้างได้ด้วยฟีเจอร์นี้ นอกจากนี้ เราจะอธิบายตัวอย่าง Unity SharedSpaces จาก App Lab และดูฟีเจอร์แบบผู้เล่นหลายคนเหล่านี้ในรูปแบบการใช้งานจริง

ฟีเจอร์แบบผู้เล่นหลายคน

ฟีเจอร์แบบผู้เล่นหลายคนใน Quest ซึ่งได้แก่ ปลายทาง สถานะของกลุ่ม คำเชิญ ลิงก์เชิญ รายชื่อ และอื่นๆ ช่วยให้ผู้ใช้สามารถค้นหา เชิญ และเล่นแอพ VR ร่วมกันได้ โดยฟีเจอร์เหล่านี้จะช่วยยกระดับการโต้ตอบบนโซเชียลภายในแอพของคุณ และให้แฟนตัวยงของคุณสามารถเชิญผู้ใช้คนอื่นๆ มาเข้าร่วมกับพวกเขาได้ เพื่อสร้างประสบการณ์แบบผู้เล่นหลายคนที่ไม่ซ้ำใครซึ่งผู้เล่นจะรู้สึกเหมือนได้มีส่วนร่วมกับเพื่อนในแอพจริงๆ

ปลายทาง

ปลายทางคือตำแหน่งที่ผู้ใช้จะเดินทางไปภายในแอพของคุณและเป็นสิ่งจำเป็นสำหรับฟีเจอร์แบบผู้เล่นหลายคนในการพัฒนา Quest ภาพประกอบด้านล่างนี้แสดงปลายทาง 3 แห่งจากแอพตัวอย่าง SharedSpaces ในบล็อกถัดไป เราจะอธิบายขั้นตอนการตั้งค่าปลายทางสำหรับแอพของคุณ

สถานะของกลุ่ม

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

Deep Link

Deep Link ช่วยให้ผู้พัฒนาสามารถนำผู้ใช้ไปสู่ประสบการณ์ที่เฉพาะเจาะจงได้ เมื่อใดก็ตามที่มีคนเปิดใช้แอพของคุณเพื่อเข้าร่วมกับเพื่อนหรือนำทางไปยังปลายทาง Deep Link จะรวมข้อมูลเกี่ยวกับปลายทางที่ต้องการ รวมถึงล็อบบี้หรือแมตช์ต่างๆ ไว้

ขั้นตอนแรกในการเปิดใช้งานประสบการณ์แบบผู้เล่นหลายคนคือ การผสานการทำงานระหว่างปลายทาง สถานะของกลุ่ม และ Deep Link เข้าด้วยกัน ในบล็อกถัดไป เราจะอธิบายวิธีสร้างตัวอย่าง Unity SharedSpaces ในเวอร์ชั่นของคุณเอง และวิธีตั้งค่าตัวอย่างเหล่านั้นสำหรับแอพของคุณ

คำเชิญไปยังแอพ

"คำเชิญไปยังแอพ" ช่วยให้ผู้เล่นสามารถเชิญเพื่อนใน Quest และผู้ใช้ "ที่เล่นด้วยล่าสุด" ไปยังล็อบบี้ที่มีอยู่ได้อย่างราบรื่นโดยใช้เมนู Quest ในเกมที่รองรับ

เมื่อคุณส่งคำเชิญ การแจ้งเตือนจะปรากฏแก่ผู้ที่ได้รับเชิญใน VR และในแอพมือถือ Oculus ซึ่งจะเชิญพวกเขามาเข้าร่วมในประสบการณ์นี้

เรียนรู้เพิ่มเติมเกี่ยวกับ API คำเชิญไปยังแอพและวิธีที่คุณสามารถใช้ API ดังกล่าวในประสบการณ์ของคุณได้ที่หน้าเอกสารประกอบ

ลิงก์เชิญ

คุณสามารถใช้ลิงก์เชิญเพื่อเปิดเข้าไปที่ปลายทางร่วมกับกลุ่มเพื่อนโดยใช้แอพมือถือ Oculus ได้เช่นกัน

ลิงก์เชิญจะใช้ API สถานะของกลุ่มเพื่อให้แน่ใจว่าทุกคนจะเข้าไปในเซสชั่นเดียวกัน เรียนรู้เพิ่มเติมเกี่ยวกับลิงก์เชิญได้ที่หน้าเอกสารประกอบ

รายชื่อ

รายชื่อช่วยให้ผู้ใช้ดูได้ว่าเพื่อนคนใดอยู่ในเกมกับตน ผู้ใช้ที่เกมแสดงชื่อขึ้นมานั้นจะอยู่ใน ID เซสชั่นล็อบบี้เดียวกันเมื่อเกมได้กำหนดสถานะของผู้ใช้ปัจจุบันแล้ว ในตัวอย่าง SharedSpaces คุณสามารถดูรายชื่อได้โดยแตะที่แผงรายชื่อ รูปภาพด้านล่างนี้แสดงตัวอย่างรายชื่อผู้ที่กำลังเล่นเกมกับคุณอยู่และผู้ที่ได้รับเชิญให้เข้าร่วมกับคุณ

ตัวอย่าง Unity SharedSpaces

ตอนนี้เราได้อธิบายฟีเจอร์แบบผู้เล่นหลายคนใน Platform SDK ไปบ้างแล้ว ต่อมาเราจะมาดูโปรเจ็กต์ตัวอย่างที่มีชื่อว่า SharedSpaces ซึ่งแสดงฟีเจอร์แบบผู้เล่นหลายคนเหล่านี้ในรูปแบบการใช้งานจริง เราจะดูตัวอย่างนี้ในเวอร์ชั่น Unity อย่างไรก็ตาม หากคุณสนใจเวอร์ชั่น Unreal คุณสามารถค้นหาได้ใน App Lab

ก่อนอื่น เราขออธิบายวิธีการทำงานของตัวอย่าง Unity SharedSpaces โดยตัวอย่างนี้จะใช้เลเยอร์การสร้างเครือข่าย 3 แบบ ดังนี้

  • Platform SDK ของเรา ซึ่งจะช่วยให้เราสามารถกำหนดปลายทาง สถานะ ล็อบบี้ และแมตช์ได้
  • Photon SDK ซึ่งเป็นเลเยอร์การขนส่งของเราจะทำหน้าที่ในการสื่อสารระหว่างผู้ใช้ที่ใช้พื้นที่ร่วมกัน
  • ความสามารถในการสร้างเครือข่ายที่ Netcode ของ Unity มีให้กับ GameObjects SDK

ภาพประกอบด้านล่างนี้สรุปเลเยอร์ทั้ง 3 แบบที่เราได้พูดถึงข้างต้น

การติดตั้งตัวอย่าง

ตอนนี้คุณเข้าใจวิธีการทำงานของแอพ SharedSpaces ในเบื้องต้นแล้ว คุณสามารถดาวน์โหลดตัวอย่าง Unity SharedSpaces บน App Lab แล้วลองใช้งานบนแว่น VR สำหรับ Quest ได้เลย

การใช้งานตัวอย่าง

เมื่อเปิดใช้แอพบนแว่น VR สำหรับ Quest คุณจะสังเกตเห็นว่าตัวคุณเริ่มต้นจากในห้องล็อบบี้ โดยตัวละครสีต่างๆ จะเป็นตัวแทนของผู้เล่นที่คุณสามารถควบคุมได้โดยใช้คอนโทรลเลอร์ได้ ซึ่งคอนโทรลเลอร์ซ้ายจะเคลื่อนที่ผู้เล่นไปรอบๆ และคอนโทรลเลอร์ขวาจะเคลื่อนที่กล้องไปรอบๆ เพื่อให้คุณสามารถมองเห็นโลกรอบตัวคุณได้อย่างสะดวก จากนั้นจึงเลือกไปยังสถานที่ที่คุณต้องการไป เมื่อกดปุ่ม Y บนคอนโทรลเลอร์ จะทำให้ผู้เล่นสามารถกระโดดได้

แผงแก้ไขจุดบกพร่องทางด้านขวาช่วยให้คุณทราบสถานะของปลายทาง เลเยอร์การสร้างเครือข่าย และข้อมูลเกี่ยวกับผู้เล่นที่เข้าร่วมห้องกับคุณ ทางด้านซ้าย คุณจะเห็นปลายทางส่วนตัว 3 แห่งที่คุณสามารถเข้าไปได้ และทางด้านขวา คุณจะเห็นปลายทางสาธารณะที่คุณก็สามารถเข้าไปได้เช่นกัน

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

ทางด้านขวาบน คุณจะเห็นรายชื่อที่แสดงข้อมูลเกี่ยวกับสถานะของกลุ่ม ซึ่งเป็นฟีเจอร์ "รายชื่อ" ของ Platform SDK ในรูปแบบการใช้งานจริง

ด้านหลังคุณ จะมีร้านสีซึ่งคุณสามารถเลือกเปลี่ยนสีผู้เล่นของคุณเองได้ หรืออีกวิธีหนึ่ง คุณสามารถกดปุ่ม X บนคอนโทรลเลอร์เพื่อเปลี่ยนสีผู้เล่นของคุณก็ได้เช่นกัน

ทางด้านซ้ายล่างและขวาล่าง คุณจะเห็นตัวเลือกสำหรับสอบถามตัวคุณเองและเพื่อนของคุณเพื่อขอข้อมูลเพิ่มเติมเกี่ยวกับผู้เล่น

ตัวอย่างสถานการณ์ทดสอบ

ตอนนี้คุณก็คุ้นเคยกับพื้นที่นี้แล้ว ให้ลองเข้าไปที่ปลายทางแห่งใดแห่งหนึ่ง ห้องสีม่วงคือปลายทางสาธารณะที่ทุกคนสามารถเข้าไปได้และสามารถเข้าถึงได้จากล็อบบี้ ตอนนี้ให้กลับไปที่ล็อบบี้

เมื่อคุณกลับมาที่ล็อบบี้แล้ว ให้ลองเข้าไปในห้องอื่นๆ ห้องสีแดง สีน้ำเงิน และสีเขียวคือห้องส่วนตัวและต้องได้รับคำเชิญจึงจะเข้าไปได้

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

การแจ้งเตือนจะปรากฏขึ้นเพื่อแจ้งให้เพื่อนที่ได้รับเชิญของคุณทราบว่าคุณได้เชิญพวกเขาให้มาเข้าร่วมกับคุณ หากเพื่อนตอบรับคำเชิญเข้าร่วมกับคุณ คุณจะเห็นเพื่อนคนดังกล่าวในล็อบบี้ของคุณ ต่อจากนี้ไป คุณทั้งคู่จะใช้ ID ล็อบบี้เดียวกันสำหรับเซสชั่นนี้

ตอนนี้คุณสามารถเริ่มแมตช์ส่วนตัวในห้องสีน้ำเงินได้เลย เมื่อคุณเข้าไปในห้องสีน้ำเงิน คุณอาจเห็นว่าเพื่อนของคุณเข้ามาในห้องสีน้ำเงินก่อนคุณ เนื่องจากเพื่อนเข้ามาในห้องก่อน เพื่อนคนดังกล่าวจึงจะเป็นโฮสต์ของห้องนั้น และระบบจะเชื่อมต่อคุณกับเพื่อน นอกจากนี้ คุณจะมี ID เซสชั่นแมตช์เดียวกันที่ใช้ได้กับห้องสีน้ำเงิน ตอนนี้ หากคุณออกจากห้องสีน้ำเงิน คุณทั้งคู่จะย้อนกลับไปที่ล็อบบี้ เนื่องจากคุณใช้ ID ล็อบบี้เดียวกัน

หากคุณเชิญเพื่อนขณะที่คุณอยู่ในห้องสีน้ำเงิน ในขณะที่เพื่อนของคุณอยู่ในล็อบบี้ของตนเอง เมื่อเพื่อนตอบรับคำเชิญของคุณ ID แมตช์ของเพื่อนจะเปลี่ยนเป็น ID เซสชั่นแมตช์เดียวกันซึ่งใช้ได้กับห้องสีน้ำเงิน แต่ ID ล็อบบี้ของเพื่อนจะยังเป็น ID เดิมที่มีอยู่แล้วก่อนหน้านี้ ในกรณีนั้น หากคุณทั้งคู่ออกจากห้องสีน้ำเงิน คุณจะย้อนกลับไปที่ล็อบบี้ของคุณเอง ซึ่งจะต่างกันออกไป

ส่วนนี้เป็นลำดับขั้นตอนคร่าวๆ ของแอพตัวอย่าง Unity SharedSpaces เราอธิบายฟีเจอร์แบบผู้เล่นหลายคนที่จะพบใน Platform SDK ไปบ้างแล้ว รวมถึงวิธีการทำงานของฟีเจอร์เหล่านี้ในแอพ Unity SharedSpaces บน Quest ในบล็อกถัดไป เราจะอธิบายวิธีสร้างสำเนาตัวอย่างนี้ของคุณเอง รวมถึงวิธีดาวน์โหลดจาก Github จากนั้นจึงสร้างและใช้ฟีเจอร์เหล่านี้บนแว่น VR สำหรับ Quest ของคุณเอง


เกี่ยวกับซีรีส์นี้

ในซีรีส์นี้ เราจะพูดถึงฟีเจอร์แบบผู้เล่นหลายคนของ Platform SDK ใน Quest โดยสำรวจตัวอย่าง SharedSpaces แบบโอเพนซอร์สที่สร้างไว้ใน Unity บล็อกนี้เป็นส่วนแรกจากซีรีส์ซึ่งประกอบด้วย 4 ส่วนในซีรีส์วิดีโอเรื่อง “การสร้างประสบการณ์ VR แบบผู้เล่นหลายคน”

เรียนรู้เพิ่มเติมเกี่ยวกับฟีเจอร์แบบผู้เล่นหลายคนใน Platform SDK และวิธีการทำงานของตัวอย่าง SharedSpaces ได้ที่เซสชั่น Connect นี้ซึ่งจะพูดถึงการสร้างและการพัฒนาแอพแบบผู้เล่นหลายคนสำหรับ Quest ลองใช้ตัวอย่าง Unity SharedSpaces โดยเข้าไปที่ App Lab และใช้งานตัวอย่างนี้บนแว่น VR ของคุณเอง เรียนรู้เพิ่มเติมเกี่ยวกับวิธีใช้ฟีเจอร์แบบผู้เล่นหลายคนใน Platform SDK ในแอพของคุณเองได้ในเอกสารประกอบสำหรับฟีเจอร์แบบผู้เล่นหลายคนของเรา

เรียนรู้เพิ่มเติมเกี่ยวกับ Meta Quest ได้ที่เว็บไซต์ สมัครติดตามช่อง YouTube หรือติดตามเราที่ Twitter และ Facebook หากคุณมีคำถาม คำแนะนำ หรือคำติชมใดๆ โปรดแจ้งให้เราทราบในฟอรั่มผู้พัฒนา

เรียนรู้เพิ่มเติมเกี่ยวกับโอเพนซอร์สของ Meta ได้ที่เว็บไซต์โอเพนซอร์ส สมัครติดตามช่อง YouTube หรือติดตามเราที่ Twitter และ Facebook