Как исправить ошибку компиляции unity

Compiler errors can be a roadblock to your game development process. It can seem like a daunting task to fix them, especially in Unity – a game development engine popular with both beginners and seasoned game developers. Fortunately, there are some simple steps that can help you identify and fix compiler errors in Unity. Let’s take a look.

Troubleshooting Compiler Errors

If you’ve just received a compiler error in Unity, the first step should be to troubleshoot the issue. Here are some tips you can follow to identify and fix the compiler errors:

  1. Check your script for any typos and errors in punctuation, syntax or spelling.
  2. Ensure your script is formatted correctly and includes all necessary closing braces, parenthesis, etc.
  3. Double-check that you’re using the correct namespace, class, method and property names.
  4. Verify that you’re using the correct version of the .NET framework.
  5. Check if there are any incompatibilities between different packages or libraries you’re trying to use.
  6. Try disabling any third-party scripts or assets you’re using.
  7. Try uninstalling and reinstalling the IDE or game engine.
  8. Check if you’re allowed to use the assets you’re trying to import.

FAQ

How Do I Fix Compiler Errors in Unity?

There are multiple steps you can take to identify and fix compiler errors in Unity. These include checking your script for typos and errors, ensuring your script is formatted correctly, verifying the correct version of the .NET framework is being used,checking if there are any incompatibilities between different packages or libraries you’re using, disabling any third-party scripts or assets, uninstalling and reinstalling the IDE or game engine and checking if you’re allowed to use the assets you’re trying to import.

What Are Compilation Errors?

Compilation errors are errors that occur when code is trying to be compiled. They’re also referred to as compiler errors. It’s important to investigate the cause of compiler errors before attempting to fix them, as the cause may be due to typos, punctuation or formatting errors, incompatibilities between packages, or other issues.

What Is the .NET Framework?

The .NET framework is a platform developed by Microsoft to allow developers to create applications using multiple languages, libraries and tools. It provides a runtime environment that enables developers to write code and build applications without having to worry about the underlying infrastructure. It also offers both type-safety and memory-management features that simplify code writing and allow developers to focus on the logic of their applications.

What Is a Namespace in C#?

A namespace is a way to logically group related classes and functionalities in C#. It is a container that provides a way to avoid class conflicts and organize code. Namespaces are usually composed of a hierarchical structure and can contain other namespaces, classes, and other data types.

What is Syntax?

Syntax is the set of rules that specify how a programming language is written and structured. It defines how words, symbols and commands are combined to create a program. Examples of syntax rules include the use of case sensitivity, parentheses, braces, and semicolons, among others.

Conclusion

Compiler errors in Unity can be a roadblock to your game development process, but with some troubleshooting steps, you can identify and fix them quickly. By double-checking your script for typos, ensuring the correct version of the .NET framework is used, and disabling any third-party scripts or assets, you can efficiently identify and resolve the compiler errors in Unity.

https://support.unity.com/hc/en-us/articles/205637689-Why-do-I-get-a-All-compiler-errors-have-to-be-fixed-before-you-can-enter-playmode-error-

CommandInvokationFailure: Gradle build failed. C:Program
FilesJavajdk1.8.0_301binjava.exe -classpath
“D:2020.3.19f1EditorDataPlaybackEnginesAndroidPlayerToolsgradlelibgradle-launcher-6.1.1.jar”
org.gradle.launcher.GradleMain “-Dorg.gradle.jvmargs=-Xmx4096m”
“assembleRelease”

