Unity and Unreal Engine Are the Most Used Tools to Develop VR Games
Total Page:16
File Type:pdf, Size:1020Kb
Introduction to mixed realities Course 07 Content ● Recapitulation Course 6 ○ User Experience - How UI interactions differ from 2D UI or classic games ○ Health concerns and good practices ● Software Platforms ○ Introduction, VR runtime systems, Real-Time Physics Engines, Distributed Virtual Environments, Collaborative Virtual Environments, Game Engines ● Conclusions ● Bibliography 2 R - User Experience 3 R - Illusion of VR 4 R - Interaction in VR 5 R - Health Concerns 6 VR - Software Platforms The growing market for VR 7 VR Use Cases It can help to create engaging games With VR, media and entertainment companies can create more engaging content Marketers can make their ads more interesting with the help of VR technology Businesses can use VR to let their customers virtually try their product user experience 8 VR - Software Development Tools 1. Unity 2. Amazon Sumerian 3. Google VR for everyone 4. Unreal Engine 4 (UE4) 5. CRYENGINE 6. Blender 7. 3ds Max 8. SketchUp Studio 9. Maya 10. Oculus Medium 9 Unity Unity is famous for game development, but you can create VR solutions for automotive, transportation, manufacturing, media & entertainment, engineering, construction. You can get a valuable set of tools: ● A powerful editor to create Unity 3D VR assets ● Artist and designer tools ● CAD tools ● Collaboration tools Unity works with all popular VR platforms like Oculus, Sony, etc. 10 Amazon Sumerian Amazon Sumerian is the VR engine from AWS. It works with all popular VR platforms like Oculus Go, Oculus Rift, HTC Vive, HTC Vive Pro, Google Daydream, and Lenovo Mirage, moreover, it works with Android and iOS Supports various VR use cases like employee education, training simulation, field services productivity, retail & sales, and virtual concierge ● Sumerian editor ● Sumerian hosts ● Asset management ● An ability to script the logic in the scenes you create 11 Google VR for everyone Google offers a wide range of VR development tools. You can access these tools on the Google VR developer portal https://developers.google.com/vr You can use these tools to develop VR apps for multiple platforms, e.g., Unity, Unreal, Android, iOS, and web The Google VR developer platform has software development kits (SDKs) for all VR platforms it supports, e.g., Unity, Android, iOS, etc. 12 Unreal Engine 4 (UE4) Unreal Engine 4 (UE4) offers a powerful set of VR development tools. With UE4, you can build VR apps that will work on a variety of VR platforms, e.g., Oculus, Sony, Samsung Gear VR, Android, iOS, Google VR, etc. ● It offers access to its C++ source code and Python scripts ● UE4 has a multiplayer framework, real-time rendering of visuals, and a flexible editor ● With the Blueprint visual scripting tool you can create prototypes quickly ● It’s easy to add animation, sequence, audio, simulation, effects, etc. 13 XR/VR Runtime Systems OpenXR/OpenVR WebXR/WebVR 14 OpenXR OpenXR is an open, royalty-free standard for access to virtual reality and augmented reality platforms and devices OpenXR is an API (Application Programming Interface) for XR applications It is developed by a working group managed by the Khronos Group consortium https://www.khronos.org/registry/OpenXR/specs/1.0/html/xrspec.html 15 OpenXR - Architecture Enables developers to build applications that will work across a wide variety of VR/AR devices. The fundamental elements of this API are: ● XrSpace: a representation of the 3D space ● XrInstance: a representation of the OpenXR runtime ● System and XrSystemId: a representation of the devices, including the VR or AR devices and controllers ● XrActions: used to handle user inputs ● XrSession: represents the interaction session between the application and the user 16 OpenXR - Implementations The Khronos Group maintains the list of OpenXR-conformant platforms and products. OpenXR platforms are: ● Microsoft HoloLens 2 and the Windows Mixed Reality headsets ● Oculus PC platform and the Quest/Quest2 devices ● Varjo PC platform ● Collabora Monado Runtime for GNU/Linux ● Valve SteamVR support 17 OpenXR - Support Game and Rendering Engine Support ● Unreal Engine from Epic Games ● Blender ● Unity Browser Support ● Google Chrome and Microsoft Edge web browsers both enable WebXR support using OpenXR by default using the Chromium code base 18 OpenVR OpenVR is a software development kit (SDK) and application programming interface developed by Valve for supporting the SteamVR (HTC Vive) and other VR headset devices The SteamVR platform uses it as the default application programming interface (API) and runtime ● https://github.com/ValveSoftware/openvr ● https://github.com/ValveSoftware/openvr/wiki/A PI-Documentation ● https://www.steamvr.com/en/ 19 WebXR WebXR is a group of standards which are used together to support rendering 3D scenes to hardware designed for presenting virtual worlds (VR), or for adding graphical imagery to the real world (AR) The WebXR Device API implements the core of the WebXR feature set, managing the selection of output devices, render the 3D scene to the chosen device at the appropriate frame rate, and manage motion vectors created using input controllers ● https://immersive-web.github.io/webxr/ ● https://developer.mozilla.org/en-US/docs/Web/API/WebXR_Device_API 20 WebVR WebVR is a JavaScript API for creating immersive 3D, VR experiences in your browser. The goal is to make it easier for everyone to get into VR experiences, no matter what device you have WebVR has been replaced by the WebXR Device API ● https://www.youtube.com/watch?v=Le8pTXQqM3s ● https://webvr.rocks/ ● https://mixedreality.mozilla.org/ ● https://developers.google.com/web/fundamentals/vr ● https://html5hive.org/vr-webvr-tutorial/ 21 Real Time Physics Engines Infinity Tech 3D https://www.youtube.com/watch?v=fO7XhaTGDYg Algoryx https://www.youtube.com/watch?v=jwJS9m5xhd0&t=5s Scientific papers: XPHEVE: An Extensible Physics Engine for Virtual Environments https://ieeexplore.ieee.org/document/4054758 22 Infinity Tech 3D Physics engine for scientific and business critical applications 100% real-time - 100% interactive - 100% immersive http://infinytech3d.com/ SofaAPAPI-Unity3D is a professional physics engine combining performance and accuracy of scientific multi-physics simulation with realtime user haptic interactions in VR 23 Algoryx https://www.algoryx.se/vr-training-simulators/ 24 Distributed Virtual Environments (DVEs) DVEs are geographically distributed computing systems which allow multiple users to interact simultaneously in computer-generated, shared virtual environments DVEs are widely applied in many fields, such as online role playing games, synthesis military simulations, virtual cities, and virtual shopping malls To support large-scale DVEs massive computing resources, storage resources, and highly efficient distributed server architectures are needed 25 Distributed Immersive Environments (DIEs) Multi-person, multi-site shared virtual space ● Navigation ● Avatar representation ● Telephony Where? ● Virtual Festivals ● Virtual Museums https://immerse.news/distributing-immersive-stori es-at-virtual-festivals-1048103a2292 26 Social VR Social VR - The application of VR in the social networks. In the real-time and dynamic simulation environment, they can communicate in a multisensory way, which makes social communication immersive. Social VR games: ● VRChat https://www.youtube.com/watch?v=PWLPw4RE9Ig ● Facebook Horizon https://www.youtube.com/watch?v=5c44q1XW9p4 https://www.roadtovr.com/10-apps-hang-friends-vr/ 27 Collaborative Virtual Environments (CVEs) A CVE is a computer-based, distributed, virtual space or set of places. In such places, people can meet and interact with others, with agents or with virtual objects CVEs might vary in their representational richness from 3D graphical spaces, 2.5D and 2D environments, to text-based environments. Access to CVEs is by no means limited to desktop devices, but might well include mobile or wearable devices, public kiosks, etc. Facebook Spaces - “a new VR app where you hang out with friends in a fun, interactive virtual environment as if you were in the same room.” 28 Facebook Spaces https://www.youtube.com/watch?v=PVf3m7e7OKU https://www.youtube.com/watch?v=7nLtw_yqDhw 29 CVE Types ● Marketing: consumer interaction ● Training in dangerous/harmful situations ● Social entertainment, e.g. multi-player games ● Education: distance learning ● Art: interactive installations ● Built environment: architectural walkthroughs ● Medicine: surgery simulation ● Healthcare: virtual reality in phobia treatment 30 CVEs - Solutions MeetinVR - Combine the convenience of online meetings with the interactivity of face-to-face meetings: meet in virtual workspaces where you can collaborate, create and feel truly together with your colleagues! Virtualist - “Reduce collaboration cost, increase productivity and unleash team creativity wherever you are and whatever device you’re using.” Glue - “We want to extend human presence over physical boundaries and advance human spatial communication and collaboration.” Rumii - “A lot of companies claim to be making the world a better place. At Doghead Simulations, we’re actually doing it.” 31 VR Game Engines and Platforms VART - VR Arcade Game Machine https://www.youtube.com/watch?v=Il4Gc7JI808 Gaming platforms range from the most complicated and expensive to the simplest and cheapest: ● Game Maker Studio, Coscos2D, Marmalade ● Unity, Unreal ● Lumberyard ● 3ds Max Design, Maya ● CryEngine, ApertusVR, AppGameKit 32 VART - VR Arcade Game Machine https://www.vartvrarcade.com/vr-arcade-machine/ 33 VR Game