Создать игру, создание игр, конструктора игр, игровые движки, разработка игр, сделать игру
Приветствую Вас Гость · Вход · Регистрация  ·  Новые сообщения · Участники · Правила · Поиск · RSS
  • Страница 1 из 1
  • 1
Godot Engine - Первое приложение "Hello World!"
ZiP Дата: Четверг, 17.03.2016, 00:38 | Сообщение # 1
( περιμετρ )
Просмотр профиля: ZiP

Сообщений: [887]

Всем привет! В данной теме я расскажу как создать простейшее приложение на движке Godot Engine.
Здесь не будет каких либо инноваций или чего-та, что сильно нагрузит Ваш мозг. Я всего лишь познакомлю Вас с основами разработки на Godot Engine и немного поясню работу встроенного скриптового языка GDScript. Поехали!

После того как Вы запустите Godot Engine, появится окно "Менеджера проектов":

Теперь нажмите кнопку "New Project" и в появившемся окне нажмите кнопку "Browse":

Далее укажите директорию где будет храниться вся информация и контент Вашего нового проекта и не забудьте создать отдельную папку с названием проекта.

После того как Вы выбрали директорию и создали папку, введите название проекта в поле "File" и нажмите кнопку "Open":

В диалоговом окне "Create New Project", нажмите кнопку "Create":

Теперь Ваш новый проект появится вверху списка в менеджере проектов.
Теперь дважды нажмите ЛКМ в списке на Ваш проект или выделите его и нажмите кнопку "Edit" и Ваш проект загрузится в режиме редактирования.
Так как в проект пустой то Вы увидите следующее:

В левой части программы находится менеджер "Объектов" для загруженной "Сцены", а ниже и менеджер "Путей к ресурсам" проекта:

В верхней части над "рабочим пространством" нажмите на кнопку "2D":

Теперь мы перешли в режим 2D редактирования, то есть простое двух-мерное пространство, теперь добавим в сцену один "Нить"(Node), с помощью которой можно будет объединить все наши следующие "Нити".
Зажимаем комбинацию клавиш "Ctrl+A" или нажимаем на иконку "Add/Create a New Node" над менеджером "Объектов сцены".
В появившемся окне в поле "Search" вводим: Control и в нижнем списке выбираем двойным кликом ЛКМ "Нить" типа "Control":

После чего он появится в менеджере "Объектов сцены" и на "Рабочем пространстве":

Теперь дважды кликнув ЛКМ по нему, переименуйте как Вам будет удобно
Не снимая выделения в менеджере, нажмите комбинацию "Ctrl+A" или кнопку "Add/Create a New Node"
Теперь в поле "Search" введите: Panel и в оставшемся списке выберите "Нить" типа "Panel":


Отступление: как можно заметить мы только что создали "Дочернюю нить", которая в дальнейшем может быть вызвана основной "Нитью". По своей сути движок Godot Engine использует древовидный или блочный вид разработки, который позволяет создавать как меленькие группы "Нитей" так и строить большие "Древовидные" разветвления, но в любом случае, "Сцена" только одну "Нить" родителя и является основой.


Теперь в "Рабочем пространстве" настраиваем размер нашей "Панели" перетаскивая и растягивая за углы, а так же можно воспользоваться задаваемыми параметрами в правой части программы:

Теперь в менеджере "Объектов" выделите первую созданную "Нить" и самостоятельно добавьте следующие "Нити": "Button" и "Label", затем расположите их как на изображении:

Если всё сделали, то теперь давайте напишем на кнопке "Push!", а для этого выберите "кнопку" в менеджере и в параметрах найдите строку "Text", дважды щёлкните ЛКМ по пустому полю и введите надпись "Push!" и нажимайте клавишу "Enter" для применения изменений:

Так же давайте настроим "Label", чтобы в нём был начальный текст, а для этого выделите его в менеджере и перейдите в правую часть программы для настроек "параметров объекта", найдите поле "Text" и так же как на кнопке начните редактирование и напишите "empty", затем перейдём к визуальной настройке. Чуть ниже найдите два поля "Align" и "Valign" - установите параметры "Center":