stderr[ Picked up JAVA_TOOL_OPTIONS: -Dfile.encoding=UTF-8

FAILURE: Build failed with an exception.

  • Where: Build file ‘D:ProjkecıtTempgradleOutlauncherbuild.gradle’ line: 3

  • What went wrong: A problem occurred evaluating project ‘:launcher’.

Failed to apply plugin [id ‘com.android.internal.application’]
Your project path contains non-ASCII characters. This will most likely cause the build to fail on Windows. Please move your project to
a different directory. See http://b.android.com/95744 for details.
This warning can be disabled by adding the line
‘android.overridePathCheck=true’ to gradle.properties file in the
project directory.

  • Try: Run with –stacktrace option to get the stack trace. Run with –info or –debug option to get more log output. Run with –scan to get full insights.

  • Get more help at https://help.gradle.org

BUILD FAILED in 4s ] stdout[ Starting a Gradle Daemon, 1 incompatible
Daemon could not be reused, use –status for details ] exit code: 1
UnityEditor.Android.Command.WaitForProgramToRun
(UnityEditor.Utils.Program p,
UnityEditor.Android.Command+WaitingForProcessToExit
waitingForProcessToExit, System.String errorMsg) (at
:0) UnityEditor.Android.Command.Run
(System.Diagnostics.ProcessStartInfo psi,
UnityEditor.Android.Command+WaitingForProcessToExit
waitingForProcessToExit, System.String errorMsg) (at
:0) UnityEditor.Android.Command.Run
(System.String command, System.String args, System.String workingdir,
UnityEditor.Android.Command+WaitingForProcessToExit
waitingForProcessToExit, System.String errorMsg) (at
:0)
UnityEditor.Android.AndroidJavaTools.RunJava (System.String args,
System.String workingdir, System.Action1[T] progress, System.String error) (at <c8b3b39837d14a59b516963b78bf9032>:0) UnityEditor.Android.GradleWrapper.Run (UnityEditor.Android.AndroidJavaTools javaTools, System.String workingdir, System.String task, System.Action1[T] progress) (at
:0) Rethrow as
GradleInvokationException: Gradle build failed
UnityEditor.Android.GradleWrapper.Run
(UnityEditor.Android.AndroidJavaTools javaTools, System.String
workingdir, System.String task, System.Action`1[T] progress) (at
:0)
UnityEditor.Android.PostProcessor.Tasks.BuildGradleProject.Execute
(UnityEditor.Android.PostProcessor.PostProcessorContext context) (at
:0)
UnityEditor.Android.PostProcessor.PostProcessRunner.RunAllTasks
(UnityEditor.Android.PostProcessor.PostProcessorContext context) (at
:0) Rethrow as BuildFailedException:
Exception of type ‘UnityEditor.Build.BuildFailedException’ was thrown.
UnityEditor.Android.PostProcessor.CancelPostProcess.AbortBuild
(System.String title, System.String message, System.Exception ex) (at
:0)
UnityEditor.Android.PostProcessor.PostProcessRunner.RunAllTasks
(UnityEditor.Android.PostProcessor.PostProcessorContext context) (at
:0)
UnityEditor.Android.PostProcessAndroidPlayer.PostProcess
(UnityEditor.BuildTarget target, System.String stagingAreaData,
System.String stagingArea, System.String playerPackage, System.String
installPath, System.String companyName, System.String productName,
UnityEditor.BuildOptions options, UnityEditor.RuntimeClassRegistry
usedClassRegistry, UnityEditor.Build.Reporting.BuildReport report) (at
:0)
UnityEditor.Android.AndroidBuildPostprocessor.PostProcess
(UnityEditor.Modules.BuildPostProcessArgs args,
UnityEditor.BuildProperties& outProperties) (at
:0)
UnityEditor.PostprocessBuildPlayer.Postprocess
(UnityEditor.BuildTargetGroup targetGroup, UnityEditor.BuildTarget
target, System.String installPath, System.String companyName,
System.String productName, System.Int32 width, System.Int32 height,
UnityEditor.BuildOptions options, UnityEditor.RuntimeClassRegistry
usedClassRegistry, UnityEditor.Build.Reporting.BuildReport report) (at
<97ba64834c8f4edc84e3d8e30b04f122>:0)
UnityEngine.GUIUtility:ProcessEvent(Int32, IntPtr, Boolean&)

UnityEditor.BuildPlayerWindow+BuildMethodException: 4 errors at
UnityEditor.BuildPlayerWindow+DefaultBuildMethods.BuildPlayer
(UnityEditor.BuildPlayerOptions options) [0x002ca] in
<97ba64834c8f4edc84e3d8e30b04f122>:0 at
UnityEditor.BuildPlayerWindow.CallBuildMethods (System.Boolean
askForBuildLocation, UnityEditor.BuildOptions defaultBuildOptions)
[0x00080] in <97ba64834c8f4edc84e3d8e30b04f122>:0
UnityEngine.GUIUtility:ProcessEvent (int,intptr,bool&)

Starting a Gradle Daemon, 1 incompatible Daemon could not be reused,
use –status for details

UnityEngine.GUIUtility:ProcessEvent (int,intptr,bool&)

Picked up JAVA_TOOL_OPTIONS: -Dfile.encoding=UTF-8

FAILURE: Build failed with an exception.

  • Where: Build file ‘D:ProjkecıtTempgradleOutlauncherbuild.gradle’ line: 3

  • What went wrong: A problem occurred evaluating project ‘:launcher’.

Failed to apply plugin [id ‘com.android.internal.application’]
Your project path contains non-ASCII characters. This will most likely cause the build to fail on Windows. Please move your project to
a different directory. See http://b.android.com/95744 for details.
This warning can be disabled by adding the line
‘android.overridePathCheck=true’ to gradle.properties file in the
project directory.

  • Try: Run with –stacktrace option to get the stack trace. Run with –info or –debug option to get more log output. Run with –scan to get full insights.

  • Get more help at https://help.gradle.org

BUILD FAILED in 4s

UnityEngine.GUIUtility:ProcessEvent (int,intptr,bool&)

Starting a Gradle Daemon, 1 incompatible Daemon could not be reused,
use –status for details

UnityEngine.GUIUtility:ProcessEvent (int,intptr,bool&)

Ошибки компилятора

Ошибки компилятора

Друзья, подскажите что сделать с ошибками? Хочу понять принцип, чтобы в дальнейшем самостоятельно разбираться.

Вылезло 7 ошибок (связано либо с First Person Controller, либо с Day and Night Controller – больше ничего не трогал в это время, скорее даже ближе к FPS контроллеру – его перекосило и сбились настройи input (стал как-то бочком ходить), ошибки такие:

Assets/Standard Assets/Effects/ImageEffects/EdgeDetectEffect.cs(7,33): error CS0246: The type or namespace name `ImageEffectBase’ could not be found. Are you missing a using directive or an assembly reference?
Assets/Standard Assets/Effects/ImageEffects/Scripts/ColorCorrectionRamp.cs(6,38): error CS0246: The type or namespace name `ImageEffectBase’ could not be found. Are you missing a using directive or an assembly reference?
Assets/Standard Assets/Effects/ImageEffects/Scripts/Grayscale.cs(5,32): error CS0246: The type or namespace name `ImageEffectBase’ could not be found. Are you missing a using directive or an assembly reference?
Assets/Standard Assets/Effects/ImageEffects/Scripts/MotionBlur.cs(12,27): error CS0246: The type or namespace name `ImageEffectBase’ could not be found. Are you missing a using directive or an assembly reference?
Assets/Standard Assets/Effects/ImageEffects/Scripts/SepiaTone.cs(5,32): error CS0246: The type or namespace name `ImageEffectBase’ could not be found. Are you missing a using directive or an assembly reference?
Assets/Standard Assets/Effects/ImageEffects/Scripts/Twirl.cs(5,28): error CS0246: The type or namespace name `ImageEffectBase’ could not be found. Are you missing a using directive or an assembly reference?
Assets/Standard Assets/Effects/ImageEffects/Scripts/Vortex.cs(5,29): error CS0246: The type or namespace name `ImageEffectBase’ could not be found. Are you missing a using directive or an assembly reference?

они же на скрине:

http://prnt.sc/d10jbj

Откуда они взялись если в скрипты не лазил (локацией занимаюсь, модельки расставляю по террейну)?..

Спасибо за помощь.

Peccator.es
UNец
 
Сообщения: 25
Зарегистрирован: 22 окт 2016, 21:50

Re: Ошибки компилятора

Сообщение samana 31 окт 2016, 07:34

Эти ошибки говорят о том, что в каком-то скрипте используется класс или пространство имён ImageEffectBase, но либо таких классов в вашем проекте нет, либо не прописан их “импорт” через using.

Аватара пользователя
samana
Адепт
 
Сообщения: 4738
Зарегистрирован: 21 фев 2015, 13:00
Откуда: Днепропетровск

Re: Ошибки компилятора

Сообщение Peccator.es 31 окт 2016, 11:09

То есть нужно прописать в соответствующих файлах… что?

Нашел пример тут:
using UnityStandardAssets.Characters.FirstPerson;

но ощущение, что в нашем случае по-другому

Peccator.es
UNец
 
Сообщения: 25
Зарегистрирован: 22 окт 2016, 21:50

Re: Ошибки компилятора

Сообщение ewoera 31 окт 2016, 16:27

ImageEffectBase относится к эффектам камеры, который можно импортнуть через меню редактора
скорей всего ты баловался с эффектами для камеры, потом решил что оставить а что то удалить, и потер лишние
пере импортни эффекты для камеры, либо чисти все от этих эффектов

__immeasurability

skype elseway
youtube.com/user/immeasurability/videos

ewoera
UNец
 
Сообщения: 32
Зарегистрирован: 27 окт 2016, 13:55

Re: Ошибки компилятора

Сообщение Peccator.es 31 окт 2016, 19:10

Скрипт по адресу из первой ошибки выглядит так:

Используется csharp

using UnityEngine;

[ExecuteInEditMode]
[AddComponentMenu(“Image Effects/Edge Detection (Color)”)]
public class EdgeDetectEffect : ImageEffectBase
{
        public float threshold = 0.2F;

       
        // Called by camera to apply image effect
        void OnRenderImage (RenderTexture source, RenderTexture destination)
        {
                material.SetFloat (“_Treshold”, threshold * threshold);
                Graphics.Blit (source, destination, material);
        }
}

Строка ошибки: №7. Разве это не тот самый потерянный публичный класс там прописан?

В остальных скриптах присутствуют аналогичные записи, соответственно:

public class ColorCorrectionEffect : ImageEffectBase
public class GrayscaleEffect : ImageEffectBase
public class MotionBlur : ImageEffectBase
public class SepiaToneEffect : ImageEffectBase
public class TwirlEffect : ImageEffectBase
public class VortexEffect : ImageEffectBase

Peccator.es
UNец
 
Сообщения: 25
Зарегистрирован: 22 окт 2016, 21:50

Re: Ошибки компилятора

Сообщение samana 31 окт 2016, 19:35

Проблема в том, что в вашем проекте видимо нет скрипта ImageEffectBase.

Аватара пользователя
samana
Адепт
 
Сообщения: 4738
Зарегистрирован: 21 фев 2015, 13:00
Откуда: Днепропетровск

Re: Ошибки компилятора

Сообщение ewoera 31 окт 2016, 19:41

ewoera писал(а):пере импортни эффекты для камеры, либо чисти все от этих эффектов

__immeasurability

skype elseway
youtube.com/user/immeasurability/videos

ewoera
UNец
 
Сообщения: 32
Зарегистрирован: 27 окт 2016, 13:55

Re: Ошибки компилятора

Сообщение Peccator.es 31 окт 2016, 19:49

samana писал(а):Проблема в том, что в вашем проекте видимо нет скрипта ImageEffectBase.

Как так? Все было ок и потом пропал? При том что я не трогал скрипты до того момента вообще.

Путем курения гугла добавил namespace, получилось так:

Используется csharp

namespace names {
public class EdgeDetectEffect : ImageEffectBase
{
        public float threshold = 0.2F;

       
        // Called by camera to apply image effect
        void OnRenderImage (RenderTexture source, RenderTexture destination)
        {
                material.SetFloat (“_Treshold”, threshold * threshold);
                Graphics.Blit (source, destination, material);
        }
}
}

Все ошибки с эффектами пропали, но появилась новая:

Assets/Standard Assets/Effects/ImageEffects/EdgeDetectEffect.cs(7,11): error CS1671: A namespace declaration cannot have modifiers or attributes

ewoera писал(а):

ewoera писал(а):пере импортни эффекты для камеры, либо чисти все от этих эффектов

Вот это больше похоже на правду, так как ошибки полезли именно после экспериментов с камерой FPS Controller… Я даже пытался из другого проекта из Стандартных Ассетов выдрать FPS Controller, не помогло… Надо видимо реально переимпортировать (вопрос – как и что именно?). Я всего неделю как серьезно увлекся Unity, так что не судите строго )

