Closed imkrystal closed 3 years ago
It seems that the Protocol Buffer in Google AR Core Unity Package is using a different version of Protocol Buffer, that doesn't contain some of the methods.
Protocol Buffer documentation:
https://developers.google.com/protocol-buffers/docs/proto3#options
The "option optimize_for" may be the culprit. Investigate, and recompile proto file to c#.
Thank you for your answer.
I' m sorry for the late response. Do you know how can I check version of Protocol Buffer?
Both our Protocol Buffer dll and the one from AR Core don't have version in their dlls.
https://www.nuget.org/packages/Google.Protobuf/
Official Protocol Buffer can be retrieved from this nuget package.
Max version that is useable is 3.12.4 with the .Net Standard 1.0 variant, this is the latest one which doesn't have issue.
Any version above has reference to System.Memory which requires extra download.
Also, "option optimize_for" is not the culprit for the issue. The function GeneratedClrTypeInfo
is generated anyway, and it has different parameters in different protocol buffer versions, which leads incompatible.
Document is needed. Also, I may need to update this protocol buffer, in order to let user get the dll version in OS.
Thank you for your answer.
I' m sorry for the late response.
Currently, I'm using 3.12.4 as you said. No error code and build without error.
Thank you so much. Maybe I will close this topic.
Thanks & Best Regards,
Hi mobfish VR STUDIO.
In "https://github.com/mobfishgmbh/Cardboard-VR-Unity-SDK/wiki/Usage" and have this line: _"If you already uses Google's protocol buffer in your project, you can remove Cardboard/Plugins/GoogleProtoBuf.dll, because a conflict may exist when two same dll exists."
When I remove "Cardboard/Plugins/GoogleProtoBuf.dll", script CardboardDevice.cs will be error.
In CardboardDevice.cs script:
Thank you so much.
Best Regards!