簡體   English   中英

將Unity Project移植到UWP for Windows Mixed Reality時出錯

[英]Errors when Porting Unity Project to UWP for Windows Mixed Reality

我正在將統一標題從Oculus和HTC Vive的Windows平台移植到Windows混合現實的通用Windows平台。 我正在使用Unity 2017.2.0p2

似乎有一些庫未包含或UWP不支持。 我的標題將在編輯器中毫無問題地運行,但是當我制作游戲時,我遇到了很多錯誤,主要是說“ x”不包含“ y”的定義。

這是我得到的錯誤(錯誤很多,但是,它們多次重復引用時,這些錯誤大部分都是重復的。)

Assets \\ SwarmAgent \\ Scripts \\ RingBuffer.cs(184,39):錯誤CS0117:“ MethodImplOptions”不包含“已同步”的定義

Assets \\ SwarmAgent \\ Scripts \\ MapReduce.cs(48,24):錯誤CS1061:“線程”不包含“中止”的定義,找不到可以接受類型為“線程”的第一個參數的擴展方法“中止”(您是否缺少using指令或程序集引用?)

Assets \\ SwarmAgent \\ Scripts \\ MapReduce.cs(92,18):錯誤CS1729:“線程”不包含帶有1個參數的構造函數

Assets \\ PostProcessing \\ Runtime \\ Utils \\ RuntimeUtilities.cs(489,27):錯誤CS1929:“類型”不包含“ IsDefined”的定義,並且最佳擴展方法重載了“ CustomAttributeExtensions.IsDefined(MemberInfo,Type,bool)”需要類型為“ MemberInfo”的接收器

Assets \\ PostProcessing \\ Runtime \\ Utils \\ RuntimeUtilities.cs(490,23):錯誤CS1929:“類型”不包含“ GetCustomAttributes”的定義,最佳擴展方法重載“ CustomAttributeExtensions.GetCustomAttributes(MemberInfo,Type,bool)”需要類型為“ MemberInfo”的接收器

Assets \\ PostProcessing \\ Runtime \\ PostProcessManager.cs(71,25):錯誤CS0103:名稱“ AppDomain”在當前上下文中不存在

Assets \\ PostProcessing \\ Runtime \\ PostProcessManager.cs(80,34):錯誤CS1579:foreach語句無法對類型為'?'的變量進行操作 因為“?” 不包含“ GetEnumerator”的公共定義

Assets \\ PostProcessing \\ Runtime \\ PostProcessEffectSettings.cs(26,41):錯誤CS1061:“類型”不包含“ IsSubclassOf”的定義,並且找不到擴展方法“ IsSubclassOf”接受類型為“ Type”的第一個參數(您是否缺少using指令或程序集引用?)

資產\\最終游戲工具\\ AutomaticLOD \\ Scripts \\ AutomaticLOD.cs(1706,23):錯誤CS1061:“類型”不包含“ GetFields”的定義,並且沒有擴展方法“ GetFields”接受類型“ Type”的第一個參數可以找到(您是否缺少using指令或程序集引用?)

資產\\最終游戲工具\\ AutomaticLOD \\ Scripts \\ AutomaticLOD.cs(1708,26):錯誤CS1579:foreach語句無法對類型為'?'的變量進行操作 因為“?” 不包含“ GetEnumerator”的公共定義

資產\\最終游戲工具\\ AutomaticLOD \\ Scripts \\ AutomaticLOD.cs(1718,22):錯誤CS1061:“類型”不包含“ GetProperties”的定義,並且沒有擴展方法“ GetProperties”接受類型“ Type”的第一個參數可以找到(您是否缺少using指令或程序集引用?)

Assets \\ SteamVR \\ Plugins \\ openvr_api.cs(2984,27):錯誤CS0117:“環境”不包含“ OSVersion”的定義

Assets \\ SteamVR \\ Plugins \\ openvr_api.cs(2984,49):錯誤CS0234:類型或名稱空間名稱“ PlatformID”在名稱空間“系統”中不存在(您是否缺少程序集引用?)

Assets \\ SteamVR \\ InteractionSystem \\ Core \\ Scripts \\ Util.cs(497,9):錯誤CS0234:類型或名稱空間名稱“ Process”在名稱空間“ System.Diagnostics”中不存在(您是否缺少程序集引用?)

Assets \\ SteamVR \\ InteractionSystem \\ Core \\ Scripts \\ Util.cs(613,39):錯誤CS0117:“環境”不包含“ GetCommandLineArgs”的定義

Assets \\ VRTK \\ SDK \\ SteamVR \\ SDK_SteamVRDefines.cs(92,42):錯誤CS7036:沒有給出與'TypeExtensions.GetNestedType(Type,string,BindingFlags)'所需的形式參數'bindingAttr'相對應的參數

Assets \\ VRTK \\ SDK \\ Base \\ SDK_DescriptionAttribute.cs(141,25):錯誤CS1061:“類型”不包含“ GetCustomAttributes”的定義,並且沒有擴展方法“ GetCustomAttributes”接受類型為“ Type”的第一個參數找到(您是否缺少using指令或程序集引用?)

Assets \\ VRTK \\ Scripts \\ Utilities \\ VRTK_SharedMethods.cs(471,36):錯誤CS0103:名稱“ AppDomain”在當前上下文中不存在

Assets \\ VRTK \\ Scripts \\ Utilities \\ SDK \\ VRTK_SDKSetup.cs(334,53):錯誤CS1061:“類型”不包含“ BaseType”的定義,並且沒有擴展方法“ BaseType”接受類型為“ Type”的第一個參數可以找到(您是否缺少using指令或程序集引用?)

Assets \\ Particle Playground \\ Scripts \\ PlaygroundC.cs(1798,7):錯誤CS0103:名稱“ playgroundPool”在當前上下文中不存在

這是完整的錯誤日志https://drive.google.com/file/d/1ww6ez4O891nSh6HI0CC-Cv6Ex5M6aTBA/view?usp=sharing

我也將其發布到統一論壇,這里是我的帖子的鏈接。 https://forum.unity.com/threads/errors-when-porting-unity-project-to-uwp-for-windows-mixed-reality.508795/#post-3321995

UWP Apps使用.NET API的子集,因此沒有您慣用的所有功能。 我相信這是為了使功能較弱的設備保持最少的狀態。

摘自以下鏈接:

請注意,用於UWP應用程序的.NET包括完整.NET Framework中為每個名稱空間提供的類型的子集。

您可以在此處查看遷移指南

以及.NETUWP版本的參考

抱歉! 這很痛苦,我目前也正在經歷。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM