Obwohl es sich nur aus der Ferne auf die Programmierung bezieht, geht es hier:
Seit letzter Woche spiele ich mit Unity (5.6.0f3 Community x64) on Win 10 (x64) - Verwenden von Visual Studio (2017 Community) als angehängten Editor, als Unity "erfordert" - und begann mit [Unity]: Tutorials (zuerst). Für ein paar Tage lief alles gut, aber dann funktionierte das Bauen für PC Standalone nicht mehr. Google Das Durchsuchen und Überprüfen der Foren hat nicht dazu beigetragen, Informationen zu diesem genauen Verhalten zu finden:
Wie im Dialogfeld Build Settings (nach rechts verschoben) zu sehen ist, gibt es kein ( Target Platform oder ) + Architektur ) Kombinationsfelder, mit denen Build-Parameter angegeben werden können. Fehler sind auf der linken Seite.
Anmerkungen (zum aktuellen Verhalten):
Um mögliche Zweifel auszuschließen, hier ein DownloadAssistant Screenshot:
Alles ist markiert, es gibt 2 Punkte (die für diesen Fall nicht sehr relevant sind), die nicht angezeigt werden (da das Fenster nicht groß genug ist), aber markiert sind (und installiert).
Hintergrundinfo:
Ein kleines Debugging hat ergeben, dass bei dem Versuch, ( PC Standalone ) zu erstellen, Unity so etwas passiert (beachten Sie nicht die Pfade) , so sind sie auf meinem Rechner), das kann reproduziert werden von cmdline :
build_win.bat :
"E:\Install\x64\Unity\5.6.0f3\Editor\Data\MonoBleedingEdge\bin\mono.exe" "E:\Install\x64\Unity\5.6.0f3\Editor\Data\MonoBleedingEdge\lib\mono\4.5\mcs.exe" "@args-win.txt"
args_win.txt :
-debug
-target:library
-nowarn:0169
-langversion:4
-out:Temp/Assembly-CSharp.dll
-unsafe
-optimize
-r:E:/Install/x64/Unity/5.6.0f3/Editor/Data/UnityExtensions/Unity/GUISystem/Standalone/UnityEngine.UI.dll
-r:E:/Install/x64/Unity/5.6.0f3/Editor/Data/UnityExtensions/Unity/Networking/Standalone/UnityEngine.Networking.dll
-r:E:/Install/x64/Unity/5.6.0f3/Editor/Data/UnityExtensions/Unity/UnityAnalytics/UnityEngine.Analytics.dll
-define:UNITY_5_3_OR_NEWER
-define:UNITY_5_4_OR_NEWER
-define:UNITY_5_5_OR_NEWER
-define:UNITY_5_6_OR_NEWER
-define:UNITY_5_6_0
-define:UNITY_5_6
-define:UNITY_5
-define:UNITY_ANALYTICS
-define:ENABLE_AUDIO
-define:ENABLE_CACHING
-define:ENABLE_CLOTH
-define:ENABLE_DUCK_TYPING
-define:ENABLE_GENERICS
-define:ENABLE_PVR_GI
-define:ENABLE_MICROPHONE
-define:ENABLE_MULTIPLE_DISPLAYS
-define:ENABLE_PHYSICS
-define:ENABLE_RUNTIME_NAVMESH_BUILDING
-define:ENABLE_SPRITERENDERER_FLIPPING
-define:ENABLE_SPRITES
-define:ENABLE_TERRAIN
-define:ENABLE_RAKNET
-define:ENABLE_UNET
-define:ENABLE_LZMA
-define:ENABLE_UNITYEVENTS
-define:ENABLE_WEBCAM
-define:ENABLE_WWW
-define:ENABLE_CLOUD_SERVICES_COLLAB
-define:ENABLE_CLOUD_SERVICES_ADS
-define:ENABLE_CLOUD_HUB
-define:ENABLE_CLOUD_PROJECT_ID
-define:ENABLE_CLOUD_SERVICES_UNET
-define:ENABLE_CLOUD_SERVICES_BUILD
-define:ENABLE_CLOUD_LICENSE
-define:ENABLE_EDITOR_METRICS
-define:ENABLE_EDITOR_METRICS_CACHING
-define:ENABLE_NATIVE_ARRAY
-define:INCLUDE_DYNAMIC_GI
-define:INCLUDE_GI
-define:PLATFORM_SUPPORTS_MONO
-define:RENDER_SOFTWARE_CURSOR
-define:INCLUDE_PUBNUB
-define:ENABLE_PLAYMODE_TESTS_RUNNER
-define:ENABLE_SCRIPTING_NEW_CSHARP_COMPILER
-define:ENABLE_VIDEO
-define:UNITY_STANDALONE_WIN
-define:UNITY_STANDALONE
-define:ENABLE_SUBSTANCE
-define:ENABLE_RUNTIME_GI
-define:ENABLE_MOVIES
-define:ENABLE_NETWORK
-define:ENABLE_CRUNCH_TEXTURE_COMPRESSION
-define:ENABLE_UNITYWEBREQUEST
-define:ENABLE_CLOUD_SERVICES
-define:ENABLE_CLOUD_SERVICES_ANALYTICS
-define:ENABLE_CLOUD_SERVICES_PURCHASING
-define:ENABLE_CLOUD_SERVICES_CRASH_REPORTING
-define:ENABLE_EVENT_QUEUE
-define:ENABLE_CLUSTERINPUT
-define:ENABLE_VR
-define:ENABLE_WEBSOCKET_Host
-define:ENABLE_MONO
-define:NET_2_0_SUBSET
Assets/_Scripts/x.cs
-r:E:\Install\x64\Unity\5.6.0f3\Editor\Data\Mono\lib\mono\unity\System.Runtime.Serialization.dll
-r:E:\Install\x64\Unity\5.6.0f3\Editor\Data\Mono\lib\mono\unity\System.Xml.Linq.dll
-r:E:\Install\x64\Unity\5.6.0f3\Editor\Data\Mono\lib\mono\unity\UnityScript.dll
-r:E:\Install\x64\Unity\5.6.0f3\Editor\Data\Mono\lib\mono\unity\UnityScript.Lang.dll
-r:E:\Install\x64\Unity\5.6.0f3\Editor\Data\Mono\lib\mono\unity\Boo.Lang.dll
-sdk:unity
args_win.txt ist eine Kopie von $ {PROJECT_ROOT}\Temp\UnityTempFile - * s (Ich gehe Um auf eine solche Datei wie utfile ) zu verweisen, genauer auf die Datei, die beim Starten des Builds erstellt wird. Das Tolle ist, dass es aus einem anderen erstellt wurde (eines der 10+ identischen, die zum Zeitpunkt des Ladens des Projekts erstellt wurden) utfile by (hat keine Durchgangsprüfung durchgeführt, möglicherweise gibt es zusätzliche Zeilen auch) einige Zeilen streifen (und mischen ( amestecating )).
Das offensichtliche Problem (Sie müssen nicht einmal die Quelle überprüfen utfile ) ist: -r:E:/Install/x64/Unity/5.6.0f3/Editor/Data/Managed/UnityEngine.dll
, der in die obige Datei eingefügt wurde, funktioniert einwandfrei. Aber ich weiß nicht, wie ich Unity anweisen soll, es nicht zu entfernen.
Other facts (mehr oder weniger relevant):
Mögliche Lösungen:
Irgendwelche Ideen sind willkommen.
Randnotiz 1 (nicht mit Frage verbunden): Während der Deinstallation/Installation von Unity ist mir smth aufgefallen; wenn es Community Edition spezifisch ist, kann ich es (irgendwie) verstehen, aber wenn nicht, dann ist es ein ziemlich lame Fehler/Verhalten:
Anscheinend gab es keine einfache Lösung (oder zumindest konnte ich keine finden), also habe ich den "extrem herausfordernden" Prozess des Deinstallierens/Neuinstallierens Unity und VStudio (mit Neustart nach der Deinstallation - um sicherzustellen, dass keine "versteckten" Vorgänge hängen bleiben).
Zuerst habe ich mir angesehen, was der Assistent unter der Haube tut, indem ich einen benutzerdefinierten Downloadpfad wie im folgenden Bild angegeben habe:
Hinweis : Die Installationspfade unterscheiden sich ein wenig von denen in der Frage weil ich sie geändert habe (da ich die Produkte neu installieren musste, warum sollte ich sie nicht verwenden?), aber diese Änderungen sind nicht relevant.
Im angegebenen Ordner befanden sich einige ~ 3 GB +) heruntergeladene Dateien (ausführbare Dateien) und ein Batch-Skript Das Befehlszeilenäquivalent des Assistenten .
install.bat :
REM Run this script to automatically install or reinstall all packages,
REM as it's performed by the Unity Download Assistant.
REM Needs to be run with superuser permissions.
"UnitySetup64.exe" -UI=reduced /D=e:\Install\x64\Unity\Community\5.6.0f3
"UnityDocumentationSetup.exe" /S /D=e:\Install\x64\Unity\Community\5.6.0f3
"UnityStandardAssetsSetup.exe" /S /D=e:\Install\x64\Unity\Community\5.6.0f3
"UnityExampleProjectSetup.exe" /S
"vs_Community.exe" --productId "Microsoft.VisualStudio.Product.Community" --add "Microsoft.VisualStudio.Workload.ManagedGame" --campaign "Unity3d_Unity" --passive
msiexec.exe /i "FacebookGamesArcade.msi" /qr LAUNCHEXE=FALSE
"UnitySetup-Android-Support-for-Editor-5.6.0f3.exe" /S /D=e:\Install\x64\Unity\Community\5.6.0f3
"UnitySetup-iOS-Support-for-Editor-5.6.0f3.exe" /S /D=e:\Install\x64\Unity\Community\5.6.0f3
"UnitySetup-AppleTV-Support-for-Editor-5.6.0f3.exe" /S /D=e:\Install\x64\Unity\Community\5.6.0f3
"UnitySetup-Linux-Support-for-Editor-5.6.0f3.exe" /S /D=e:\Install\x64\Unity\Community\5.6.0f3
"UnitySetup-Mac-Support-for-Editor-5.6.0f3.exe" /S /D=e:\Install\x64\Unity\Community\5.6.0f3
"UnitySetup-Metro-Support-for-Editor-5.6.0f3.exe" /S /D=e:\Install\x64\Unity\Community\5.6.0f3
"UnitySetup-UWP-IL2CPP-Support-for-Editor-5.6.0f3.exe" /S /D=e:\Install\x64\Unity\Community\5.6.0f3
"UnitySetup-Samsung-TV-Support-for-Editor-5.6.0f3.exe" /S /D=e:\Install\x64\Unity\Community\5.6.0f3
"UnitySetup-Tizen-Support-for-Editor-5.6.0f3.exe" /S /D=e:\Install\x64\Unity\Community\5.6.0f3
"UnitySetup-WebGL-Support-for-Editor-5.6.0f3.exe" /S /D=e:\Install\x64\Unity\Community\5.6.0f3
"UnitySetup-Facebook-Games-Support-for-Editor-5.6.0f3.exe" /S /D=e:\Install\x64\Unity\Community\5.6.0f3
Das, was mir aufgefallen ist, war das VStudio verwandte:
"vs_Community.exe" --productId "Microsoft.VisualStudio.Product.Community" --add "Microsoft.VisualStudio.Workload.ManagedGame" --campaign "Unity3d_Unity" --passive
Da (einige) der Launcher-Argumente mir nicht viel sagten, habe ich sie nachgeschlagen: [MS.Docs]: Verwenden Sie Befehlszeilenparameter, um Visual Studio 2017 zu installieren . Also habe ich es über die Kommandozeile gestartet (ohne --passive
, um zu sehen, welche Funktionen ausgewählt wurden), und ich dachte, ich habe es: Die Spieleentwicklung mit Unity wurde wie im Bild unten ausgewählt (vorher Als ich VStudio "normal" installiert habe, habe ich dieses Kontrollkästchen nicht aktiviert :
Aber das Verhalten war das gleiche !!!
Anmerkungen :
Der nächste Schritt, den ich tat, war, das ursprüngliche Szenario neu zu erstellen (wo es früher funktionierte):
und es hat funktioniert !!!
Dann wusste ich, dass eine der Unity Komponenten mit meinen Einstellungen herumwirbelt, also zusätzlich zur Basisinstallation (der Inhalt der install.bat bis vs_Community.exe ) Ich habe nacheinander mit der Installation aller anderen Optionen begonnen und nach jeder Komponenteninstallation überprüft, ob ich in der Lage bin, eine PC Standalone bauen und ...
Es stellt sich heraus, dass Facebook Gameroom Build Support (wie im Assistenten gezeigt) das war Wurzel aller meiner Probleme . Also, eine weitere Neuinstallation von (sowohl VStudio als auch) Unity ( ohne Die Facebook Build-Unterstützung) wirkt wie ein Zauber.
Jetzt ist die Untersuchung erst zur Hälfte abgeschlossen, ich muss noch herausfinden , warum dies passiert, aber ich werde hier aufhören. Wenn ich in Zukunft für Facebook bauen muss, muss ich es herausfinden und zum Laufen bringen, aber im Moment werde ich es nicht tun.
Beachten Sie, dass für meinen (noobischen) Zweck Standalone ( [~ # ~] pc [~ # ~] Da ich momentan auf Win bin, reichen Builds (und vielleicht WebGL auch zum Testen vom Browser), aber ich installiert alle anderen für den Fall, dass ich mit ihnen herumspielen möchte.
Das Problem scheint beim Hinzufügen von Facebook Gameroom Build-Unterstützung aufgetreten zu sein und ist seit 2017.3.1f
noch nicht behoben.
Problemumgehung:
Unity
(C:\Program Files\Unity
unter Windows x64).Unity/Editor/Data/PlaybackEngines/Facebook
in den Unity
-Ordner. Jetzt haben Sie Editor
und Facebook
nebeneinander