Вот мы и закончили работу над "дизайном" нашего приложения. Сохраняем наш проект комбинацией клавиш "Ctrl+S" или через верхнее меню:

Назовите сцену как Вам удобно и нажмите кнопку "Save".

Вот и настал момент первого запуска и проверки, но не спешите нажимать кнопку "F5", так как нам надо сначала указать проекту "главную сцену". Для этого переходим в верхнее меню и выбираем пункт "Project Settings":

Находим поле "main_scene" и нажимаем на кнопку с "папкой":

Выбираем сохранённую сцену и закрываем настройки проекта. Теперь смело нажимаем "F5" на клавиатуре и смотрим как выглядит приложение:


Теперь перейдём к основному, создание кода. Выбираем основную "Нить" и нажимаем кнопку "Edit/Create the Node Script"
В появившемся окне ничего не меняем и просто нажимаем кнопку "Create" и перед нами откроется поле редактирования кода:


Встроенный скриптовый язык GDScript имеет специфический синтаксис, но он очень схож с Phyton и JavaScript.

Данная часть кода:
Код
extends Control

Отвечает за обработку возможных функций, констант и т.д., проще говоря данная строка отвечает за "тип объекта". Так же внесённые новые переменные после данной строки являются своего рода глобальными и нужны для вызова в любом событии данной "Нити"(Объекта)

Данная часть кода:
Код
func _ready():
    # Called every time the node is added to the scene.
    # Initialization here
    pass

Отвечает за готовность "Нити"(Объекта), что то типа события "Create" в Game Maker.

Хэш-тег(#) перед строкой, отвечает за восприятия данной строки как комментарий.

И так, давайте заставим надпись "empty" заменяться на "Hello world!". Для этого, в событии "func _ready():" заменяем "pass" на следующую строку:
Код
get_node("Label").set_text("Hello World!")


Теперь по порядку:
1. get_node("Label") - данная часть метода отвечает за вызов параметров "Нити" находящейся в родительской "Нити", простым языком, мы вызываем параметры вложенной "Нити", так как мы прописываем метод в родительской "Нити", то нам не обязательно вызывать данный метод по полному пути типа - self.get_node()
2. set_text("Hello World!") - вызываем параметр "текста" из "Нити" и меняем его на нужную строку("String")

Теперь сохраняем изменения и нажимаем "F5":


Теперь давайте заставим надпись "Hello World!" меняться при нажатии на кнопку.
Для этого переходим в режим редактирования скрипта и в функции "func _ready():" добавляем строку:
Код
get_node("Button").connect("pressed",self,"_button_press")


Теперь мы создали своего рода заготовку для собственной функции.
Теперь ниже функции "func _ready():" пишем следующие строки:
Код
func _button_press():
    get_node("Label").set_text("Button pressed!")


Цельный код должен выглядит вот так:


Теперь сохраняем проект и проверяем:


Если у Вас всё получилось и Вы хотя бы что то поняли, то я очень рад за Вас, так как я старался донести до Вас как можно больше, но при этом не старался загрузиться Ваш мозг большим объёмом информации. В общем, удачи Вам в ознакомлении с Godot Engine!

Спасибо за то, что дочитали до конца!
Всем пока! До новых встреч на просторах портала для разработчиков игр Make-Games.ru!

Исходник: Hello_World.zip [ 9.34Kb ]
Для открытия исходника, извлеките папку из архива, затем в менеджере проектов нажмите кнопку "Import" и найдите директорию с исходником и откройте файл "engine.cfg", проект появится в списке.


☼Настройка профиля|↕Написать жалобу на пользователя|▲Правила сайта|░мои темы
BSC Hard|Death Jeep|WSC B&W|Моб.платформер|BSC Hard 2|Последняя Миссия|Christmas Story
░▒▓ Z7NV ▓▒░
  • Страница 1 из 1
  • 1
Поиск:

При полном или частичном копировании материалов сайта ссылка на Make-Games.ru обязательна. Make-Games.ru © 2008 - 2024 Хостинг от uCoz
Топ Разработка игр