Не могу добавить новые сценарии к объектам в Unity3d - PullRequest
0 голосов
/ 11 февраля 2020

Я пытался добавить сценарий к GameObject в иерархическом представлении в Unity. Я перетащил его раньше в мою папку сценариев. Я получил следующее сообщение:

Невозможно добавить поведение сценария AssemblyInfo.cs. Сценарий должен быть производным от MonoBahaviour!

Я проверил его с помощью нового стандартного сценария - (возможно, копирование и вставка обойдут проблему), но также новый стандартный сценарий дает мне сообщение:

Нет скриптов MonoBehaviour в файле, или их имена не соответствуют имени файла.

Я уже искал его, и следующие решения не неприменимо к этому случаю.

  • Имя сценария названо точно так же, как класс Monobehaviour Class
  • Класс сценария наследуется от класса Monobehaviour Class
  • Нет опечаток. (Имя класса не содержит пробелов)
  • Я закрыл и снова открыл Unity
  • Сброс не работает

Вы можете проверить оба сценария (которые в основном то же самое) ниже:

Screenshot of Inspector 1

Screenshot of Inspector 2

Я использую Windows 10 версии 1909 и Unity 2018.4.10f, а также кодирование в Visual Studio Код.

Может быть, вы знаете, что происходит. Спасибо

[Редактировать] В консоли были сообщения об ошибках.

Generating diff of this object for undo because the type tree changed.This happens if you have used Undo.RecordObject when changing the script property. Please use Undo.RegisterCompleteObjectUndo

OnGUIDepth changed: was 0 is 3. Event type was 0

1 Ответ

0 голосов
/ 12 февраля 2020

Это не очень хороший ответ, потому что я не могу сознательно воспроизвести ответ, а также не могу воспроизвести проблему. Но теперь я снова могу добавить сценарии к объектам GameObjects в представлении иерархии.

Как и в следующем руководстве по Unity: Структура папки проекта Unity существует Файл решения Visual Studio : .sln, который содержит информацию об окружающей среде проекта и состоянии проекта. Кроме того, существует Visual Studio C# Файл проекта : .csproj, который содержит настройки проекта и ссылки на файлы, используемые проектом.

Информация от https://fileinfo.com/extension/sln и https://fileinfo.com/extension/csproj

Я удалил их. (Не волнуйтесь, Unity генерирует их автоматически.)

Тем не менее, не было немедленного улучшения. Я удалил все файлы сценариев и попытался перетащить новый файл сценария. После этого действия Unity разбился. После перезапуска Unity могут быть созданы сценарии, которые снова заработали - или, я должен сказать, Unity снова заработал, потому что никогда не было проблем со сценариями.

Я знаю, что это неудачное решение, но если эта проблема возникает у вас и у вас пробовал все пункты в вопросе, (а) удаление файлов .sln и .csproj, (б) перезапуск Unity и (c) импорт / создание новых скриптов может работать.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...