Subscribe to GameFromScratch on YouTube Support GameFromScratch on Patreon

1. February 2018


As part of the Godot 3 release, Godot got official support for VR headsets using Cardboard, SteamVR and OpenHMD interfaces implemented using the new GDNative functionality in Godot.  Today I decided to test it using my Samsung Odyssey HMD a Windows Mixed Reality headset that has beta compatibility with SteamVR.  I personally had very little hope for things to go smoothly… boy was I wrong.  What follows is a step by step guide to using VR in Godot.  This whole process is made possible by the hard work of Bastiaan Olij, his Godot 3 OpenVR project is available here.


First, we assume that you are using Godot 3 or higher.  If you havent already installed Godot 3 or higher, go do so now.

Next, create a new project, the specifics really don’t matter.  There are a few requirements, every scene must have a ARVRCamera and the camera must have an ARVROrigin as it’s parent.  I start with the following setup:

image


The ARVROrigin only has one property, the world scale.  The ARVRCamera has several more options such as FoV, an Environment and more.  For now the defaults are fine.  Next we need to do a small bit of code to run the VR server.  Attach a script to the root node and add the following code to _ready:

func _ready():
	var vr = ARVRServer.find_interface("OpenVR")
	if(vr and vr.initialize()):
		get_viewport().arvr = true
		get_viewport().hdr = false


And… done!  Really, that’s it.  Add a few objects to your scene under the ARVROrigin.  Plugin in your headset and press play.  At this point in time your scene should render on your headset and you should already have head tracking enabled!


Next up, let’s go ahead and install the OpenVR functionality.  First select the AssetLib tab:

image


Now search for VR and select OpenVR module:

image


Click the install button.  Then once downloaded, click install again:

image


Now click Install once again and addons will be copied to your project including all of the dlls and scenes we need.


Next it’s time to implement some controller logic.  You could implement them yourself using ARVRController, or you can let someone else do the hard work!  With ARVROrigin selected, right click and select Instance Child Scene…

image


Navigate into the module we installed earlier into the folder addons/godot-openvr/scenes and select ovr_controller.tscn.

image



Next you can add default behavior to the controller you just created.  Right click the newly created controller node, instance child scene and this time select Function_Pointer.tscn.  Your scene should now look like:

image


At this point you now have a 3D game with full head tracking, a single controller with pointer functionality.  Pretty awesome!  For even more functionality you can implement another controller, attach teleport controls to it and you will have the ability to move around.  Next replace your camera with a ovr_first_person scene and presto, you’ve got a VR game!


If you’d prefer the video version check here (or embedded below):

Programming ,

18. January 2018


Today Oculus announced a new developer program, Oculus Start.  If you are accepted to the program youimage can get a year free of Unity plus or a royalty free Unreal Engine license!  Additionally you get access to additional support directly from Oculus as well as addition SDK and beta tools access.

From the Oculus blog:

Today, we're launching a developer program called Oculus Start aimed at providing access, support and savings to qualifying VR developers. We're launching this program to offload some of the development costs of qualified developers so that they can focus on what's really important - creating amazing VR applications. We know there is no shortage of inspired ideas and creative minds breaking ground in VR. Creativity isn't the barrier. Resources shouldn't be either. If your first app is underway, we can help you optimize for more success in this project and your next. Just as we're scaling VR through our devices, we're scaling support to the developer ecosystem.

We're accepting applications starting today!

To see if you qualify, fill in the appropriate info in the application form.Once submitted, we'll review your submission and we'll get back to you shortly.