Peccator.es
UNец
 
Сообщения: 25
Зарегистрирован: 22 окт 2016, 21:50

Re: Ошибки компилятора

Сообщение ewoera 31 окт 2016, 20:05

Assets->Import Package->Effects

__immeasurability

skype elseway
youtube.com/user/immeasurability/videos

ewoera
UNец
 
Сообщения: 32
Зарегистрирован: 27 окт 2016, 13:55

Re: Ошибки компилятора

Сообщение Peccator.es 31 окт 2016, 20:11

ewoera писал(а):Assets->Import Package->Effects

Сделал. Причем импорт не переписал файлы (не все, во всяком случае, файл с добавленным namespace так и остался с добавленным, и ошибка соответственно тоже). Убрал namespace из файла – вылезла опять ошибка:

Assets/Standard Assets/Effects/ImageEffects/EdgeDetectEffect.cs(9,33): error CS0246: The type or namespace name `ImageEffectBase’ could not be found. Are you missing a using directive or an assembly reference?

Радует, что сейчас она одна, 6 других пропали. Может надо через using добавить? Но как именно?

Peccator.es
UNец
 
Сообщения: 25
Зарегистрирован: 22 окт 2016, 21:50

Re: Ошибки компилятора

Сообщение samana 31 окт 2016, 20:26

Peccator.es писал(а):Может надо через using добавить? Но как именно?

Подсмотреть в других скриптах, где прописан using для ImageEffectBase. Но почему вы не пользуетесь рефакторингом? Конечно я не знаю в какой программе вы пишите код, но если это MonoDevelop или VisualStudio, то ПКМ по слову, которое подчёркнуто или выделено как-то (там где указывается ошибка в классе) и выберите “рефакторинг” или подсказки будут какие-то.

Аватара пользователя
samana
Адепт
 
Сообщения: 4738
Зарегистрирован: 21 фев 2015, 13:00
Откуда: Днепропетровск

Re: Ошибки компилятора

Сообщение Peccator.es 31 окт 2016, 20:35

samana писал(а):

Peccator.es писал(а):Может надо через using добавить? Но как именно?

Подсмотреть в других скриптах, где прописан using для ImageEffectBase. Но почему вы не пользуетесь рефакторингом? Конечно я не знаю в какой программе вы пишите код, но если это MonoDevelop или VisualStudio, то ПКМ по слову, которое подчёркнуто или выделено как-то (там где указывается ошибка в классе) и выберите “рефакторинг” или подсказки будут какие-то.

Я до кода еще не добрался даже ) расставлял модельки + экспериментировал с камерой на фпс контроллере. Пытался подсмотреть как в других проектах эти скрипты оформлены (где не было проблем с игровым режимом), но они там аналогичны слово в слово…

Peccator.es
UNец
 
Сообщения: 25
Зарегистрирован: 22 окт 2016, 21:50

Re: Ошибки компилятора

Сообщение Peccator.es 31 окт 2016, 21:27

Какая-то жесть жесткая, удалил папку Effects, импортнул через Ассеты, вылезло сразу 18 ошибок о несовпадении классов…

Вернул на место папку со старыми эффектами, ошибки пропали и осталась только предыдущая одна. Получается что эффекты сильно отличаются от стандартных, как так если я их не трогал (вот реально совсем ничего не менял в скриптах)

Peccator.es
UNец
 
Сообщения: 25
Зарегистрирован: 22 окт 2016, 21:50

Re: Ошибки компилятора

Сообщение Peccator.es 01 ноя 2016, 13:48

Осталось исправить одну ошибку:

Assets/Standard Assets/Effects/ImageEffects/EdgeDetectEffect.cs(8,33): error CS0246: The type or namespace name `ImageEffectBase’ could not be found. Are you missing a using directive or an assembly reference?

