googlevr / gvr-unity-sdk

Google VR SDK for Unity
http://developers.google.com/vr/unity/
Other
2.71k stars 1.09k forks source link

How is it updated between versions with zero backward compatibility? #582

Closed Sanoend closed 6 years ago

Sanoend commented 7 years ago

Why do you constantly break everything. Why rename objects just like that, without visible improvements. This is the cry of the soul, we are constantly wasting time on updating and we constantly have to change a bunch of code, now we are trying to move from 4 to 1.5 for 4 days .... it's just a cry of the soul. Stop all the breaking, think about the developers with real projects.

jahKIper commented 7 years ago

sustain

nathanmartz commented 7 years ago

Sorry for the frustration. You are going from 1.40 to 1.50 or 0.40 to 1.50? Which changes are tripping you up the most?

On May 22, 2017 3:48 AM, "Alexander KIper" notifications@github.com wrote:

sustain

— You are receiving this because you are subscribed to this thread. Reply to this email directly, view it on GitHub https://github.com/googlevr/gvr-unity-sdk/issues/582#issuecomment-303065891, or mute the thread https://github.com/notifications/unsubscribe-auth/ANamfvmJ7QSXs43ne8IsGYbZlI1HaasBks5r8Wf1gaJpZM4NiIt4 .

guneyozsan commented 7 years ago

I agree about the inconsistency mentioned. We are stuck with Unity 5.6 and a manually modified 1.30 to have a Cardboard+2D app on iOS+Android. Our Android is stable, but iOS builds need manual intervention before building in Xcode. We only use 2D-VR switch and event system.

Any combination of Unity 5.6, 2017b and Gvr 1.40, 1.50 has app or experience breaking issues here and there on either on iOS or Android even with such a basic setup. And with 1.50 even the previewing in Unity doesn't work with the new preview script (the plug and play built in GVR reticle flies all around the 3D space), and try attaching a HUD to your camera. I don't even mention introducing layers for menus.

I try to report all issues here and also to Unity but every new version is a week's work just to test with a few Unity versions and reporting an issue doesn't mean much without preparing replicate projects or stripping down the commercial projects and post here (or to Unity)

jahKIper commented 7 years ago

We are migrating from 1.1 to 1.2 then to 1.4 then to 1.5

miraleung commented 7 years ago

@guneyozsan Could you please specify some of those problems with 1.40 and 1.50? That would help distinguish which are engine-specific and which are plugin-specific.

As for the GVR reticle, does it still fly around if you parent it under the camera? The GVRDemo has an example of this setup.

Sanoend commented 7 years ago

" Sorry for the frustration. You are going from 1.40 to 1.50 or 0.40 to 1.50? " - 1.1 to 1.2 then to 1.4 then to 1.5

Which changes are tripping you up the most? - For example, why did you delete GvrViewer, we used GvrViewer actively. VRModeEnabled now it's the native type .... only the code is changed everywhere, left as a wrapper for backwards compatibility, etc.

nathanmartz commented 7 years ago

Thanks for the clarification, Sanoend. There is fundamentally a big change between pre and post native integrations. Many ideas that were essential in the pre-native integration world (like GVR Viewer) are at best superfluous with a native integration. In many cases, maintaining the pre-native, post-native, and a compat layer was very time consuming and not something we wanted to do indefinitely.

Going forward we'll be focused entirely on providing a clean, stable API for the native integration, which is much easier now that we are no longer carrying the old baggage around. I know that doesn't make your life any easier right now, but it should help everyone a great deal in the future.

guneyozsan commented 7 years ago

@miraleung

@nathanmartz Thanks for the good news! The difficulty is we spend a lot of time just experimenting new builds. It is very difficult to find additional time to reproduce bugs in small projects and submit them while maintaining stability for apps already in production. Migrating an actual project to a new version is already a few days of work, reproducing them for submitting is quite hard.

AdrianaVecc commented 7 years ago

Migrating from 1.1 to 1.5. The project no longer compiles because scripts use GvrViewer for various use cases:

The blocking error in these 3 cases is:

The name `GvrViewer' does not exist in the current context

It is frustrating that the documentation does not provide clear instructions on how to replace features leveraging GvrViewer. The only place I could find relevant info, is here in the repo's issues (which are not surfaced by Google search). Those are basic events, and it is annoying to spend time to merely maintain a project, and not improve it.

Thanks for listening to us though.

ghost commented 7 years ago

Hi @AdrianaVecc do you know what GvrViewer has been replaced by. I am trying to use GvrViewer.Instance.Triggered and getting the compiler error, but can't seem to find what it was replaced with. Your help would be greatly appreciated.

Bonfi96 commented 7 years ago

I'm pretty sure the cardboard button is considered deprecated and they removed the functionality. Cardboard v2 uses touch as a trigger.

EDIT: Take a look here

Kermeth commented 7 years ago

I've changed GvrViewer, and used Unity VR InputTracking, but yes it is frustrating to upgrade a project with gvr 0.80

ghost commented 7 years ago

Yeah got rid of the GvrViewer class and just went ahead with implementing a touch input and it's working just fine now.

Thanks @Bonfi96