ValveSoftware / steamvr_unity_plugin

SteamVR Unity Plugin - Documentation at: https://valvesoftware.github.io/steamvr_unity_plugin/
BSD 3-Clause "New" or "Revised" License
1.04k stars 258 forks source link

Teleport overlay not visible with LWRP #422

Closed jgwinner closed 3 years ago

jgwinner commented 5 years ago

When I use the Lightweight rendering pipeline, I get some weird display artifacts with the Teleport prefab.

Current SteamVR downloaded from the Unity Asset store, and Unity 2019.1.1f1

I've tried every combination of Render Queue, SeeThru, and Darken, but get essentially the same issue. The teleport destination UI and the hoop/arrows don't show up unless they are rendering 'behind' something.

Check out this screenshot for an example of the problem:

image

You can see the teleport ring and arrow only where they are 'on top' of the 2x4 from the demo assets. Oddly, it doesn't display on the floor or the floor plane in the distance, just where it goes through another polygon. Odd.

    == John ==
jonathan-bryant commented 5 years ago

Chiming in with the same issue, arguably related to #210

image

Manchaiser commented 5 years ago

Hey I made a kinda remake of highlight shader on shader graph. Im not sayin it 100% same as default one but it works like default and might be useful for someone so: image Just make sure u updated shader in materials (/Assets/SteamVR/InteractionSystem/Teleport/Materials/) where old highlight shader is used.

jonathan-bryant commented 5 years ago

@Manchaiser Thank you, absolute legend. image

EDIT: Something to note is to remember to set the references in the properties window.

Manchaiser commented 5 years ago

In case if someone can't reproduce shadergraph as it described on screenshot above here is packed file of shadergraph. Unpack it inside assets folder and remap every material in steamvr where old highlight shader is used. Should work just as expected Highlight.zip

ataylor09 commented 5 years ago

Brilliant... exactly what I was looking for!

jgwinner commented 5 years ago

It's a cool workaround. I haven't checked in a while, but the bottom line is, the project generator needs to produce a stock project that works or a particular rendering pipeline needs to be documented as being a minimum requirement.

    == John ==
ataylor09 commented 5 years ago

@Manchaiser you don't happen to have a shader-graph equivalent of the Valve/VR/Silhouette shader do you?

Giantbean commented 4 years ago

The shadergraph makes the highlights appear but the teleportation still wont work in Unity 2019.2.12f1. The teleport floor is also gray instead of highlighting?

omrib commented 4 years ago

Same problem with 2019.3f universal render pipeline.

paulerikf commented 4 years ago

@ataylor09 Did you ever find anything for the silhouette shader?

ataylor09 commented 4 years ago

@ataylor09 Did you ever find anything for the silhouette shader?

No I didn’t unfortunately. I ended up implementing a different visual method for highlighting objects

armanhamzehlou commented 4 years ago

This solution works!

zite commented 4 years ago

Beta 3 of the SteamVR Unity Plugin has URP shaders, I'm not positive if those will work for LWRP though. https://github.com/ValveSoftware/steamvr_unity_plugin/releases/tag/2.6.0b3

doktorbanana commented 4 years ago

Hey I made a kinda remake of highlight shader on shader graph. Im not sayin it 100% same as default one but it works like default and might be useful for someone so: image Just make sure u updated shader in materials (/Assets/SteamVR/InteractionSystem/Teleport/Materials/) where old highlight shader is used.

This is awesome. Thank you so much.

elliottower commented 3 years ago

The Valve/VR/SeeThru and Valve/VR/Silhouette shaders are also missing even with the most recent 2.6.1 release. Shouldn't be too hard to recreate using shader graphs, maybe someone could upload a .zip similar to the highlights one above

jgwinner commented 3 years ago

This is really absurd. This needs to be fixed. Yes, the community has come up with a lot of fixes for the base problem, but when you buy a car you expect it to have tires!

@zite Keith - you added the "Will Fix" tag - can this be fixed? Can the Valve shader be uploaded, or maybe accept one of the community contributions? (I've been working with Unreal and WebXR lately, sorry, or I'd suggest something).

Thank you!

    == John ==
jgwinner commented 3 years ago

Two years, and a basic scene still doesn't work out of the box?

zite commented 3 years ago

The example scene does in fact work out of the box. LWRP as far as I know is no longer supported by unity. This was marked will fix but not fixed because we were suspicious that unity would be dropping LWRP from the default options. The shader is open source so the community is welcome to change it at will.

jgwinner commented 3 years ago

The example scene does NOT work with URP out of the box, which is what LWRP became.

https://github.com/ValveSoftware/steamvr_unity_plugin/issues/875 This is still an issue.

This is like pulling teeth. It was never fixed and was a huge problem, for years, then you drop it even though it's still an issue.

paulerikf commented 3 years ago

URP still seems to be the most recommended pipeline for Unity VR, can only speak for myself but it definitely felt pretty janky having my first SteamVR experience be having to remake the highlight shader 'cause I couldn't see where I was teleporting.

zite commented 3 years ago

Fixing URP support is valid, there is code in the plugin to make that work. So if it isn't working then we'll need specific bugs around that, and new issues for them should be created.

Some people have been petitioning for LWRP from previous Unity versions to be supported. I'm trying to clarify that we will not be doing that.

jgwinner commented 3 years ago

@zite I appreciate that. Thank you.

Fixing URP support is valid, there is code in the plugin to make that work. So if it isn't working then we'll need specific bugs around that, and new issues for them should be created.

I posted that already: https://github.com/ValveSoftware/steamvr_unity_plugin/issues/875

Some people have been petitioning for LWRP from previous Unity versions to be supported. I'm trying to clarify that we will not be doing that.

Ok, that's understandable because ... I mean, nothing was done for 2 years. Why fix it now? Sorry, that was snarky - but I completely agree (seriously) backporting to LWRP isn't really needed. People with newer Unity should move forward with URP.

You understand the quality problem? URP sample scenes with no added content don't work? It's like the test drive of a new car that has an engine explode starting the car. How many sales will you make?

Chu-XiaoYao commented 3 years ago

So, how to solve it?