Hi,
Did someone manage to compile and run properly all the elements to use the GoogleVRControllerInputComponent blueprint from the branch 4.13-google-vr ?
https://github.com/googlevr-unreal/UnrealEngine/tree/4.13-googlevr
I already manage to run a daydream app on my pixel but it seems that the GoogleVRControllerInputComponent can not be added to the project if using
the version tagged 4.13.2-googlevr-1.1 or 4.13.2-googlevr-1.0.3. Some dll related to to the google controller are missing
I guess that I am not the only one interested in getting access to The Arm model and the GoogleVRMotionControllerComponent …
I could not get the 4.13-google-vr branch to work at all - after building and installing on the phone the app crashes after starting it that combined with stuff like: Daydream Splash image is uncomfortably close to camera - VR and AR Development - Unreal Engine Forums
make me wonder if the google daydream ue4 dev team have actually tested this branch and their UE4 plugin features at all
Well,
I manage to use every components from daydream including motion controller etc… but I really would like to visualize the Google Arm, the laser pointer etc.
A lot of useless work is required otherwise. And for this, I have no clues right now to get it to work
The main issue for me is the download/compile time I need to give a try on a particular version.
I do not know if Google Devs really tested the last version they propose but it seems some stuff is missing to use this GoogleVrMotionCOntrollerCOmponent in blueprint
nesrak1
(nesrak1)
January 6, 2017, 9:35pm
4
Ok, I will try this way too so.
Did you manage to display the arm too ?
nesrak1
(nesrak1)
January 6, 2017, 10:18pm
6
Haven’t tried that yet, I’ll try later
nesrak1
(nesrak1)
January 6, 2017, 10:40pm
7
What do you mean display the arm?
https://developers.google.com/vr/unreal/arm-model
This part of the documentation describes that we can benefit of the GoogleVRMotionController Component and its 3Dmodel.
They call Arm Model, the model that we can visualize to check the physical location of the Daydream controller, interaction etc.
Until now, I was not able to get it.
nesrak1
(nesrak1)
January 6, 2017, 11:16pm
9
Yeah that’s what it is, the 3D model and the laser pointer and everything is in that plugin.
Ok, I just tried but in my case using 4.14.2 I got some error message
>(23): fatal error C1083: Impossible d’ouvrir le fichier include : ‘RendererPrivate.h’ : No such file or directory
2>(133): error C4579: ‘gvr_arm_model::Controller::POINTER_OFFSET’: in-class initialization for type ‘const gvr_arm_model::Vector3’ is not yet implemented; static member will remain uninitialized at runtime but use in constant-expressions is supported
2>(136): error C4579: ‘gvr_arm_model::Controller::DEFAULT_SHOULDER_RIGHT’: in-class initialization for type ‘const gvr_arm_model::Vector3’ is not yet implemented; static member will remain uninitialized at runtime but use in constant-expressions is supported
2>(139): error C4579: ‘gvr_arm_model::Controller::ELBOW_MIN_RANGE’: in-class initialization for type ‘const gvr_arm_model::Vector3’ is not yet implemented; static member will remain uninitialized at runtime but use in constant-expressions is supported
2>(140): error C4579: ‘gvr_arm_model::Controller::ELBOW_MAX_RANGE’: in-class initialization for type ‘const gvr_arm_model::Vector3’ is not yet implemented; static member will remain uninitialized at runtime but use in constant-expressions is supported
2>(143): error C4579: ‘gvr_arm_model::Controller::FORWARD’: in-class initialization for type ‘const gvr_arm_model::Vector3’ is not yet implemented; static member will remain uninitialized at runtime but use in constant-expressions is supported
2>(133): error C4579: ‘gvr_arm_model::Controller::POINTER_OFFSET’: in-class initialization for type ‘const gvr_arm_model::Vector3’ is not yet implemented; static member will remain uninitialized at runtime but use in constant-expressions is supported
2>(146): error C4579: ‘gvr_arm_model::Controller::UP’: in-class initialization for type ‘const gvr_arm_model::Vector3’ is not yet implemented; static member will remain uninitialized at runtime but use in constant-expressions is supported
2>(136): error C4579: ‘gvr_arm_model::Controller::DEFAULT_SHOULDER_RIGHT’: in-class initialization for type ‘const gvr_arm_model::Vector3’ is not yet implemented; static member will remain uninitialized at runtime but use in constant-expressions is supported
2>(139): error C4579: ‘gvr_arm_model::Controller::ELBOW_MIN_RANGE’: in-class initialization for type ‘const gvr_arm_model::Vector3’ is not yet implemented; static member will remain uninitialized at runtime but use in constant-expressions is supported
2>(140): error C4579: ‘gvr_arm_model::Controller::ELBOW_MAX_RANGE’: in-class initialization for type ‘const gvr_arm_model::Vector3’ is not yet implemented; static member will remain uninitialized at runtime but use in constant-expressions is supported
2>(143): error C4579: ‘gvr_arm_model::Controller::FORWARD’: in-class initialization for type ‘const gvr_arm_model::Vector3’ is not yet implemented; static member will remain uninitialized at runtime but use in constant-expressions is supported
2>(146): error C4579: ‘gvr_arm_model::Controller::UP’: in-class initialization for type ‘const gvr_arm_model::Vector3’ is not yet implemented; static member will remain uninitialized at runtime but use in constant-expressions is supported
2>(27): warning C4996: ‘UActorComponent::bWantsBeginPlay’: bWantsBeginPlay was inconsistently enforced and is now unused Please update your code to the new API before upgrading to the next release, otherwise your project will no longer compile.
2>
nesrak1
(nesrak1)
January 7, 2017, 12:34am
11
You’re compiling googlevrhmd, don’t copy that one over only GoogleVRController
Did you guys test the splash screen yet? Any way to make it not 1cm from your eyes?
Blueprint nodes:
“Set Daydream Loading Splash Screen Texture”
&
“Set Daydream Loading Splash Screen Enable”
Great idea with getting the googleVRController plugin into 4.14
Do you mind sharing the resulting plugin folder? Since you’ve compiled it for 4.14 it could be shared for the rest of us so we could also just copy it over into our 4.14 source folder and save some time re-compiling
I tried both, with and without googlevrhmd. Both ways do not compile using VS2015.
nesrak1
(nesrak1)
January 7, 2017, 4:30pm
14
Precompiled plugin: GoogleVRController.7z - Google Drive
Really not too sure how it didn’t compile for you.
Edit: What is the log for the compile?
Edit 2: How are you currently showing the splash screen? BP would only execute after the game has loaded right?
Re,
first thanks for sharing a prebuild version, I guess others will benefit from this. I just included your compiled plugin in a blank project, so I guess it is working.
1>------ Début de la génération : Projet : UE4, Configuration : BuiltWithUnrealBuildTool Win32 ------
2>------ Début de la génération : Projet : MyProjectWithPrebuil, Configuration : Development_Editor x64 ------
2> Performing full C++ include scan (hot reloading a new target)
2> Creating makefile for hot reloading MyProjectWithPrebuilEditor (no existing makefile)
2> Compiling game modules for hot reload
2> Parsing headers for MyProjectWithPrebuilEditor
2> Running UnrealHeaderTool “E:\Dev\MyProjectWithPrebuil\MyProjectWithPrebuil.uproject” “E:\Dev\MyProjectWithPrebuil\Intermediate\Build\Win64\MyProjectWithPrebuilEditor\Development\MyProjectWithPrebuilEditor.uhtmanifest” -LogCmds=“loginit warning, logexit warning, logdatabase error” -Unattended -WarningsAsErrors -installed
2> Reflection code generated for MyProjectWithPrebuilEditor in 4,8418215 seconds
2> Performing 5 actions (4 in parallel)
2> [4/5] Resource ModuleVersionResource.rc.inl
2> [3/5] Resource PCLaunch.rc
2> Module.GoogleVRController.cpp
2> GoogleVRController.generated.cpp
2>E:\Dev\MyProjectWithPrebuil\Plugins\GoogleVRController\Source\GoogleVRController\Private\ArmModel\gvr_arm_model.h(133): error C4579: ‘gvr_arm_model::Controller::POINTER_OFFSET’: in-class initialization for type ‘const gvr_arm_model::Vector3’ is not yet implemented; static member will remain uninitialized at runtime but use in constant-expressions is supportedE:\Dev\MyProjectWithPrebuil\Plugins\GoogleVRController\Source\GoogleVRController\Private\ArmModel\gvr_arm_model.h(133): error C4579: ‘gvr_arm_model::Controller::POINTER_OFFSET’: in-class initialization for type ‘const gvr_arm_model::Vector3’ is not yet implemented; static member will remain uninitialized at runtime but use in constant-expressions is supported
2>
2>E:\Dev\MyProjectWithPrebuil\Plugins\GoogleVRController\Source\GoogleVRController\Private\ArmModel\gvr_arm_model.h(136): error C4579: ‘gvr_arm_model::Controller::DEFAULT_SHOULDER_RIGHT’: in-class initialization for type ‘const gvr_arm_model::Vector3’ is not yet implemented; static member will remain uninitialized at runtime but use in constant-expressions is supportedE:\Dev\MyProjectWithPrebuil\Plugins\GoogleVRController\Source\GoogleVRController\Private\ArmModel\gvr_arm_model.h(136): error C4579: ‘gvr_arm_model::Controller::DEFAULT_SHOULDER_RIGHT’: in-class initialization for type ‘const gvr_arm_model::Vector3’ is not yet implemented; static member will remain uninitialized at runtime but use in constant-expressions is supported
2>
2>E:\Dev\MyProjectWithPrebuil\Plugins\GoogleVRController\Source\GoogleVRController\Private\ArmModel\gvr_arm_model.h(139): error C4579: ‘gvr_arm_model::Controller::ELBOW_MIN_RANGE’: in-class initialization for type ‘const gvr_arm_model::Vector3’ is not yet implemented; static member will remain uninitialized at runtime but use in constant-expressions is supported
2>E:\Dev\MyProjectWithPrebuil\Plugins\GoogleVRController\Source\GoogleVRController\Private\ArmModel\gvr_arm_model.h(139): error C4579: ‘gvr_arm_model::Controller::ELBOW_MIN_RANGE’: in-class initialization for type ‘const gvr_arm_model::Vector3’ is not yet implemented; static member will remain uninitialized at runtime but use in constant-expressions is supportedE:\Dev\MyProjectWithPrebuil\Plugins\GoogleVRController\Source\GoogleVRController\Private\ArmModel\gvr_arm_model.h(140): error C4579: ‘gvr_arm_model::Controller::ELBOW_MAX_RANGE’: in-class initialization for type ‘const gvr_arm_model::Vector3’ is not yet implemented; static member will remain uninitialized at runtime but use in constant-expressions is supported
2>
2>E:\Dev\MyProjectWithPrebuil\Plugins\GoogleVRController\Source\GoogleVRController\Private\ArmModel\gvr_arm_model.h(140): error C4579: ‘gvr_arm_model::Controller::ELBOW_MAX_RANGE’: in-class initialization for type ‘const gvr_arm_model::Vector3’ is not yet implemented; static member will remain uninitialized at runtime but use in constant-expressions is supported
2>E:\Dev\MyProjectWithPrebuil\Plugins\GoogleVRController\Source\GoogleVRController\Private\ArmModel\gvr_arm_model.h(143): error C4579: ‘gvr_arm_model::Controller::FORWARD’: in-class initialization for type ‘const gvr_arm_model::Vector3’ is not yet implemented; static member will remain uninitialized at runtime but use in constant-expressions is supported
2>E:\Dev\MyProjectWithPrebuil\Plugins\GoogleVRController\Source\GoogleVRController\Private\ArmModel\gvr_arm_model.h(146): error C4579: ‘gvr_arm_model::Controller::UP’: in-class initialization for type ‘const gvr_arm_model::Vector3’ is not yet implemented; static member will remain uninitialized at runtime but use in constant-expressions is supported
2>E:\Dev\MyProjectWithPrebuil\Plugins\GoogleVRController\Source\GoogleVRController\Private\ArmModel\gvr_arm_model.h(143): error C4579: ‘gvr_arm_model::Controller::FORWARD’: in-class initialization for type ‘const gvr_arm_model::Vector3’ is not yet implemented; static member will remain uninitialized at runtime but use in constant-expressions is supported
2>E:\Dev\MyProjectWithPrebuil\Plugins\GoogleVRController\Source\GoogleVRController\Private\ArmModel\gvr_arm_model.h(146): error C4579: ‘gvr_arm_model::Controller::UP’: in-class initialization for type ‘const gvr_arm_model::Vector3’ is not yet implemented; static member will remain uninitialized at runtime but use in constant-expressions is supported
2>E:\Dev\MyProjectWithPrebuil\Plugins\GoogleVRController\Source\GoogleVRController\Private\GoogleVRControllerInputComponent.cpp(27): warning C4996: ‘UActorComponent::bWantsBeginPlay’: bWantsBeginPlay was inconsistently enforced and is now unused Please update your code to the new API before upgrading to the next release, otherwise your project will no longer compile.
2> C:\Program Files\Unreal\Epic Games\4.14\Engine\Source\Runtime\Engine\Classes\Components/ActorComponent.h(193): note: voir la déclaration de ‘UActorComponent::bWantsBeginPlay’
2>E:\Dev\MyProjectWithPrebuil\Plugins\GoogleVRController\Source\GoogleVRController\Private\GoogleVRMotionControllerComponent.cpp(50): warning C4996: ‘UActorComponent::bWantsBeginPlay’: bWantsBeginPlay was inconsistently enforced and is now unused Please update your code to the new API before upgrading to the next release, otherwise your project will no longer compile.
2> C:\Program Files\Unreal\Epic Games\4.14\Engine\Source\Runtime\Engine\Classes\Components/ActorComponent.h(193): note: voir la déclaration de ‘UActorComponent::bWantsBeginPlay’
2>ERROR : UBT error : Failed to produce item: E:\Dev\MyProjectWithPrebuil\Plugins\GoogleVRController\Binaries\Win64\UE4Editor-GoogleVRController-4543.dll
2> Total build time: 33,91 seconds
2>C:\Program Files (x86)\MSBuild\Microsoft.Cpp\v4.0\V140\Microsoft.MakeFile.Targets(37,5): error MSB3075: La commande ““C:\Program Files\Unreal\Epic Games\4.14\Engine\Build\BatchFiles\Build.bat” MyProjectWithPrebuilEditor Win64 Development “E:\Dev\MyProjectWithPrebuil\MyProjectWithPrebuil.uproject” -waitmutex” s’est arrêtée avec le code 5. Assurez-vous que vous disposez de droits suffisants pour exécuter cette commande.
========== Génération : 1 a réussi, 1 a échoué, 0 mis à jour, 0 a été ignoré ==========
The log file is similar to the previous one …
I just started an update of VS215… My current version is described below, error C4579 seems related to c++11 features, so let see.
Microsoft Visual Studio Community 2015
Version 14.0.23107.0 D14REL
Microsoft .NET Framework
Version 4.6.01586
So I can confirm that we need to use VS2015 with update 3 to compile the plugins.
The project compiled properly with the update.
Ok, so Update 1 works too.
I first load a blank level which loads relatively quickly then fire the BP node then load the real game level which takes long enough to see the splash for a good 2-3 seconds. The splash works well enough that is does not hitch while loading the next level and remains on screen even though the previous level is being unloaded
PS: Thanks for sharing the pre-compiled plugin
nesrak1
(nesrak1)
January 10, 2017, 1:20am
20
I guess this only shows when a map is loading or something? My really huge level takes like half a second to load and I barely saw it, and can’t manually show it.
Looking around at github and in 1.0.2 (we are using 1.0.1), there is this new line of code:
/**
* Set the distance in meter the daydream splash screen will be rendered at
*/
UFUNCTION(BlueprintCallable, Category = “GoogleVRHMD”, meta = (Keywords = “Cardboard AVR GVR Splash”))
static void SetDaydreamLoadingSplashScreenDistance(float NewDistance);
Maybe if I compile or something it will be there?