Читать книгу Делаем PC игру вместе - Ар'лан ис'Дрекхэм - Страница 7
«Делаем PC игру вместе»
4. Си шарп
ОглавлениеСоздавая код программы нашей игры мы будем использовать язык программирования C# (произносится си шарп). Это очень удобный и гибкий язык программирования. Его огромный плюс заключается в том, что он строго типизирован, т.е. в большинстве случаев он попросту не позволит вам сделать ошибку создания программы. Например, в этом языке нельзя просто так сказать, что строка текста это тоже самое что и число. В других языках программирования это возможно, что в процессе создания программы может повлечь возникновение неявных ошибок, которые приводят к непредсказуемым последствиям, и что еще хуже, место возникновения в коде такой ошибки очень трудно найти. Чтобы писать программы на языке C# нам понадобится Microsoft Visual Studio. Ее можно просто скачать из интернета. Перед загрузкой выберите раздел Community, этот вариант является бесплатным для скачивания.
Очень часто при написании кода игры необходимо много раз повторять одни и те же инструкции программы. Для этого существуют методы или другое название – функции. Метод это ничем не отличающийся от прочих строк кода набор команд, который может запускаться как отдельная подпрограмма. В Unity3d существует несколько фундаментальных методов, которые отвечают практически за всю работу игры. Первый из них это метод Update (). Именно этот метод бесконечно запускается каждый кадр игры. Чем чаще сможет выполниться этот метод процессором, тем выше будет FPS игры. Через этот метод будет выполняться почти весь код нашей будущей игры. Этот код принято называть логикой игры. Следующий фундаментальный метод называется Start (), который выполняется только один раз при запуске игры. Он нужен для того чтобы подготовить необходимые параметры к работе – инициализировать их. Причем, в нашей сцене игры может быть много методов Start () и Update () сразу: на двери перехода в уровень, на персонаже, на магазине продуктов и т. д. Как же они взаимодействуют друг с другом? Тут важно понять и запомнить, что при запуске игры сначала выполняются все объекты игры у которых есть метод Start () и после этого начинают выполняться все объекты с методом Update (). Например, если в запущенной сцене игры есть 100 объектов и на каждом есть метод Update (), то это означает, что за 1 кадр (упомянутый выше) процессор компьютера выполнит все эти 100 методов Update (). Для дополнительного понимания можно это представить так, что один метод Update () разделен на 100 методов, которые должны выполниться в течение одного кадра игры. Вообще, строго говоря, с точки зрения производительности такое большое количество методов Update () в одной сцене не очень хорошо. Но такое разбиение одного метода на разные объекты является одной из замечательных возможностей Unity3d. Благодаря такому разбиению процесс создания игры становится очень удобным и понятным: вот здесь напольный вентилятор, он появляется в начале игры и пока он включен его метод Update () запускается чтобы вращать лопасти его пропеллера.