Yellow-Dog-Man / Resonite-Issues

Issue repository for Resonite.
https://resonite.com
134 stars 2 forks source link

3D Videos are broken on the new VideoPlayerInterface #39

Open hazre opened 11 months ago

hazre commented 11 months ago

Describe the bug?

3D videos do not work properly, they only render in one eye. They work fine in LegacyVideoPlayer works fine.

To Reproduce

Try to play a 3D video.

Expected behavior

For 3D videos to be actually 3D.

Screenshots

No response

Resonite Version Number

Any

What Platforms does this occur on?

Windows

What headset if any do you use?

Quest Pro

Log Files

No response

Additional Context

No response

Reporters

@hazre @knackrack615

Rellik66 commented 11 months ago

Additional details: 3D videos are primarily broken when spawning new players, old players seem to work fine.

I briefly tried playing with the offsets on projection360, but I couldn't figure it out.

Edit:

i figured it out, the Y value on RightEyeTextureOffset should be 0 and not 1 for SBS LR and Y value on TextureOffset should also be 0 and not 1 for SBS RL I assume Top/Bottoms are similar except on the X axis instead

Ardescar commented 10 months ago

So this is then a Content Bug / Issue @shiftyscales

Projektion360Material: The position of RightEyeTexture Offset and Scale are swapped in the inspector compared to UnlitMaterial.

It needs to look like this. grafik

And not like this. grafik

Currently you cant watch a 3d Video without changing this manually. grafik

Frooxius commented 9 months ago

Can you provide a sample 3D video that we can replicate this with?

Ardescar commented 9 months ago

The video from my tests -> https://www.youtube.com/watch?v=r3RpfOMwQyM

shadowpanther commented 9 months ago

Basically any side-by-side or top-and-bottom video would probably have this issue. I also had this issue the other night, though I can't share the exact videos I tried.

I'd try to look into texture settings of 3D videos and I'll let you know if I find something that could be easily fixed.

Frooxius commented 9 months ago

Generally I'd recommend including it in the replication steps, otherwise it adds more complexity on our end.

It makes the decision between:

If you can't share the video (or any asset), it helps to find if you can find one that you can that also replicates the issue in the same way.

Frooxius commented 9 months ago

Looking at this, there is still information missing.

The replication steps very vague. How did you import 3D video? Which setting did you pick?

Ardescar commented 9 months ago

Its been allready a while - i redid the test with that video https://www.youtube.com/watch?v=r3RpfOMwQyM

If i import it as a stereo video and as a Side by Side LR then the Right side is not working. grafik

If i import it as Side by Side RL then the Left side is not working. (Stereo screenshot from index with both players) 20231206204915_1_vr

I think in both cases the setup of the projection 360 material is wrong. Because of the changes from the old setup and from Unlit to the new player.

shadowpanther commented 9 months ago

Yeah, sorry about that. Should've provided the video too. Here's a folder link: resrec:///U-Shadow-Panther/R-428E052000FE9195EC8B926FA5D16F70DE5EAB5F1D4E43FEAD3203D340296E1C

Import the raw file as Stereo Video > SBS left-right. There's also the pre-imported video in the same folder.

This is what the original (non-stereofied) video frame looks like - two full frames stacked side by side in one: image

This is my attempt to shoot a 3D photo with the default camera (notice that the aspect ratio is wrong, the camera taking two left-eye pictures is a separate issue): image

This is the video material used in the video player when imported as a stereo video - it uses a Projection360 for some reason: image

And this is the stereo picture (Quad with Unlit) where the texture ref is replaced with the VideoTextureProvider - normal aspect ratio, both left and right eye display properly: image

shadowpanther commented 9 months ago

And fixed it (kinda, the aspect ratio is still wrong): image

The TextureOffsets should be [0,0] and [0.5,0], not [0.5,1]

And here's the aspect ratio fix (we are taking half the raw frame to be our full drawnframe, right?): image

Set Premultiply to [0.5,1]

shiftyscales commented 9 months ago

@AegisTheWolf @RyuviTheViali - would you be able to look into this sometime/confirm if it is a content issue, and not an issue with the interface itself?

shadowpanther commented 9 months ago

Also, when importing the video as "180 Video" and "180 Stereo Video", the projection sphere is rotated backwards, so that the projected half is only visible if you are looking from the player's back side (the one that doesn't have controls and flat video).

Imported the same video file as a Stereo 180 to show the issue - notice that the projection sphere is only visible when the video panel is rotated away from the user: image image

hazre commented 9 months ago

@shiftyscales It's a issue with the component itself. not content. I explicitly reported the issue for the component not the default video player.

Ardescar commented 9 months ago

@hazre the content of resonite is what this means - not the content that you play. As we are able to correct the issue by changing some values in the player itself its higly possible that this is a content issue.

Content Issue - For issues with tutorial/home worlds, default facets, video and audio players.

(edit: i am confused now )

hazre commented 9 months ago

@hazre the content of resonite is what this means - not the content that you play. As we are able to correct the issue by changing some values in the player itself its higly possible that this is a content issue.

Content Issue - For issues with tutorial/home worlds, default facets, video and audio players.

So don't you think default values being problematic here is the issue? If someone is trying to create a video player from scratch in isolation, are they just supposed to just play around the values until a basic functionality like playing 3D videos in a VR application finally works?

shiftyscales commented 9 months ago

Thanks for the clarification that the issue is with the interface itself, @hazre.

Ardescar commented 9 months ago

If i flip those values to how its seen in the screenshot then it works for Side by Side LR grafik So then - its internal inside the interface flipped somewhere ?

( and sorry hazre - i didnt understand what you did mean :-) at least not instantly )