В чем здесь проблема может быть?

Peccator.es
UNец
 
Сообщения: 25
Зарегистрирован: 22 окт 2016, 21:50

Re: Ошибки компилятора

Сообщение ewoera 02 ноя 2016, 16:34

сделай копию проекта
удали ВСЕ эффекты вообще
проверь чтоб не было ошибок
проверь какие эффекты тебе нужны действительно
импортирую весь пакет Assets->Import Package->Effects
поставь на нужную камеру нужные эффекты и радуйся

второй вариант если все еще будут ошибки по эффектам
создай новый проект
импортни Assets->Import Package->Effects
если в пустом проекте будут ошибки с нетронутым пакетом эффектов, значит проблема с в исходнике
закачай еще раз нужную версию юнити

ну не кто не может тебе помочь если ты говаришь что не чего не трогал и при этом у тебя все равно ошибки в стандартном пакете эффектов
либо скидывай проект с этими твоими ошибками, либо ковыряйся сам, не должно быть проблем на ровном месте

если что у меня не 14 сообщений на этом форуме, мой основной акк забанили на две недели

__immeasurability

skype elseway
youtube.com/user/immeasurability/videos

ewoera
UNец
 
Сообщения: 32
Зарегистрирован: 27 окт 2016, 13:55


Вернуться в Почемучка

