Install Steam
login
|
language
简体中文 (Simplified Chinese)
繁體中文 (Traditional Chinese)
日本語 (Japanese)
한국어 (Korean)
ไทย (Thai)
Български (Bulgarian)
Čeština (Czech)
Dansk (Danish)
Deutsch (German)
Español - España (Spanish - Spain)
Español - Latinoamérica (Spanish - Latin America)
Ελληνικά (Greek)
Français (French)
Italiano (Italian)
Bahasa Indonesia (Indonesian)
Magyar (Hungarian)
Nederlands (Dutch)
Norsk (Norwegian)
Polski (Polish)
Português (Portuguese - Portugal)
Português - Brasil (Portuguese - Brazil)
Română (Romanian)
Русский (Russian)
Suomi (Finnish)
Svenska (Swedish)
Türkçe (Turkish)
Tiếng Việt (Vietnamese)
Українська (Ukrainian)
Report a translation problem
However, it also takes a bool for fading the background color. This is the color used by the "white room". Steam's VR mode sets this to a dark blue to match the Big Picture color scheme.
It used to be that this color got reset when the app hangs, but I think that has since been fixed (resets on disconnect only now), so I think you can set that yourself.
The other thing to do would be to set up an overlay with a loading screen (ideally with an animated progress bar), and explicitly control the fade to and from the grid using the compositor's FadeGrid function and force it to be a minimum time so it doesn't look like a flash if loading doesn't take particularly long.
If I find time, I'll try to put together an example.
I tried
and the color did not seem to stick between scenes. Maybe you fixed it in the next update?
Lastly, I tried working with SteamVR_Overlay, it would show the texture in the unity Game view but not in the hmd. Also systemOverlayVisible and activeSystemOverlay are always false.
Thanks again for the feedback.
Note that I'm on the 1.0.3 version of the SteamVR plugin.
Related, I also recently added cubemap rendering support in the compositor, so instead of just setting a color, you can specify a skybox to display.
We've been talking about applying a color matrix / offset that you can control to do color correction, desaturation, etc. without introducing banding, but haven't gotten to that yet.
I have tried to LoadLevel(), LoadLevelAsync(), LoadLevelAdditive(), and LoadLevelAdditiveAsync(), but have not been able to prevent compositor "white room" from showing when switching scenes.
The best I have done is to keep everything in the same scene and use SteamVR_Fade() to make a transition with a white wash. This is unwieldy though, especially with scene level settings like lighting, fog, etc. that vary between scenes.
I have had a bit of success with vr.compositor.FadeToColor(), but the grid lines still show and vr.compositor.FadeGrid() appears to not affect the compositor grid.
Any thoughts on how to simply fade to white between scenes???
Thanks!
Aaron mentioned we will have the ability to put a skybox instead of the white room in the next update. I beileve you can use that to do what you explained.
You can also use SteamVR_Fade.View(Color.white, [time]), but I'm not sure if it gets rid of the grid.
Hope that helps.
This is probably poorly name. It's for fading from the scene to the "grid" view (a.k.a. compositor or "construct").
> SteamVR_Fade.View(Color.white, [time])
This should do what you want. It draws a quad on top of everything after distortion has been applied. I really should remove this functionality though because it can be very disorienting to users to fade to a solid color. I'd much rather have folks set a skybox even if it's a simple color gradient, so players remain comfortable during these transitions. Rather than remove the Fade.View(color), I will likely take the color as a hint, and render a gradient for the horizon based on that value (which will be cheaper than a full on skybox).
Also, if you look at what SteamVR_Fade.View does, it's calling through to a compositor interface which takes a bool as the last parameter. By default, it's fading the "foreground" color. If you flip the value so it fades the "background" color instead, that will replace the default "white" value when fading to the compositor/construct with the grid still visible.
We are working on an SDK update to be released soon, and I will update the Unity plugin at the same time which will have the new skybox interface in it. I think this, plus a loading placard overlay (ideally with an animated progress bar) will make for the most pleasant user experience for dealing with level transitions.
Hopefully the skybox will stay persistent throughout scene transitions.
I saw cubemap support in release notes for SteamVR. Are we just waiting on an update to unity plugin?
Thanks again,
Sam
I can change this. It currently gets cleared after the game times out so we don't get stuck with a fade on, but I can move this to where the game disconnects instead. I need to do some work to store these things per-app though first.
Correct.