Как открыть окно программирования в юнити

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

Используйте кнопки в панели Toolbar чтобы управлять Play Mode режимом редактора и видеть, как ваша опубликованная игра будет работать. Пока вы находитесь в режиме Play, любые изменения лишь временные, и сбросятся когда вы выйдите из режима игры. UI редактора потемнеет чтобы обратить ваше внимание на это.
Панель управления игрового окна

| Button: | Function: |
|---|---|
| Display | Click this to choose from a list of cameras if you have multiple cameras in the Scene. You can assign Displays to cameras in the Camera module, under the Target Display drop-down. This is set to “Display 1” by default. |
| Aspect | Select different values to test how your game will look on monitors with different aspect ratios. This is set to “Free Aspect” by default. |
| Scale slider | This allows you to zoom in and examine areas of the game screen in more detail, or zoom out to see the entire screen where the device resolution is higher than the Game View window size. You can also use the scroll wheel and middle mouse button to do this while the game is stopped or paused. |
| Maximize on Play | Правее находится переключатель Maximize on Play . Когда включен, игровое окно будет растягиваться на 100% окна редактора после перехода в Play mode для полноэкранного предпросмотра. |
| Mute audio | Enable this to mute any audio in-game when you enter Play Mode. |
| Stats | Click this to toggle the Statistics overlay, which contains Rendering Statistics about your game’s audio and graphics. This is very useful for monitoring the performance of your game while in Play Mode. |
| Gizmos | Click this to toggle the visibility of Gizmos. To only see certain types of Gizmo during Play Mode, click the drop-down arrow next to the word “Gizmos” and only check the boxes of the Gizmo types you want to see. |

За названием каждого компонента расположены настройки для иконки и ассоциированной с ней гизмы. Настройки Icon раскрывают другое выпадающее меню, которое позволяет вам выбрать из набора предустановленную иконку или нестандартную иконку, заданную через текстуру.
![]()
Настройки Gizmo позволяют вам выборочно отключать отображение гизм для выбранных компонентов.
Настройки 3D Gizmos в верхней части меню относятся к иконкам гизм. При включении, иконки будут показывать перспективу камеры (например, иконки ближних объектов будут больше чем отдаленных), иначе они будут одинакового размера независимо от расстояния. Слайдер после флажка позволяет менять размер иконок, что полезно для избавления от захламления при большом числе видимых иконок.
[Unity] Как сделать диалоговое окно, как у Майкрософт?
Юлий
> в Юнити нет таких стандартных окон, нарисуй в GUI окошко и пользуйся
Уточню, меня интересует не класс Form, а конструкция:
if ( form1.ShowDialog( ) == DialogResult.OK)
Нечто подобное я набросал:
public async Taskbool> ShowDialog( ) < btnClicked = false; while ( !btnClicked) < await Task.Yield( ); > return dialogResult; >
public async void CreateDialog( ) < Dialog dialog = CreateDialogPrefab( ); if ( await dialog.ShowDialog( ) == true) < //Делаю что нужно dialog.Close( ); > >
Вот только у Майкрософт сам вызов элегантнее, без async/await.
#3
23:36, 20 апр 2019
Нифига не понятно, что и зачем ты хочешь. Перед тем как открывать тему, нужно сформулировать задачу и четкий вопрос.
#4
0:22, 21 апр 2019
Intofire
> Нифига не понятно, что и зачем ты хочешь. Перед тем как открывать тему, нужно
> сформулировать задачу и четкий вопрос.
Да мой косяк — думал, что все знают про диалоговые окна.
Form form1 = new Form( ); . if ( form1.ShowDialog( ) == DialogResult.OK)
if ( form1.ShowDialog( ) == DialogResult.OK)
означает, что программа прервет свое выполнение и будет ожидать пока не закроется диалоговое окно и только потом выполнится тело условия, ну и далее код.
if ( await dialog.ShowDialog( ) == true)
делает тоже самое, только приходится использовать async/await, а хотелось бы без них т.е.
public void CreateDialog( ) < Dialog dialog = CreateDialogPrefab( ); if ( dialog.ShowDialog( ) == true) < //Делаю что нужно dialog.Close( ); > >
#5
18:28, 21 апр 2019
Может Вам хватит модального окна?
#6
19:03, 21 апр 2019
seaman
> Может Вам хватит модального окна?
Я не понял вопроса. На Unity таких нет, приходится самому придумывать.
#7
10:15, 22 апр 2019
С ГУИ, конечно неудобно работать.
Но в 2019 появилось это.
https://docs.unity3d.com/ScriptReference/UIElements.PopupWindow.html
Не уверен, что это нужное, т.к. не пробовал, не видел.
#8
18:52, 22 апр 2019
seaman
> У Вас может и нет, в Юнити есть.
> https://docs.unity3d.com/ScriptReference/GUI.ModalWindow.html
Жуть какая-то). Только, если для расширения редактора.
seaman
> Но в 2019 появилось это.
> https://docs.unity3d.com/ScriptReference/UIElements.PopupWindow.html
> Не уверен, что это нужное, т.к. не пробовал, не видел.
Да это же вообще не из той оперы.
#9
21:48, 22 апр 2019
для расширения редактора
для расширения редактора есть свое окно
Ну, да с ГУИ работать очень неудобно
#10
6:17, 23 апр 2019
Виндовский ShowDialog для этого запускает внутри собственный цикл обработки сообщений окна. Сомневаюсь, что Юнити даёт доступ к таким вещам. Да и это не кроссплатформенно будет.
#11
12:15, 23 апр 2019
Я у себя замутил подобную логику вполне себе кроссплатформенно. На айосе пришлось покурить маны, но, вроде бы работает уже которую версию.
#12
13:03, 23 апр 2019
В чем суть данной логики — можно поподробнее?
#13
17:32, 23 апр 2019
smartxp
C async/await — логичный и правильный подход. Что бы ты ни придумал на замену, оно будет намного сложнее и страшнее. Разве что юнитевские сопрограммы, но это те же яйца, только некрасивые.
Как скачать и установить Unity


