JavaRush /จาวาบล็อก /Random-TH /ชวาในความเป็นจริงเสมือน จริงหรือไม่ที่ VR/AR คืออนาคต และ...

ชวาในความเป็นจริงเสมือน จริงหรือไม่ที่ VR/AR คืออนาคต และมีพื้นที่สำหรับ Java อยู่ในนั้นหรือไม่?

เผยแพร่ในกลุ่ม
ในบทความก่อนหน้าของซีรี่ส์นี้ เราได้ตรวจสอบเทคโนโลยีที่ทันสมัยเกือบทั้งหมดของตลาดไอทีสมัยใหม่แล้ว เช่นปัญญาประดิษฐ์ , บล็อกเชน , บริการคลาวด์ , บิ๊กดาต้าฯลฯ เพื่อค้นหาว่าภาษาการเขียนโปรแกรม Java ใช้งานอย่างไร ในช่องเหล่านี้และเขามีบทบาทสำคัญมากน้อยเพียงใด ชวาในความเป็นจริงเสมือน  จริงหรือไม่ที่ VR/AR คืออนาคต และมีพื้นที่สำหรับ Java อยู่ในนั้นหรือไม่?  - 1วันนี้เราจะพูดถึงกลุ่มเทคโนโลยีที่ทันสมัยและน่าสนใจอีกกลุ่มหนึ่ง ได้แก่ VR และ AR ซึ่งก็คือความเป็นจริงเสมือนและความเป็นจริงเสริม “ผมคิดว่าประชากรส่วนใหญ่ในประเทศที่พัฒนาแล้วจะมีปฏิสัมพันธ์กับโซลูชั่น AR อย่างต่อเนื่องในเร็วๆ นี้ทุกวัน ในไม่ช้า AR จะกลายเป็นส่วนหนึ่งของชีวิตประจำวันของเรา” ทิม คุก ซีอีโอของแอปเปิล

VR และ AR คืออะไร?

ก่อนอื่น เรามาดูกันว่าเทคโนโลยีเหล่านี้คืออะไร ใช้งานอย่างไร และแตกต่างกันอย่างไร เริ่มจาก VR กันก่อน นั่นคือ ความจริงเสมือน แอปพลิเคชันความเป็นจริงเสมือนทำงานบนอุปกรณ์พิเศษที่จับวิสัยทัศน์ของผู้ใช้ได้อย่างสมบูรณ์ เพื่อสร้างความประทับใจว่าพวกเขาอยู่ที่อื่น ชุดหูฟัง VR ยอดนิยมทั้งหมด เช่น HTC Vive หรือ Oculus Rift จะบังการมองเห็นของผู้ใช้โดยสิ้นเชิงเมื่อสวมใส่ เมื่อเปิดอุปกรณ์ดังกล่าว แผง LCD หรือ OLED ภายในจะถูกหักเหด้วยเลนส์พิเศษเพื่อเติมเต็มมุมมองของผู้ใช้ด้วยเนื้อหาที่ส่ง ไม่ว่าจะเป็นเกม วิดีโอ 360 องศา หรือเพียงอินเทอร์เฟซของโปรแกรม . ชุดหูฟัง VR ส่วนใหญ่ รวมถึง Oculus Rift ที่กล่าวมาข้างต้น รวมถึง Vive, PlayStation VR, Windows Mixed Reality และอื่นๆ ใช้เทคโนโลยีการติดตามการเคลื่อนไหวแบบอิสระหกองศา (6DOF) ซึ่งทำได้ผ่านเซ็นเซอร์หรือกล้องภายนอก สิ่งนี้ทำให้อุปกรณ์ตรวจจับไม่เพียงแต่ทิศทางที่คุณกำลังมองหา แต่ยังรวมถึงการเคลื่อนไหวที่ผู้ใช้มุ่งหน้าไปยังทิศทางนั้นด้วย เมื่อใช้ร่วมกับเครื่องตรวจจับความเคลื่อนไหว 6DOF จะทำให้ผู้ใช้สามารถเคลื่อนที่ไปรอบๆ ในพื้นที่เสมือนได้ ทำให้แอปพลิเคชันดังกล่าวมีความสมจริงมากยิ่งขึ้น สำหรับ AR นั่นคือ Augmented Reality ความแตกต่างจาก VR ก็คือ AR ไม่ได้พยายามดูดซับการมองเห็นของคุณอย่างสมบูรณ์ แต่เพิ่มองค์ประกอบบางอย่างลงไป อุปกรณ์ AR เช่น Microsoft HoloLens และแว่นตาอัจฉริยะประเภทต่างๆ ช่วยให้ผู้ใช้มองเห็นทุกสิ่งรอบตัวด้วยการฉายภาพไปยังตำแหน่งที่ตนกำลังมอง แนวคิดนี้ยังรวมถึงแอพและเกมสมาร์ทโฟนมากมาย เช่น Pokemon Go, Temple Treasure Hunt, ARrrrrgh, Ingress และอีกมากมาย พวกเขาใช้กล้องของอุปกรณ์มือถือเพื่อตรวจสอบสภาพแวดล้อมและเสริมด้วยข้อมูลประเภทต่างๆ ที่วางอยู่บนหน้าจอ จอแสดงผล AR สามารถซ้อนทับข้อมูลง่ายๆ บางอย่างเหนือความเป็นจริงได้ เช่น หน้าปัดนาฬิกา แต่ยังสามารถนำวัตถุที่ซับซ้อน เช่น โฮโลแกรมของสัตว์ประหลาด มาไว้กลางห้องได้ด้วย ตัวอย่างเช่น เกม Pokemon Go ฉายตัวละครโปเกมอนบนหน้าจออุปกรณ์ของคุณ โดยที่เลนส์กล้องชี้อยู่ ในขณะที่แว่นตาความเป็นจริงเสริมประเภทต่างๆ ช่วยให้ผู้ใช้สามารถวางองค์ประกอบอินเทอร์เฟซและไอคอนแอปพลิเคชันไว้ด้านบนของภาพความเป็นจริงที่พวกเขาสังเกตเห็นได้ “ฉันเชื่อว่าความเป็นจริงเสริมจะเป็นการปฏิวัติทางเทคโนโลยีที่ยิ่งใหญ่ที่สุดในยุคของเรา” Tim Sweeney โปรแกรมเมอร์และผู้พัฒนาวิดีโอเกมชาวอเมริกัน ผู้ก่อตั้ง Epic Games ชวาในความเป็นจริงเสมือน  จริงหรือไม่ที่ VR/AR คืออนาคต และมีพื้นที่สำหรับ Java อยู่ในนั้นหรือไม่?  - 2