Кто сейчас на конференции

Сейчас этот форум просматривают: GoGo.Ru [Bot], Google [Bot] и гости: 30



Всего 4 ошибки
1)

FAILURE: Build failed with an exception.

* Where:
Build file ‘C:UserssobolOneDriveРабочий столunityclicker.v4TempgradleOutlauncherbuild.gradle’ line: 3

* What went wrong:
A problem occurred evaluating project ‘:launcher’.
> Failed to apply plugin [id ‘com.android.internal.application’]
> Your project path contains non-ASCII characters. This will most likely cause the build to fail on Windows. Please move your project to a different directory. See b.android.com/95744 for details. This warning can be disabled by adding the line ‘android.overridePathCheck=true’ to gradle.properties file in the project directory.

* Try:
Run with –stacktrace option to get the stack trace. Run with –info or –debug option to get more log output. Run with –scan to get full insights.

* Get more help at https://help.gradle.org

BUILD FAILED in 1s
Picked up JAVA_TOOL_OPTIONS: -Dfile.encoding=UTF-8

UnityEngine.GUIUtility:ProcessEvent (int,intptr,bool&)

2)

CommandInvokationFailure: Gradle build failed.
C:Program FilesUnityHubEditor2020.3.14f1EditorDataPlaybackEnginesAndroidPlayerOpenJDKbinjava.exe -classpath “C:Program FilesUnityHubEditor2020.3.14f1EditorDataPlaybackEnginesAndroidPlayerToolsgradlelibgradle-launcher-5.6.4.jar” org.gradle.launcher.GradleMain “-Dorg.gradle.jvmargs=-Xmx4096m” “assembleRelease”