Василий Горелкин Учит детей и взрослых разрабатывать игры. Ведет разработку своего проекта.
Unity — это игровой движок для разработки, управления и развития мобильных и десктопных игр или консолей. Вместе с преподавателем курса по Unity и C# Василием Горелкиным подготовили краткую инструкцию по установке Unity для тех, кто хочет начать создавать свои игры.
Системные требования
- Любой 4-ядерный процессор начиная с 2011–2012 годов. (Линейка Intel Core i3, i5, i7, AMD FX 8000) (Кроме линейки Intel Celeron и AMD Athlon, AMD A-серия).
- 4 ГБ оперативной памяти.
- Видеокарта уровня GT1030 и выше или встроенная графика уровня Intel HD Graphics 610 или выше, или Vega8 и выше.

Освойте профессию «Разработчик игр на Unity»
Разработчик игр на Unity
Все главные навыки разработчика игр на одном курсе. Вы освоите все этапы геймдизайна, научитесь программировать на С# и создадите 7 игр во время курса.

Профессия / 18 месяцев
Разработчик игр на Unity
Создавайте виртуальные миры

Рекомендуемые требования:
- Любой 4-ядерный процессор начиная с 2017 года. (Кроме линейки Intel Celeron и AMD Athlon).
- 8–16 ГБ оперативной памяти.
- Видеокарта уровня GTX 1060 6Gb и выше.
Вот характеристики компьютера, на котором разрабатывались учебные модули для курса «Разработчик игр на Unity»:
- Процессор: AMD Ryzen 5 1600 Six-Core Processor 3.20 GHz
- Оперативная память: 16 ГБ
- Видеокарта: GTX1060 6Gb
Установка игрового движка Unity
1. На сайте выберите «Начать».

2. В открывшейся вкладке выберите «Физическое лицо» и бесплатный проект.
3. Дальше выберите версию для операционной системы (Mac OS или Windows), начнется автоматическая загрузка установщика.

4. Откройте установщик Unity, который вы только что скачали. Нужно прочитать и согласиться с условиями обслуживания.

5. Как только установщик откроется, на Mac выберите папку для сохранения, обычно это «Программы» (Applications). На Windows также можно выбрать место для сохранения, либо файл автоматически сохранится в «Загрузки».

6. Откройте Unity Hub, дождитесь окончания проверки. Появится окно для разрешения запуска, нажмите «Открыть» (на Mac) или «Да» (на Windows).