VR และ AR ไม่ใช่สิ่งเดียวกัน

นี่เป็นข้อเสียเปรียบหลักของความเป็นจริงเสริมเมื่อเปรียบเทียบกับความเป็นจริงเสมือน หาก VR เข้ามาแทนที่รูปภาพในมุมมองของคุณโดยสมบูรณ์ AR ก็จะช่วยเสริมภาพนั้นเท่านั้น โดยมักจะครอบครองพื้นที่การมองเห็นของผู้ใช้เพียงเล็กน้อยเท่านั้น แต่นี่ก็เป็นข้อได้เปรียบหลักของความเป็นจริงเสริมเช่นกัน เพราะวิธีนี้ทำให้นักพัฒนามีความเป็นไปได้แทบไร้ขีดจำกัด ตัวอย่างเช่น แอปพลิเคชัน AR บนมือถือที่สามารถจดจำวัตถุในภาพจากกล้องและส่งข้อมูลเกี่ยวกับวัตถุเหล่านั้นไปยังผู้ใช้นั้นมีมานานหลายปีแล้ว แว่นตา AR แบบพิเศษ เช่น HoloLens ช่วยให้ผู้ใช้สามารถวางหน้าต่างลอยรอบตัวตนเองซึ่งสามารถดูได้บนจอแสดงผลของอุปกรณ์ ไม่ต้องพูดถึงเกมจำนวนมากที่ใช้ความเป็นจริงเสริมเป็นองค์ประกอบการเล่นเกมหลัก (Pokemon Go, RoboRaid, Fragments) หรือเป็นคุณสมบัติเพิ่มเติม ดังนั้นความเป็นจริงเสมือนและความเป็นจริงเสริมจึงเป็นเทคโนโลยีสองชนิดที่แตกต่างกันมากซึ่งใช้เพื่อวัตถุประสงค์ที่แตกต่างกัน แม้ว่า AR และ VR มักจะถูกเรียกว่าเป็นแนวทางเดียวกันสองประเภท หากจุดประสงค์ของอุปกรณ์ VR และแอปพลิเคชันคือการแทนที่ความเป็นจริงและขนส่งผู้ใช้ไปยังสถานที่อื่นเสมือนจริง AR ก็ทำงานร่วมกับความเป็นจริง โดยเสริมข้อมูลใหม่ที่อยู่ตรงหน้าเรา เทคโนโลยีทั้งสองนี้ยังอยู่ในช่วงเริ่มต้น แต่ถือว่ามีแนวโน้มอย่างมากและมีศักยภาพที่จะปฏิวัติวิธีการใช้คอมพิวเตอร์ของผู้คนในอนาคตอันใกล้นี้ “ฉันคิดว่าในอนาคตอันใกล้นี้ เรื่องราวมากมายจะถูกบอกเล่าภายในพื้นที่เสมือนจริง” โจ รุสโซ ผู้กำกับภาพยนตร์ชาวอเมริกัน ชวาในความเป็นจริงเสมือน  จริงหรือไม่ที่ VR/AR คืออนาคต และมีพื้นที่สำหรับ Java อยู่ในนั้นหรือไม่?  - 3

