นักออกแบบเว็บไซต์คุ้นเคยกับแนวคิดการออกแบบที่ปรับเปลี่ยนตามอุปกรณ์ การสร้างเว็บไซต์เพื่อให้ทำงานในอุปกรณ์ต่างๆ ได้ เช่น โทรศัพท์มือถือ แท็บเล็ต และคอมพิวเตอร์ ตลอดจนความละเอียดหน้าจอและอัตราส่วนพิกเซลที่แตกต่างกัน WebVR ทำให้เกิดความท้าทายใหม่ในแนวคิดการออกแบบที่ตอบสนองตามอุปกรณ์
เราสามารถจัดหมวดหมู่ประสบการณ์ WebVR ตามเมตริก 2 แบบ ได้แก่ ระดับการมองในภาพและระดับอินพุต ระดับเหล่านี้จำแนกตาม "ระดับของเสรีภาพ" (DOF) 6 DOF หมายถึงการติดตามทั้งตำแหน่งและการวางแนว, 3 DOF ติดตามเฉพาะการวางแนวและ 0 DOF ติดตามทั้งตำแหน่งและการวางแนว
ระดับการแช่แข็ง
- ไม่มี VR - จอภาพหรืออุปกรณ์เคลื่อนที่
- VR ภาพนิ่ง - อุปกรณ์ที่มีการติดตาม 3 DOF
- VR แบบมีที่นั่ง - ติดตาม 6 DOF แต่อยู่ในพื้นที่และช่วงมุมที่จำกัด
- Room Scale VR - การติดตาม 6 DOF ในสิ่งแวดล้อมขนาดห้อง
ระดับอินพุต
- 0 DOF - อินพุตเดียวที่ใช้ได้คือการคลิกหรือการแตะ วิธีป้อนข้อมูลนี้จะเชื่อมโยงกับ ทิศทางที่ผู้ใช้หันหน้าไป บางครั้งเราเรียกสิ่งนี้ว่า เครื่องมือควบคุมการจ้องมอง
- 3 DOF - ตัวควบคุมที่ติดตามการวางแนวของตัวควบคุมสามารถใช้เหมือนตัวชี้เลเซอร์เพื่อระบุทิศทางหรือตำแหน่ง ตำแหน่งของตัวควบคุมจะประมาณตามมุมมองของผู้ใช้ ซึ่งรวมถึงตัวควบคุมเดย์ดรีม
- 6 DOF - ตัวควบคุมที่ติดตามตำแหน่งและการวางแนว ซึ่งสามารถใช้เพื่อจำลองมือใน VR ได้อย่างใกล้ชิด
คุณจึงเห็นว่าแอปพลิเคชันเดียวอาจรองรับได้ทุกอย่างตั้งแต่จอแสดงผลที่ไม่ใช่แบบ VR ในอุปกรณ์เคลื่อนที่ด้วยการคลิกเพียงครั้งเดียวเพื่อป้อนข้อมูลไปจนถึงประสบการณ์แบบเต็มห้องโดยมีตัวควบคุมด้วยมือที่มีการติดตามเต็มรูปแบบ 2 ตัว
ห้องทดลอง WebVR
ใน PlayCanvas WebVR Lab เราได้ใช้การโต้ตอบหลักบางประการที่อาจจำเป็นต้องใช้ในแอปพลิเคชันของคุณ และปรับขนาดการใช้งานให้สอดคล้องกับประสบการณ์การใช้งานระดับต่างๆ
การโต้ตอบทำงานอย่างไร
กลไกพื้นฐานของการโต้ตอบใน WebVR Lab คืออินเตอร์เซกชันของแสง พื้น ห้อง และวัตถุใดๆ ที่โต้ตอบด้วยได้จะได้รับการกำหนดรูปแบบพื้นฐาน 1 ใน 3 แบบต่อไปนี้
- กรอบล้อมรอบตามแกน (หรือ AABB) - กล่องที่ไม่มีการหมุน
- กรอบล้อมรอบแบบวางแนว - เป็นกรอบที่หมุนได้
- ทรงกลม - รัศมีรอบๆ จุดในอวกาศ
ในการดูว่าการกระทำหนึ่งจะเป็นไปได้หรือไม่ เราจะยิงรังสีเข้าสู่โลก และทดสอบว่ารังสีตัดกับรูปร่างของวัตถุในโลกหรือไม่ ปฏิกิริยาที่เกิดขึ้นได้ต่างชนิดกันขึ้นอยู่กับแหล่งที่มาของรังสี (กล้องหรือตัวควบคุม) และความยาวของแสง (การถ่ายภาพระยะใกล้หรือการเล็งไปที่ระยะ)
การดำเนินการอย่างง่าย
ก่อนอื่น เราจะระบุการทำงานง่ายๆ 2-3 อย่าง และวิธีนำไปใช้กับตัวควบคุมต่างๆ
ไฮไลต์
การไฮไลต์ตำแหน่งหรือวัตถุนั้นทำได้โดยการดูตำแหน่งหรือวัตถุนั้น (โดยใช้ตัวควบคุมการจ้องมอง) หรือชี้เมาส์ (โดยใช้ตัวควบคุมมือ) ซึ่งอาจเป็นแบบไม่ต้องกดปุ่มหรือเมื่อมีการกดปุ่มอย่างเดียวก็ได้
คลิก
การคลิกตำแหน่งหรือวัตถุจะดำเนินการโดยการไฮไลต์ก่อนแล้วกดหรือปล่อยปุ่ม คุณสามารถใช้ตัวควบคุมการจ้องมองใน วัตถุ แล้วกดปุ่มหรือหน้าจอได้เลย การใช้ตัวควบคุมด้วยมือคือการชี้เมาส์ไปที่วัตถุแล้วคลิกปุ่ม
การโต้ตอบหลัก
เราใช้การโต้ตอบหลักๆ บางอย่างใน WebVR Lab โดยใช้การไฮไลต์และการคลิก
เทเลพอร์ต
เมื่อสร้างสภาพแวดล้อมเสมือนจริงเพื่อให้ผู้ใช้สำรวจ เป็นไปได้สูงว่าสภาพแวดล้อมนั้นมีขนาดใหญ่กว่าพื้นที่เล็กๆ ที่ผู้ใช้มองเห็นได้โดยไม่ต้องเคลื่อนที่ ตัวอย่างเช่น WebVR Lab มี 3 ส่วน ห้องหลัก ชั้นลอย และห้องด้านข้างสำหรับเครื่องเล่นเพลงไฮไฟ
การย้ายวิวพอร์ตของผู้ใช้ไปทั่วโลกมักจะทำให้เกิดความรู้สึกไม่สบาย ใน WebVR Lab เราอนุญาตให้ผู้ใช้ไฮไลต์สถานที่และคลิกเพื่อเทเลพอร์ตได้ทันที มุมมองของผู้ใช้จะไม่เคลื่อนไหวเลย และแม้ว่าจะรู้สึกไม่เป็นธรรมชาติในการเคลื่อนที่ทันที แต่ผู้ใช้ก็สามารถเคลื่อนที่ไปรอบๆ พื้นที่ขนาดใหญ่ได้โดยไม่รู้สึกไม่สบาย
ในกรณีของตัวควบคุมด้วยมือ ผู้ใช้จะต้องกดปุ่มค้างไว้เพื่อเปิดใช้งานเป้าหมายเทเลพอร์ต ซึ่งจะช่วยให้การมองเห็นของผู้ใช้ดูไม่เป็นระเบียบ ขณะมองไปรอบๆ
การย้ายมุมมองของผู้ใช้
บางครั้งก็จำเป็นต้องย้ายมุมมอง ตัวอย่างเช่น เมื่อใช้ Stationary หรือ Seated VR เป็นไปได้ที่จะเกิดการหันหน้าเข้าหาผนังโดยไม่สามารถหมุนเข้าสู่โลกจริงได้ เราจึงอนุญาตให้ผู้ใช้หมุนกล้องได้ โดยใช้ตัวควบคุม ใน WebVR Lab โดยใช้ปุ่มซ้ายหรือขวาบน Daydream Controller จะหมุนกล้อง
เพื่อป้องกันความรู้สึกไม่สบายเมื่อเราย้ายกล้องด้วยวิธีนี้ เราลดปริมาณการมองเห็นของอุปกรณ์ต่อพ่วงโดยใช้มุมมองที่จำกัดเหนือกล้อง ภาพนี้อ้างอิงจากการทำงานของ Ubisoft และเราพบว่าการเน้นมุมมองที่กึ่งกลางหน้าจอจะช่วยลดความรู้สึกไม่สบายใจ
เปิดใช้งาน
การเปิดใช้งานจะเทียบเท่า VR ของการคลิกปุ่มบนหน้าเว็บ ใน WebVR เราได้นำส่วนนี้มาใช้จริงและมีปุ่มง่ายๆ ที่เรียกใช้งานได้
สำหรับตัวควบคุม 0 DOF และ 3 DOF การเปิดใช้งานจะเป็นการไฮไลต์และคลิก สำหรับตัวควบคุม 6 DOF เราสามารถอัปเกรดประสบการณ์เพื่อให้คุณ "พุช" ปุ่มได้ โดยตรวจสอบโดยตรงเพื่อดูว่าตัวควบคุมมือของคุณอยู่ในปุ่มหรือไม่
Grab
WebVR Lab มีรายการ "ที่สามารถจับได้" จำนวนหนึ่ง ด้วยลักษณะการทำงานนี้ เมื่อเปิดใช้งานออบเจ็กต์แล้ว จะสามารถดึงและย้ายออบเจ็กต์ได้ มีลักษณะการทำงานที่ชัดเจน 2 อย่างที่แตกต่างกัน ขึ้นอยู่กับระดับของการป้อนข้อมูลที่คุณต้องการรองรับ
สำหรับตัวควบคุม DOF 6 รายการ การกดปุ่มอินพุตค้างไว้จะเป็นการติดรายการที่จับได้เข้ากับตัวควบคุม จากนั้นจะสามารถย้ายและจัดตำแหน่งได้ด้วยการควบคุมแบบละเอียด การปล่อยปุ่มจะเปิดใช้งานการรวมหรือวางการดำเนินการกับรายการ
สำหรับตัวควบคุมที่หลีกเลี่ยงได้น้อยกว่า การคลิกจะหยิบสินค้าขึ้นมาและแนบรายการดังกล่าวไปยังวิวพอร์ตของผู้ใช้ โดยปกติจะแสดงส่วนหนึ่งของรายการให้อยู่ใน "สามส่วนล่าง" ของจอแสดงผล ส่วนการคลิกครั้งที่ 2 จะเป็นการทิ้งหรือรวมรายการนั้น
รวม
รวมคือการทำงานที่เกิดขึ้นเมื่อคุณ "ใช้" รายการกับรายการอื่น ซึ่งครอบคลุม Use Case มากมาย ใน WebVR Lab เราใช้รายการนี้เล่นบันทึกบนเครื่องเสียง เมื่อเลือกรายการใดไปแล้ว ก็จะรวมรายการที่จับกับรายการอื่นได้ ตัวควบคุมทุกประเภทที่ไฮไลต์รายการเป้าหมายขณะที่จับสิ่งของอีกชิ้นหนึ่ง จากนั้นปล่อยการจับจะรวมทั้ง 2 รายการเข้าด้วยกัน
ทิ้ง / กู้คืน
การวางรายการจะเกิดขึ้นเมื่อคุณคลิกรายการค้างไว้ที่รายการที่จับได้ที่ไม่ได้ไฮไลต์รายการอื่นไว้
ใน WebVR Lab เรารักษาข้อกำหนดด้านประสิทธิภาพให้อยู่ในระดับต่ำด้วยการไม่ใช้การจำลองทางฟิสิกส์กับรายการต่างๆ ซึ่งหมายความว่าแทนที่จะวางสิ่งของลงไปที่พื้น เราจะปล่อยให้ของนั้นลอยอยู่ในตำแหน่งที่ตกลงไปได้ง่ายๆ หลังจากนำรายการออกไปแล้ว หากไม่ได้เปิดใช้งานไว้ภายในระยะเวลาที่กำหนด รายการดังกล่าวจะ "คืนค่า" ตัวเองกลับไปยังตำแหน่งเดิม ฟังก์ชันการกู้คืนนี้ช่วยให้ผู้ใช้ที่มีการป้อนข้อมูลในระดับต่ำ (0 DOF หรือ 3 DOF) ดำเนินการกับรายการต่างๆ และคงพื้นที่งานที่ใช้ได้เอาไว้ รายการที่เก่ากว่าจะล้าง ตัวเองโดยอัตโนมัติ
การป้อนข้อมูล DOF แบบ 6 ขั้นตอนช่วยให้ย้ายสิ่งต่างๆ ออกไปได้ง่ายขึ้น ความล่าช้าในการดำเนินการกู้คืนช่วยให้ผู้ใช้ 6 DOF เข้าไปดำเนินการต่างๆ ได้อย่างต่อเนื่อง แต่ยังคงช่วยทำความสะอาดพื้นที่ด้วยตนเองได้
สรุป
WebVR Lab เป็นโครงการจริงจากทีม PlayCanvas ซึ่งหมายความว่ามีการพัฒนาอย่างต่อเนื่อง ตลอดจนมีการเพิ่มและอัปเดตประสบการณ์ต่างๆ ขณะที่เราทำการค้นคว้าเพิ่มเติมเพื่อสร้างแอปพลิเคชัน WebVR มากขึ้น
ซึ่งปรับขนาดจากประสบการณ์การใช้งานบนอุปกรณ์เคลื่อนที่สไตล์ "หน้าต่างวิเศษ" ไปจนถึงสนามเด็กเล่นแบบอินเทอร์แอกทีฟบนเดสก์ท็อป เราได้เริ่มกำหนดชุดการโต้ตอบหลักที่ผู้ใช้สามารถนำไปใช้สำหรับโปรเจ็กต์ของตนเอง เราหวังว่า WebVR Lab จะเป็นประสบการณ์การเรียนรู้ที่ดี สำหรับทุกคนที่ต้องการสร้างโลก 3 มิติด้วย WebVR
หากมีบัญชี PlayCanvas ให้ไปยังโครงการ WebVR Lab โดยตรงเพื่อเรียนรู้เพิ่มเติม