04-28-2017 11:49 AM
Solved! Go to Solution.
01-07-2019 10:15 AM
01-07-2019 12:41 PM
01-07-2019 01:13 PM
01-07-2019 01:32 PM
01-08-2019 12:30 PM
01-16-2019 02:51 AM
jashan said:
... also, does anyone know why sometimes, the compositor does no head-tracking (i.e. all layers from the compositor "move with the head", or stuck in front of your face)?
03-24-2021 04:17 AM
@jashan did you find a good way to fade in/out the OVROverlay? Are you using OVRManager.SetColorScaleAndOffset to fade in/out from black, apart from using OVROVerlay cubemap to display something around the user?
06-10-2021 01:28 AM
Hello JianZ,
Thank you for your solution.
I have used the OVROVerlaySample and I have replaced SimulateLevelLoad(); with scene loading, but the loading message is not displayed and the scene is frozen until the next scene is loaded.
here is the code:
IEnumerator WaitforOVROverlay()
{
Transform camTransform = mainCamera.transform;
Transform uiTextOverlayTrasnform = loadingTextQuadOverlay.transform;
Vector3 newPos = camTransform.position + camTransform.forward * distanceFromCamToLoadText;
newPos.y = camTransform.position.y;
uiTextOverlayTrasnform.position = newPos;
cubemapOverlay.enabled = true;
loadingTextQuadOverlay.enabled = true;
noneRadioButton.isOn = true;
yield return new WaitForSeconds(0.1f);
//Here is my scene loading
SceneManagerWithParameters.Load(sceneMaison, "", "");
cubemapOverlay.enabled = false;
loadingTextQuadOverlay.enabled = false;
yield return null;
}
Is there something wrong ?
06-10-2021 02:53 AM
I got it working using Async Loading for the scene:
void TriggerLoad() {
StartCoroutine(WaitforOVROverlay());
StartCoroutine(LoadYourAsyncScene());
}
IEnumerator WaitforOVROverlay2()
{
Transform camTransform = mainCamera.transform;
Transform uiTextOverlayTrasnform = loadingTextQuadOverlay.transform;
Vector3 newPos = camTransform.position + camTransform.forward * distanceFromCamToLoadText;
newPos.y = camTransform.position.y;
uiTextOverlayTrasnform.position = newPos;
cubemapOverlay.enabled = true;
loadingTextQuadOverlay.enabled = true;
noneRadioButton.isOn = true;
yield return new WaitForSeconds(1.0f);
yield return null;
}
IEnumerator LoadYourAsyncScene()
{
// The Application loads the Scene in the background as the current Scene runs.
// This is particularly good for creating loading screens.
// You could also load the Scene by using sceneBuildIndex. In this case Scene2 has
// a sceneBuildIndex of 1 as shown in Build Settings.
AsyncOperation asyncLoad = SceneManager.LoadSceneAsync(myScene);
// Wait until the asynchronous scene fully loads
while (!asyncLoad.isDone)
{
yield return null;
}
}