AR/VR และจาวา

แม้ว่ากลุ่ม AR/VR จะใช้ภาษาการเขียนโปรแกรมหลายภาษา รวมถึง C#, C/C++, JavaScript, Swift และแม้แต่ Python แต่ Java ก็เป็นหนึ่งในภาษาที่เป็นที่ต้องการมากที่สุด เหตุผลในความเป็นจริงก็เหมือนกับในกรณีของเทคโนโลยีอื่นๆ: โค้ด Java ช่วยให้แอปพลิเคชันทำงานได้อย่างรวดเร็ว การวางแนววัตถุช่วยให้สร้างส่วนประกอบแอปพลิเคชันแต่ละรายการได้ง่ายขึ้น และความเป็นอิสระของแพลตฟอร์มทำให้ผลิตภัณฑ์ AR/VR ใน Java เป็นสากลมากขึ้น ในกรณีของ AR นั่นคือ Augmented Reality Java จะเป็นหนึ่งในภาษาการเขียนโปรแกรมหลัก เนื่องจากแอปพลิเคชัน AR ส่วนใหญ่ถูกสร้างขึ้นสำหรับอุปกรณ์มือถือ ดังนั้น Java จึงเป็นตัวเลือกหลักสำหรับแอปพลิเคชัน AR ที่สร้างขึ้นสำหรับอุปกรณ์ที่ใช้ระบบปฏิบัติการมือถือ Android ในขณะที่ในกรณีของผลิตภัณฑ์ Apple จะใช้ภาษา Objective-C และ Swift ปัจจุบัน แอปพลิเคชัน AR รองรับอุปกรณ์ต่างๆ มากมาย รวมถึงหมวกกันน็อค แว่นตา อุปกรณ์พกพา และแม้แต่คอนแทคเลนส์ ในหลาย ๆ ด้าน Java ช่วยให้คุณสร้างโซลูชัน AR ที่จะทำงานบนแพลตฟอร์มที่แตกต่างกันซึ่งมักจะแตกต่างกันมากได้ ปัจจุบัน แอปพลิเคชัน AR ที่ใช้ Java ได้รับการนำไปใช้อย่างแข็งขันในคลินิก ธนาคาร ร้านอาหาร พิพิธภัณฑ์ ฯลฯ “AR กำลังปฏิวัติวิธีที่เราเข้าถึงการค้าและการช็อปปิ้ง สร้างสะพานเชื่อมระหว่างโลกดิจิทัลและโลกทางกายภาพ” มูชาเนตา แคปฟุนเด ผู้ก่อตั้ง FashNerd.com

ประเภทของแอปพลิเคชัน AR

ตอนนี้เรามาดูชุดเครื่องมือหลัก (SDK) และเฟรมเวิร์กที่เหมาะสมสำหรับการพัฒนาแอปพลิเคชัน AR กัน แต่ก่อนอื่น เรามาดูแอปพลิเคชัน AR สองประเภทหลัก: แอปพลิเคชันตัวทำเครื่องหมายและตำแหน่งทางภูมิศาสตร์
  • แอปพลิเคชั่น MARKER AR

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

  • แอปพลิเคชันระบุตำแหน่งทางภูมิศาสตร์

    แอป AR ประเภทหลักที่สอง ซึ่งอิงตามตำแหน่ง ทำงานโดยไม่มีเครื่องหมาย โดยอาศัยข้อมูลตำแหน่งของผู้ใช้ที่ได้รับจาก GPS, มาตรความเร่ง หรือเข็มทิศดิจิทัลแทน และการวางวัตถุ AR ซ้อนทับบนตำแหน่งทางกายภาพจริง และอีกครั้งที่เราใช้ Pokemon Go เป็นตัวอย่าง - นี่อาจเป็นแอปพลิเคชันระบุตำแหน่ง AR ที่มีชื่อเสียงที่สุด

    “งานหลักสำหรับการพัฒนาเทคโนโลยี AR และ VR คือการสร้างแพลตฟอร์มเปิดเดียวที่นักพัฒนาสามารถนำแนวคิดทั้งหมดไปใช้”

    มาร์ก ซัคเคอร์เบิร์ก ผู้สร้างโซเชียลเน็ตเวิร์กเฟซบุ๊ก

    ชวาในความเป็นจริงเสมือน  จริงหรือไม่ที่ VR/AR คืออนาคต และมีพื้นที่สำหรับ Java อยู่ในนั้นหรือไม่?  - 4

