การพัฒนาการโต้ตอบ VR ที่หลากหลายได้เร็วและง่ายขึ้นโดยใช้ UltimateXR

โหนดต้นทาง: 1662336

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

บทความแขกโดย Enrique Tromp

Enrique เป็นผู้ร่วมก่อตั้งและ CTO ของ VRMADA ซึ่งเป็นบริษัทเทคโนโลยีที่ให้บริการโซลูชั่น VR ระดับองค์กรทั่วโลก ด้วยความหลงใหลในคอมพิวเตอร์กราฟิกและศิลปะดิจิทัลอย่างมาก อาชีพของเขาครอบคลุมถึง 20 ปีในด้านการจำลอง วิดีโอเกม และประสบการณ์การโต้ตอบแบบสด ทุกวันนี้เขาชอบทำโปรเจ็กต์ VR ที่ท้าทายและพัฒนา อัลติเมทเอ็กซ์อาร์ซึ่งเป็นเฟรมเวิร์ก VR แบบโอเพ่นซอร์สฟรี ติดตามผลงานล่าสุดได้ที่ Twitter @เอนทรอม.

เมื่อสามปีที่แล้ว ฉันได้มีโอกาสพูดคุยถึงความสำคัญของการโต้ตอบที่น่ายินดีในแอปพลิเคชัน VR ใน นี้ ถนนสู่ VR บทความแขก. ฉันได้แสดงตัวอย่างบางส่วนที่พัฒนาขึ้นที่ VRMADA ซึ่งเราใช้ VR สำหรับการฝึกอบรมและการจำลององค์กร แนวคิดหลักประการหนึ่งคือปฏิสัมพันธ์ที่ดีและเป็นธรรมชาติเป็นสิ่งจำเป็นสำหรับการดูดซึมขั้นตอนที่กำหนดเป้าหมายโดยการฝึกอบรมอย่างมีประสิทธิภาพ ในวิดีโอเกม VR การโต้ตอบที่ยอดเยี่ยมช่วยปรับปรุงการเล่นเกมและสามารถทำให้กลไกบางอย่างสนุกและน่าพอใจจริงๆ

ตั้งแต่ประมาณปี 2016 ฉันได้ลงทุนส่วนใหญ่ในชีวิตของฉันในการสร้างกรอบงานและชุดเครื่องมือที่กลายมาเป็นรากฐานทางเทคโนโลยีของบริษัท เป้าหมายหลักคือการสร้างระบบที่ปรับขนาดได้ซึ่งจะช่วยให้นักพัฒนาของเราสร้างแอปพลิเคชัน VR ได้ในอีกหลายปีข้างหน้า ในช่วงหลายปีที่ผ่านมา เราต้องพัฒนาแอปพลิเคชันที่มีความต้องการ การโต้ตอบ และเป้าหมายที่แตกต่างกันอย่างมาก ตั้งแต่การฝึกอบรมอย่างจริงจังไปจนถึงความบันเทิง ความแตกต่างเหล่านี้เป็นกุญแจสำคัญในการทำให้กรอบงานมาบรรจบกับระบบที่พร้อมทำงานในสถานการณ์ที่แตกต่างกันอย่างเป็นธรรมชาติ

เมื่อเร็วๆ นี้เราได้ตัดสินใจเผยแพร่เฟรมเวิร์กและเครื่องมือต่างๆ แก่สาธารณะ ซึ่งทุกคนใช้ได้ฟรีและเป็นโอเพนซอร์ส ผลลัพธ์คือ อัลติเมทเอ็กซ์อาร์ เพื่อความสามัคคี เราหวังว่าจะพอร์ตไปยังแพลตฟอร์มอื่นในไม่ช้าเช่นกัน (Unreal, Web…?)

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

เครื่องมือแก้ไขท่าทางแบบบูรณาการ

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

ในตอนเริ่มต้น เราส่งออกแอนิเมชั่นของมือโดยตรงจากโปรแกรม 3D ที่เราเลือก (3dsMax, Maya, Blender ฯลฯ) แต่ในไม่ช้าเราก็รู้ว่ามันกลายเป็นปัญหาคอขวดครั้งใหญ่ เราตัดสินใจที่จะพัฒนาโปรแกรมแก้ไขท่าทางด้วยมือที่เต็มเปี่ยมภายใน Unity ซึ่งจะช่วยให้เราปรับท่าทางมือได้โดยตรงจากโปรแกรมแก้ไขโลก

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

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

ผสมผสานท่ากับการจัดการผู้เขียนโดยใช้ท่าคว้าทั่วไป

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

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

การใช้ตัวจับทรงกระบอกมาตรฐานกับวัตถุสองชิ้นที่แตกต่างกัน

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

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

มือที่ปรับแต่งได้

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

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

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

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

เฉดสีผิวที่แตกต่างกัน: มือใหญ่อยู่ด้านบน มือเล็กอยู่ด้านล่าง

เพื่อหลีกเลี่ยงการสนับสนุนเพียงขนาดเดียว (ซึ่งในหลาย ๆ การใช้งานมักจะเป็นมือผู้ชายที่ใหญ่) เราเลือกที่จะรองรับสองขนาดมือ: มือใหญ่และมือเล็ก มือผู้ใหญ่ส่วนใหญ่สามารถจัดกลุ่มไว้ในสองอย่างนี้ได้

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

ดำเนินการต่อในหน้า 2: ความยืดหยุ่นของตัวแก้ไข GrabbableObject »

ประทับเวลา:

เพิ่มเติมจาก ถนนสู่ VR