There are no fees or catches (but, be sure to check out the important info and link to governing terms. We simply want to help support developers on their VR journey and continue to build the VR future together.


The criteria to qualify for Oculus Start is as follows:

Oculus may approve your application in its sole discretion, and approval may be withheld or withdrawn without notice. You are eligible to participate if you: (a) have a valid email address; (b) are at least the age of majority in your jurisdiction of residence; (c) have never yourself or through a VR project received funding from a platform (e.g., without limitation, Oculus, Google, Microsoft, Valve, Steam, HTC), venture capital, or crowdsourcing over USD$10,000.00; (d) as of the date of application, must have published an app on the Oculus Store or another virtual reality platform; (e) have an Oculus developer account; and (f) if you are participating in connection with your VR work within an organization, that organization must be privately held. Limit of one (1) application per person and up to two (2) per organization. Each of up to two (2) developers working on VR projects within the same organization may apply to the program, however, no developer’s application will be accepted if they work with more than one (1) other developer on VR projects within an organization.

So then, what are the benefits of Oculus Start?  They are threefold, access, support and savings as follows:

Access

A direct path to early tech and networking opportunities get you going faster, first. Benefits may include:

Get developer kits for new and existing hardware.

Receive access to beta tools and services.

Gain new knowledge and bond with fellow developers at industry events like Oculus Connect.

Support

Oculus experts will help you troubleshoot and elevate your VR creations. Benefits may include:

Receive dedicated technical support.

Meet 1:1 with our veteran VR team at local events.

Connect with the community of VR developers to share your development experiences.

Savings

Oculus partnerships and network benefits will help offset development costs. Benefits may include:

Receive one year free Unity Plus license or a royalty free Unreal license.*

Get to know the Oculus Store better with Oculus wallet credits.

Learn more at the Oculus Start homepage.

GameDev News

18. December 2017


Google have just released the second preview version of ARCore, their augment reality SDK.  Augmented reality is really nothing new, it’s just bringing together camera, GPS, gyroscope and similar libraries in a single location, enabling developers to overlay information on real worldARCore images.


Details of this new release:

Today, we’re releasing an update to our ARCore Developer Preview with several technical improvements to the SDK, including:

  • A new C API for use with the Android NDK that complements our existing Java, Unity, and Unreal SDKs;

  • Functionality that lets AR apps pause and resume AR sessions, for example to let a user return to an AR app after taking a phone call;

  • Improved accuracy and runtime efficiency across our anchor, plane finding, and point cloud APIs.

To learn more about the SDK updates, check out the Android, Unity, and Unreal Github pages.


Along with the updated preview for Android, they also released updated Unity and Unreal Engine implementations.


Related to the ARCore announcement, Google also killed off Project Tango a competing AR project at Google.

The Tango project will be deprecated on March 1st, 2018.
Google is continuing AR development with ARCore, a new platform designed for building augmented reality apps for a broad range of devices without the requirement for specialized hardware.

GameDev News

7. November 2017


With the upcoming Godot 3.0 release, there is a pretty major change to the physics system within the engine.  They have decided to replace the in-house physics engine with the open source Bullet physics engine.  Bullet is a well established open source project and has been used in such games as Rocket League, Grand Theft Auto 4 and DiRT as well as powering applications such as Blender and Cinema4D.  This change will not affect 2D physics in the Godot engine.


From the Godot announcement:

Introducing Bullet

Godot always supported an abstract physics interface, so Andrea Catania (Odino) volunteered to add Bullet support as a backend. I initially though it would not be possible to replicate Godot's API in Bullet faithfully, but Andrea proved me wrong and did a fantastic job. He also finished before the Beta deadline, so his work was just merged and will be present in Godot 3.0.

Physics should work just like before, and no code should change, except Bullet is being used internally. Godot's old physics engine is provided for compatibility and can be selected in the project settings, but will likely be removed by the time 3.1 is out.


In an unrelated but similarly timed announcement VR support was also added to Godot in the recently released Alpha 2.  You can read more about VR support here.  I did a hands-on video about both physics and VR in Godot available here or embedded below.

GameDev News ,

11. October 2017


At the annual Oculus Connect developer conference, there have been several announcements on the VR front.  First is a pretty massive price cut to the existing Oculus Rift bundle, the second such price cut, driving the price down to $399 USD.

Summer of Rift had a major impact on the VR industry, and the community’s response showed that the appetite for best-in-class VR hardware and games is stronger than ever. We want to continue getting VR into more people’s hands, so we’re permanently lowering the price of Rift to $399 USD.

Each Rift bundle comes with Touch controllers, sensors, and six free apps that give you hours of entertainment including Epic’s arcade shooter, Robo Recall, and our creative tools, Medium and Quill.

Read more about the price cut here.


In addition to the price cuts, they also announced an all new Oculus device, the Oculus Go.  It is binary compatible with the Gear VR.  Essentially it seems to be a GearVR without the phone requirement and built in speakers.  Available for $199USD, it also comes with a controller and will certainly OcGomake VR more accessible to a wider audience.

Our first standalone product is Oculus Go—the easiest way to jump into VR. It ships early next year, starting at $199 USD. It’s awesome for watching movies or concerts, playing games, or just hanging out with your friends in VR.

This all-in-one device makes VR more accessible than ever and represents a huge leap forward in comfort, visual clarity, and ease-of-use.

The headset is super lightweight, and the new fabric used for the facial interface is soft and breathable.

The high-resolution fast-switch LCD screen dramatically improves visual clarity and reduces screen door effect. And the next-generation lenses are our best ever—offering a wide field of view with significantly reduced glare.

Oculus Go also ships with integrated spatial audio. The speakers are built right into the headset, transporting you straight into VR and making the headset easy to share with someone else. If you need it, there’s also a 3.5mm headphone jack for private listening.

Gear VR and Oculus Go apps are binary compatible, and they share the same controller input set—that means developers building for Gear VR are already building for Oculus Go. As an added plus, the best of our mobile VR content library will be available to everyone on day one.

Oculus Go pushes the envelope of what’s possible at such an accessible price point, and we can’t wait to share more early next year.

Read more about the new device here.


They also announced the open sourcing of the Rift DK2.

Today, we’re excited to announce the open source release of Rift Development Kit 2 (DK2). Our progress since the release of DK1 has been thanks in no small part to this community working tirelessly alongside us. We’re doing this both to preserve and share what we learned about VR in the early days, and to let anyone use the design in their own projects.

The open source release of the DK2 hardware follows on from our earlier releases of Rift DK1 and Latency Tester. This includes schematics, board layout, mechanical CAD, artwork, and specifications under a Creative Commons Attribution 4.0 license, and firmware under BSD+PATENT licences. We present a guided tour of DK2 for those interested in digging in deeper.


All told, a pretty big day for VR.  I’ve long held that the future of VR is a standalone device, untethered from a computer.  Hopefully the new Oculus Go solves many of the GearVR’s thermal issues and has a serviceable battery life.  VR is a great experience, but when its limited to 15 minute intervals, it kind of loses something!


GameDev News

Month List

Popular Comments