stderr[

FAILURE: Build failed with an exception.

* Where:
Build file ‘C:UserssobolOneDriveРабочий столunityclicker.v4TempgradleOutlauncherbuild.gradle’ line: 3

* What went wrong:
A problem occurred evaluating project ‘:launcher’.
> Failed to apply plugin [id ‘com.android.internal.application’]
> Your project path contains non-ASCII characters. This will most likely cause the build to fail on Windows. Please move your project to a different directory. See b.android.com/95744 for details. This warning can be disabled by adding the line ‘android.overridePathCheck=true’ to gradle.properties file in the project directory.

* Try:
Run with –stacktrace option to get the stack trace. Run with –info or –debug option to get more log output. Run with –scan to get full insights.

* Get more help at https://help.gradle.org

BUILD FAILED in 1s
Picked up JAVA_TOOL_OPTIONS: -Dfile.encoding=UTF-8
]
stdout[

]
exit code: 1
UnityEditor.Android.Command.WaitForProgramToRun (UnityEditor.Utils.Program p, UnityEditor.Android.Command+WaitingForProcessToExit waitingForProcessToExit, System.String errorMsg) (at <1f5aacfb83804e518b48285b5fe58926>:0)
UnityEditor.Android.Command.Run (System.Diagnostics.ProcessStartInfo psi, UnityEditor.Android.Command+WaitingForProcessToExit waitingForProcessToExit, System.String errorMsg) (at <1f5aacfb83804e518b48285b5fe58926>:0)
UnityEditor.Android.Command.Run (System.String command, System.String args, System.String workingdir, UnityEditor.Android.Command+WaitingForProcessToExit waitingForProcessToExit, System.String errorMsg) (at <1f5aacfb83804e518b48285b5fe58926>:0)
UnityEditor.Android.AndroidJavaTools.RunJava (System.String args, System.String workingdir, System.Action`1[T] progress, System.String error) (at <1f5aacfb83804e518b48285b5fe58926>:0)
UnityEditor.Android.GradleWrapper.Run (UnityEditor.Android.AndroidJavaTools javaTools, System.String workingdir, System.String task, System.Action`1[T] progress) (at <1f5aacfb83804e518b48285b5fe58926>:0)
Rethrow as GradleInvokationException: Gradle build failed
UnityEditor.Android.GradleWrapper.Run (UnityEditor.Android.AndroidJavaTools javaTools, System.String workingdir, System.String task, System.Action`1[T] progress) (at <1f5aacfb83804e518b48285b5fe58926>:0)
UnityEditor.Android.PostProcessor.Tasks.BuildGradleProject.Execute (UnityEditor.Android.PostProcessor.PostProcessorContext context) (at <1f5aacfb83804e518b48285b5fe58926>:0)
UnityEditor.Android.PostProcessor.PostProcessRunner.RunAllTasks (UnityEditor.Android.PostProcessor.PostProcessorContext context) (at <1f5aacfb83804e518b48285b5fe58926>:0)
Rethrow as BuildFailedException: Exception of type ‘UnityEditor.Build.BuildFailedException’ was thrown.
UnityEditor.Android.PostProcessor.CancelPostProcess.AbortBuild (System.String title, System.String message, System.Exception ex) (at <1f5aacfb83804e518b48285b5fe58926>:0)
UnityEditor.Android.PostProcessor.PostProcessRunner.RunAllTasks (UnityEditor.Android.PostProcessor.PostProcessorContext context) (at <1f5aacfb83804e518b48285b5fe58926>:0)
UnityEditor.Android.PostProcessAndroidPlayer.PostProcess (UnityEditor.BuildTarget target, System.String stagingAreaData, System.String stagingArea, System.String playerPackage, System.String installPath, System.String companyName, System.String productName, UnityEditor.BuildOptions options, UnityEditor.RuntimeClassRegistry usedClassRegistry, UnityEditor.Build.Reporting.BuildReport report) (at <1f5aacfb83804e518b48285b5fe58926>:0)
UnityEditor.Android.AndroidBuildPostprocessor.PostProcess (UnityEditor.Modules.BuildPostProcessArgs args, UnityEditor.BuildProperties& outProperties) (at <1f5aacfb83804e518b48285b5fe58926>:0)
UnityEditor.PostprocessBuildPlayer.Postprocess (UnityEditor.BuildTargetGroup targetGroup, UnityEditor.BuildTarget target, System.String installPath, System.String companyName, System.String productName, System.Int32 width, System.Int32 height, UnityEditor.BuildOptions options, UnityEditor.RuntimeClassRegistry usedClassRegistry, UnityEditor.Build.Reporting.BuildReport report) (at <25e9afc147634a5ca855ab83fab425dd>:0)
UnityEngine.GUIUtility:ProcessEvent(Int32, IntPtr, Boolean&)

3)

Build completed with a result of ‘Failed’ in 25 seconds (24999 ms)
UnityEngine.GUIUtility:ProcessEvent (int,intptr,bool&)

4)
UnityEditor.BuildPlayerWindow+BuildMethodException: 3 errors
at UnityEditor.BuildPlayerWindow+DefaultBuildMethods.BuildPlayer (UnityEditor.BuildPlayerOptions options) [0x002ca] in <25e9afc147634a5ca855ab83fab425dd>:0
at UnityEditor.BuildPlayerWindow.CallBuildMethods (System.Boolean askForBuildLocation, UnityEditor.BuildOptions defaultBuildOptions) [0x00080] in <25e9afc147634a5ca855ab83fab425dd>:0
UnityEngine.GUIUtility:ProcessEvent (int,intptr,bool&)

У меня присутствуют 2 скрипта, основной и для звуков
основной скрипт
https://pastebin.com/sMAuicqi

Скрипт для звуков
https://pastebin.com/qpZc2hQ6

1)
61006e6c52846672194801.png
2)
61006ec95ab16974000237.png
3)
61006ed957c47149034805.png
Если я что то не то расписал или что то было лишним, то заранее извините все кто хочет помочь, в первые задаю вопрос на форуме.
и если вдруг нужна еще какая то информация, то пишите, предоставлю все что требуется, лишь бы решить проблему

Обзор

Безопасный режим Unity — это режим, в который редактор Unity может перейти, когда вы открываете проект, в котором есть ошибки компиляции скрипта. Безопасный режим обеспечивает наилучшую среду для устранения ошибок компиляции, чтобы вы могли быстро вернуть проект в рабочее состояние.

В безопасном режиме Unity предоставляет минимальную версию пользовательского интерфейса редактора с ограниченными функциями. Он импортирует только активы, связанные со скриптом, и запрещает импорт активов, не связанных со скриптом (таких как модели, материалы, текстуры и префабы). Это связано с тем, что безопасный режим предназначен не для создания контента, а только для устранения ошибок компиляции.

Безопасный режим никогда не позволяет запускать управляемый код из вашего проекта или его пакетов. Это означает ваши собственные скриптыфрагмент кода, который позволяет вам создавать свои собственные компоненты, запускать игровые события, изменять свойства компонентов с течением времени. и отвечайте на ввод пользователя любым удобным для вас способом. Подробнее
См. в Словарь
, например Скрипты редактора, постпроцессоры активов и программы импорта со сценариями не запускаются. Безопасный режим также отключает переопределения сборки, а также Burst и Roslyn Анализаторы. Это гарантирует, что редактор в безопасном режиме всегда полностью функционален и надежен, даже если он открывает проект в очень поврежденном состоянии.

Unity автоматически выходит из безопасного режима, когда обнаруживает, что больше нет ошибок компиляции. При выходе из безопасного режима Unity полностью импортирует ваш проект, а редактор восстанавливает свою обычную полную функциональность.

Распространенные причины ошибок компиляции

Некоторые распространенные сценарии, которые могут привести к возникновению ошибок компиляции, возникают, когда вы:

  • Обновите проект со старой версии Unity на более новую.
  • Откройте проект в версии Unity, отличной от той, в которой он был создан.
  • Откройте проект с отсутствующим пакетомконтейнером, в котором хранятся различные типы функции и ресурсы для Unity, включая инструменты и библиотеки Editor или Runtime, коллекции ресурсов и шаблоны проектов. Пакеты — это автономные единицы, которые диспетчер пакетов Unity может совместно использовать в проектах Unity. В большинстве случаев они называются пакетами, но иногда их называют пакетами Unity Package Manager (UPM). Подробнее
    См. в Словарь
    или неверную версию пакета.
  • Откройте проект, в котором есть ошибки в ваших собственных скриптах.
  • Откройте проект в системе управления версиямисистеме управления изменениями файлов. Вы можете использовать Unity в сочетании с наиболее распространенными инструментами контроля версий, включая Perforce, Git, Mercurial и PlasticSCM. Подробнее
    Посмотрите в Словарь
    , где последние внесенные вами изменения содержали ошибки компиляции.

Открытие проекта с ошибками компиляции без безопасного режима может вызвать множество проблем. Например, пакетыПакеты — это наборы ресурсов, которыми можно делиться и повторно использовать в Единство. Диспетчер пакетов Unity (UPM) может отображать, добавлять и удалять пакеты из вашего проекта. Эти пакеты являются родными для менеджера пакетов Unity и обеспечивают фундаментальный метод предоставления функциональных возможностей Unity. Однако диспетчер пакетов Unity также может отображать пакеты ресурсов, загруженные из магазина активов. Подробнее
См. в Словарь
в вашем проекте может не загрузиться или не работать неправильно, и ваши ресурсы могут быть неправильно импортированы, что приведет к некорректным кэшированным артефактам в вашей библиотеке или в вашем Кэш-серверОтдельное приложение, которое можно запустить на локальном компьютере и которое хранит импортированные данные ресурсов, чтобы сократить время, необходимое для импорта ресурсов. Подробнее
См. в Словарь
.

В таких ситуациях обычно не нужно ждать, пока остальная часть проекта будет импортирована, прежде чем вы сможете устранить ошибки. Безопасный режим предоставляет вам инструменты для самостоятельного решения этих проблем, связанных со сценариями, или для использования контроля версий для обновления вашего проекта до более новой версии, которая устраняет ошибки, не дожидаясь полного импорта проекта.

Вход в безопасный режим

Когда вы открываете проект с ошибками компиляции, редактор отображает диалоговое окно с вопросом, хотите ли вы войти в безопасный режим:

Войти в безопасный режим? диалог предлагает вам войти в безопасный режим, когда вы открываете проект с ошибками компиляции

Войти в безопасный режим? диалог предлагает вам войти в безопасный режим, когда вы открываете проект с ошибками компиляции

На данный момент у вас есть три варианта:

  • Войти в безопасный режим
  • Игнорировать ошибки и открыть проект
  • Выйти Unity

В большинстве случаев следует выбрать Войти в безопасный режим, чтобы устранить ошибки в проекте (или, если вы работаете с контролем версий, чтобы получить изменения, содержащие исправления ошибок). Безопасный режим обеспечивает наилучшую среду для устранения ошибок компиляции, так что вы можете быстро вернуть свой проект в рабочее состояние, прежде чем Unity импортирует остальную часть вашего проекта.

Однако в некоторых случаях вам может не понадобиться входить в безопасный режим, и в этом случае вы можете Выйти из Unity или Игнорировать ошибки.

Примечание. Это диалоговое окно можно отключить, выбрав Правка > Настройки > Общие > Показать диалоговое окно входа в безопасный режим. . Если вы отключите это диалоговое окно, Unity автоматически перейдет в безопасный режим при открытии проекта с ошибками компиляции.

Выход без входа в безопасный режим

Безопасный режим специально разработан для исправления ошибок компиляции. Если вы работаете над проектом Unity в составе команды, но не несете ответственности за скрипты, вызывающие ошибки, и не знаете, что делать, вам следует выбрать Выход в диалоговом окне. , и обратитесь за советом к программистам из вашей команды.

Игнорирование ошибок и продолжение импорта

В некоторых ситуациях вам не нужно, чтобы проект был в пригодном для использования состоянии (например, если вы открываете старый проект, чтобы скопировать некоторые части или просто проверить, как он настроен). В этом случае вы можете проигнорировать ошибки и все равно открыть свой проект в сломанном состоянии.

Если вы выберете Игнорировать, а позже захотите открыть проект в безопасном режиме, вы можете закрыть и снова открыть Unity, чтобы снова получить доступ к диалоговому окну «Войти в безопасный режим».

Последствия игнорирования ошибок компиляции

Если вы решите проигнорировать ошибки, Unity продолжит импорт остальных ресурсов и полностью откроет ваш проект. Потенциальные последствия здесь включают:

  • Возможно, ваш проект находится в непригодном для использования состоянии. Возможно, вы не сможете войти в игровой режим или создать сборки своего проекта, пока ошибки не будут устранены. Кроме того, любые пакеты в вашем проекте могут загружаться неправильно или вообще не загружаться.

  • Возможно, Unity потребуется дважды импортировать ваши ресурсы; один раз при запуске и еще раз после устранения ошибок компиляции проекта. Это увеличивает время, необходимое для загрузки проекта в пригодном для использования состоянии.

  • Если в вашем проекте используется конвейер рендеринга с поддержкой сценариев, ваш модуль рендеринга может не загрузиться, что приведет к визуальным проблемам, таким как розовый/пурпурный значок ShaderНебольшой скрипт, содержащий математические расчеты и алгоритмы расчета цвета каждого визуализируемого пикселя на основе входных данных освещения и Конфигурация материала. Подробнее
    See in Словарь
    ».

  • Ошибки компиляции скрипта могут вызвать вторичные ошибки в вашем проекте. Например, если программа импорта со сценарием в вашем проекте не может загрузиться из-за ошибок компиляции, ваши ресурсы могут быть импортированы в неправильном состоянии.

Безопасный режим призван помочь вам избежать всех этих проблем.

Редактор в безопасном режиме

В безопасном режиме Unity предоставляет минимальный интерфейс редактора с ограниченными функциями.

Редактор Unity в безопасном режиме

Редактор Unity в безопасном режиме

Редактор Unity отображает баннер безопасного режима на панели инструментовряд кнопок и основных элементов управления в верхней части Unity Редактор, который позволяет взаимодействовать с редактором различными способами (например, масштабирование, перевод). Подробнее
См. в разделе Словарь
в верхней части Редактора, который заменяет стандартный Редактор. панель инструментов. Панель инструментов показывает, что вы находитесь в безопасном режиме, и предоставляет кнопку Выйти из безопасного режима, которая позволяет игнорировать оставшиеся ошибки и выйти из безопасного режима. Баннер также указывает, использует ли ваш проект пакеты предварительной версиипакет preview. находится в разработке и еще не готов к производству. Предварительный просмотр пакета может находиться на любой стадии разработки, от начальных до практически завершенных.
См. в Словарь
.

Редактор Unity сохраняет свою интеграцию с редакторами кода в безопасном режиме, поэтому вы можете дважды щелкнуть ресурсы скрипта или ошибку консолиs, чтобы открыть связанные с ними сценарии, и вы можете открыть проект C# через меню Ресурсы. Он также сохраняет свою интеграцию с системами контроля версий.

Ограниченный набор окон в безопасном режиме

Редактор отображает ограниченный набор окон в безопасном режиме. Это:

  • Окно консоли
  • Окно проекта
  • Окно ИнспекторОкно Unity, в котором отображается информация о текущем выбранном игровом объекте, активе или настройках проекта, что позволяет вам проверять и отредактируйте значения. Дополнительная информация
    См. в окне Словарь
  • Окно диспетчера пакетов

Это единственные доступные окна, поскольку они связаны с исправлением ошибок компиляции. В безопасном режиме другие окна недоступны.

Меню редактора в безопасном режиме

В безопасном режиме параметры, доступные в главном меню редактора, ограничены. Вы можете видеть и выбирать только те пункты меню, которые относятся к работе со скриптами; обычные возможности создания и работы с другим контентом недоступны. Например, вы не можете создавать или открывать СценыСцена содержит окружение и меню вашей игры. Думайте о каждом уникальном файле сцены как об уникальном уровне. В каждой сцене вы размещаете свое окружение, препятствия и декорации, по сути проектируя и создавая свою игру по частям. Подробнее
См. в Словарь
или создайте ресурсы без сценария, такие как как примитивные формы, источники света или камерыКомпонент, который создает изображение определенной точки обзора в вашей сцене. Вывод либо рисуется на экране, либо фиксируется в виде текстуры. Подробнее
См. в Словарь
. GameObjectОсновной объект в сценах Unity, который может представлять персонажей, реквизит, декорации, камеры, путевые точки и многое другое. . Функциональность GameObject определяется прикрепленными к нему компонентами. Подробнее
См. в Словарь
и Компонент меню отсутствуют, а меню Window предлагает только ограниченный набор окон.

Ограниченное меню редактора в безопасном режиме, отображающее доступные параметры для создания ресурсов.

Ограниченное меню редактора в безопасном режиме, отображающее доступные параметры для создания ресурсов.

Окно проекта в безопасном режиме

В безопасном режиме окно проектаокно, отображающее содержимое ваших ресурсов. Папка (вкладка “Проект”) Подробнее
See in Словарь
имеет некоторые функциональные отличия от обычного поведения вне безопасного режима. .

Основное отличие состоит в том, что вы можете выбирать только ресурсы, связанные с компиляцией. Другие типы активов недоступны для выбора. Они остаются видимыми как затененные записи в окне проекта, но их нельзя выбирать или редактировать.

В частности, типы объектов, связанных с компиляцией, с которыми вы можете взаимодействовать:

  • Файлы C# (.cs)
  • DLL-файлы (.dll)
  • Определения сборки (.asm)
  • Файлы ответов (.rsp)
  • Файлы наборов правил (.ruleset)

Кроме того, значки невыбираемых ресурсов не отображают предварительный просмотр содержимого ресурса. Вместо этого они показывают общий значок для представления типа актива.

В окне «Проект» отображаются общие значки для невыбираемых ресурсов.

В окне «Проект» отображаются общие значки для невыбираемых ресурсов..

Кнопка меню создать (+) отключена, а контекстное меню окна проекта содержит ограниченный набор доступных параметров.

Кнопка меню «Создать» (+) в окне проекта, отключенная в безопасном режиме

Кнопка меню создать (+) в окне проекта, отключена в безопасном режиме.

Выход из безопасного режима

Unity автоматически выходит из безопасного режима после устранения всех ошибок компиляции. Затем Unity продолжает открывать ваш проект и импортировать ваши ресурсы.

Чтобы выйти из безопасного режима, пока еще остаются ошибки компиляции, нажмите кнопку Выйти из безопасного режима на панели инструментов безопасного режима. Это не рекомендуется (см. Последствия игнорирования ошибок компиляции), и Unity предложит вам подтвердить свое решение в диалоговом окне.

Кнопка «Выйти из безопасного режима» на панели инструментов «Безопасный режим».

Кнопка Выйти из безопасного режима на панели инструментов безопасного режима.

Если вы выходите из безопасного режима, когда в вашем проекте остаются ошибки, а позже хотите вернуться в безопасный режим, вы можете закрыть и снова открыть Unity, чтобы снова получить доступ к диалоговому окну «Войти в безопасный режим».

Безопасный режим в пакетном режиме

В пакетном режиме Unity автоматически завершает работу, если в вашем проекте есть ошибки компиляции, если вы не используете -ignoreCompilerErrors аргумент командной строки.

Добавить комментарий