7. Вы окажетесь на странице регистрации. Если у вас еще нет аккаунта, нажмите Сreate Аccount.


Разработчик игр на Unity – одна
из самых творческих профессий в IT. Создайте виртуальные миры уже через полгода обучения
8. Вас отправит на страницу регистрации, где нужно заполнить свои email, пароль, имя пользователя и ник, а также согласиться с условиями лицензии и политикой приватности. Не забудьте подтвердить регистрацию, пройдя по ссылке в письме.

9. Перейдите обратно в Unity Hub и авторизуйтесь. Откроется приветственная страница, нажмите Got it.

10. Откроется установщик, который предложит загрузить последнюю актуальную версию Unity. Нажмите Install. По умолчанию папкой для установки на Windows будет C://Program Files/Unity/Hub/Editor, а на Mac — /Applications/Unity/Hub/Editor.

11. Для разработки также нужно получить лицензию, нажмите Agree and get personal edition license. Unity можно использовать бесплатно, если игры, которые вы разрабатываете, не приносят больше 100 000$ в год, это описано в условиях.

12. Начнется загрузка, на это потребуется время.

13. Параметры установки редактора или проектов можно поменять в настройках (Preferences).

14. Выберите Location, если нужно изменить папку сохранения. Закройте настройки.

15. Если нужно установить другие версии редактора, нажмите Install Editor, выберите подходящую, нажмите Install.
16. Выпадет окно, где можно подобрать параметры установки: оставляем галочку у Visual Studio — это интегрированная среда разработки программного обеспечения. С ее помощью можно писать, редактировать, повышать производительность кода, чтобы создавать скрипты для игр.
Добавьте необходимые галочки в платформах: например, Android Build Support со всеми вложенными галочками или любую другую, для которой вы собираетесь разрабатывать игры. Можно убрать галочку с документации, так как она есть в интернете. Нажмите Install. Сначала нужно прочитать и согласиться с лицензионными условиями Visual Studio и Android SDK & NDK Tools, тогда начнется установка компонентов.
17. После завершения загрузки можно попробовать зайти в проект: Projects — New project.

18. Выберите любой, нажмите Create project.
19. Проект успешно загрузился!
Консоль разработчика
Консоль разработчика используется для выполнения статических методов C# с помощью внутриигрового UI.
Чтобы отобразить UI консоли во время работы игры, убедитесь, что консоль разработчика включена в конфигурации движка, и нажмите клавишу ~ (тильда). Если у вас возникли проблемы с использованием клавиши по умолчанию (например, в редакторе Unity на Mac OS), вы можете изменить его с помощью свойства Toggle Console Key .
Чтобы предоставить методу C# консоли, добавьте атрибут ConsoleCommand к статическому методу. Атрибут имеет необязательный строковый аргумент, позволяющий задать короткую ссылку:
[ConsoleCommand("debug")] public static void ToggleDebugInfo () => UI.DebugInfoGUI.Toggle();
В консоли введите полное имя метода или короткую ссылку (если она применяется) и нажмите клавишу Enter для выполнения метода.
Следующие команды доступны на данный момент:
| Команда | Описание |
|---|---|
| nav | Переключает UI навигатора сценариев Naninovel. |
| debug | Переключает окно отладки сценариев Naninovel. |
| var | Переключает окноредактора пользовательских переменных. |
| purge | Сбрасывает кэш загруженных ресурсов, когда используется провайдер Google Drive. |
| play | Начинает исполнять загруженный в данный момент сценарий Naninovel. |
| stop | Останавливает исполнение загруженного в данный момент сценарая Naninovel. |
| rewind (int) | Откатывает загруженный в данный момент сценарий Naninovel к строке с заданным индексом. Строка должна быть либо командой, либо универсальным текстом. При перемотке назад строка должна существовать в стеке отката. |
| reload | Исполняет горячую перезагрузку проигрываемого в данный момент сценарая Naninovel. Работает только в редакторе Unity. |
Исполнение команд
Вы можете вызвать команды сценария через консоль разработчика. Введите командную строку точно так же, как вы это делаете в сценариях Naninovel, и она будет немедленно выполнена. Помимо прочего, это может быть полезно для отладки пользовательских переменных состояния. Например, вы можете вывести текущее значение любой пользовательской переменной:
@print
— выведет значение переменной VariableName в стандартном принтере.