SDK ที่ดีที่สุดสำหรับการพัฒนาแอปพลิเคชัน AR

  • Google ARCore

    ARCore เป็นแพลตฟอร์มหลักของ Google สำหรับการพัฒนาแอป AR ซึ่งรองรับอุปกรณ์ที่ใช้ระบบปฏิบัติการมือถือ Android และทำงานร่วมกับไลบรารี Java/OpenGL, Unity และ Unreal

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

  • ARToolKit

    ARToolKit เป็นชุดเครื่องมือโอเพ่นซอร์สสำหรับการพัฒนาแอปพลิเคชัน AR

    แม้ว่าจะเป็นชุดเปิดและฟรี แต่ ARToolKit ก็มีชุดฟังก์ชันที่หลากหลายมาก รวมถึงการรองรับ Unity3D และ OpenSceneGraph ความสามารถในการสร้างแอปพลิเคชัน AR แบบเรียลไทม์ การทำงานร่วมกับแว่นตาอัจฉริยะ การรองรับกล้องประเภทต่างๆ การปรับเทียบกล้องอัตโนมัติและอื่น ๆ

    ARToolKit รองรับแพลตฟอร์มที่หลากหลาย รวมถึง Android, iOS, Linux, Windows และ Mac OS

  • วูโฟเรีย

    Vuforia อาจเป็นแพลตฟอร์มที่ได้รับความนิยมและเป็นที่รู้จักมากที่สุดสำหรับการพัฒนาแอปพลิเคชันความเป็นจริงเสริม

    หน้าที่หลักของ Vuforia ได้แก่ การจดจำวัตถุและรูปภาพประเภทต่างๆ รองรับการจดจำข้อความพื้นฐาน การสร้างมาร์กเกอร์แบบกำหนดเอง การสร้างแผนที่ 3 มิติของสถานที่ต่าง ๆ รองรับบริการคลาวด์และการจัดเก็บข้อมูลในเครื่อง ฯลฯ

    Vuforia รองรับแพลตฟอร์มเช่น Android, Universal Windows Platform, Unity และ iOS

  • แอปเปิ้ล ARKit

    Apple ยังมีชุดเครื่องมือของตัวเองสำหรับการพัฒนาแอปพลิเคชัน AR ซึ่งเปิดตัวพร้อมกับ iOS11 และเรียกว่า ARKit โดยปกติแล้วจะรองรับเฉพาะอุปกรณ์ iOS และมีฟังก์ชันพื้นฐานทั้งหมดสำหรับการสร้างแอปพลิเคชันความเป็นจริงเสริม

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

    จอห์น ฮานเก้ ซีอีโอของ Niantic

  • แพลตฟอร์มและเฟรมเวิร์กที่ดีที่สุดสำหรับการพัฒนาแอปพลิเคชัน VR

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

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

    • OpenSpace3D

      OpenSpace3D เป็นแพลตฟอร์มแบบเปิดและฟรีสำหรับการพัฒนาแอปพลิเคชันและเกม VR ที่ใช้เทคโนโลยี VR รองรับแพลตฟอร์มและอุปกรณ์ต่างๆ จำนวนมาก รวมถึง Leap Motion, HTC Vive/Oculus, Google Cardboard และอื่นๆ นอกจากนี้ยังมีฟังก์ชันสำหรับการสร้างแอปพลิเคชัน AR

    • OSVR: แพลตฟอร์มความเป็นจริงเสมือนแบบโอเพ่นซอร์ส

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

    • พริมโรส วีอาร์

      Primrose VR เป็นเฟรมเวิร์กเบราว์เซอร์แบบเปิดสำหรับการสร้างประสบการณ์ VR ง่ายๆ เช่น การสาธิตผลิตภัณฑ์เสมือนจริง การประชุมเสมือนจริง หรือกิจกรรมเสมือนจริง Primrose VR เข้ากันได้กับเบราว์เซอร์สมัยใหม่ทั้งหมดและทำงานบน WebGL

    • IdeaSpace VR (CMS)

      IdeaSpaceVR ไม่ใช่เฟรมเวิร์กหรือแพลตฟอร์ม แต่เป็นระบบจัดการเนื้อหาแบบเปิด (CMS) สำหรับเนื้อหา VR IdeaSpaceVR ขับเคลื่อนด้วย PHP/MySQL เป็นระบบโมดูลาร์ที่ติดตั้งในเครื่อง พร้อมด้วยโปรแกรมเล่นเนื้อหาในตัวสำหรับแอปพลิเคชันความเป็นจริงเสมือน

ความคิดเห็น
TO VIEW ALL COMMENTS OR TO MAKE A COMMENT,
GO TO FULL VERSION