Unity-Technologies / com.unity.demoteam.hair

An integrated solution for authoring / importing / simulating / rendering strand-based hair in Unity.
Other
710 stars 96 forks source link

Hair rendered with New "High Quality Line Renderer" does not work in XR #55

Open qlee01 opened 1 year ago

qlee01 commented 1 year ago

Not sure if this is even a topic for this lib, probably this is due to a bug in HDRP, I also did a regular Unity bug report for this: The rendering option "High Quality Lines" does not work correctly in XR.

Tried on latest beta (2023.1.7b). Hair gets rendered twice in low quality in XR. Without XR, everything seems to work as expected, looks much better then with standard line renderer.

elcarlosfue commented 1 year ago

Hi there,

I have the same problem "HDRP High Quality Lines" just doesn't work when compiling no matter what mode you use it. hair disappears. It works with the other "strand tenderer" but nothing else. A pity since the only thing that makes the hair look good is in the "HDRP High Quality Lines" mode.

Did you find any solution?

qlee01 commented 1 year ago

Hi there,

I have the same problem "HDRP High Quality Lines" just doesn't work when compiling no matter what mode you use it. hair disappears. It works with the other "strand tenderer" but nothing else. A pity since the only thing that makes the hair look good is in the "HDRP High Quality Lines" mode.

Did you find any solution?

Hey, unfortunately not yet. My bug report was accepted by Unity QA, if you like, please vote for it here: https://issuetracker.unity3d.com/issues/gameobject-is-rendered-incorrectly-when-the-high-quality-line-rendering-is-enabled

I have not tried build yet, as it clearly does not work in Editor as long as Single Pass Instanced is used.

elcarlosfue commented 1 year ago

It doesn't exactly work in the editor. If you compile it, it won't work for sure. I already gave you a vote for this.

Maybe it works in the version that the hair was released? (I didn't try it there) but in 2023 beta for now not

qlee01 commented 1 year ago

It doesn't exactly work in the editor. If you compile it, it won't work for sure. I already gave you a vote for this.

Maybe it works in the version that the hair was released? (I didn't try it there) but in 2023 beta for now not

The "High Quality Line Renderer" is a new feature in 2023.1, so there is no other version to try (besides 2023.2 alpha). And I agree, this is the only way to make the hair look really good.

elcarlosfue commented 1 year ago

Friend, I found a provisional solution. At least it works for me for what I need.

It turns out that I used Enemies again in the editor with its timeline and the hair works fine in high definition. So I asked why it works there in the "timeline" when I hit play in the editor.

and I realized that the character has some activators. (Basically when you play the editor, the character is not activated. It is not seen in the scene. But it has an activator that makes it appear after the presentation of the Enemies short.

So I went to my scene that I had created for myself with a demo hair. I turn off the GameObject that has the hair instance. I mean the script. I play the editor and activate the GameObject and magic works. Try that and it should work for you.

qlee01 commented 1 year ago

Friend, I found a provisional solution. At least it works for me for what I need.

It turns out that I used Enemies again in the editor with its timeline and the hair works fine in high definition. So I asked why it works there in the "timeline" when I hit play in the editor.

and I realized that the character has some activators. (Basically when you play the editor, the character is not activated. It is not seen in the scene. But it has an activator that makes it appear after the presentation of the Enemies short.

So I went to my scene that I had created for myself with a demo hair. I turn off the GameObject that has the hair instance. I mean the script. I play the editor and activate the GameObject and magic works. Try that and it should work for you.

So it works in Single Pass Instanced XR for you with this method?

elcarlosfue commented 1 year ago

I don't use it for XR. I use it for cinematics.

But what you can do is activate the GameObject through a script when you compile put your script that activates the GameObject after 1 second and I'm sure it will work

qlee01 commented 1 year ago

I don't use it for XR. I use it for cinematics.

But what you can do is activate the GameObject through a script when you compile put your script that activates the GameObject after 1 second and I'm sure it will work

This issue here is about rendering in XR, as the title says.