Up to date

This page is up to date for Godot 4.2. If you still find outdated information, please open an issue.

Пути содействия

Движок Godot бесплатный, управляемый сообществом проект с открытым исходным кодом. Почти все (кроме нашего главного разработчика Хуана, далее об этом ниже) разработчики работают pro bono в свободное время, для удовольствия и любви к созданию свободного движка с исключительным качеством.

Это означает что для развития, Godot нужно как можно больше пользователей для внесения вклада в движок. Существует много путей для содействия такому большому проекту, делая возможным для каждого внести что-то позитивное в движок, не обращая внимание на опыт:

  • Станьте частью сообщества. Лучший способ внести свой вклад в Godot и помочь ему стать ещё лучше - это просто использовать движок и продвигать его из уст в уста, в титрах или заставке ваших игр, в сообщениях блога, обучающих материалах, видео, демонстрациях, на мероприятиях gamedev или свободного ПО, в поддержке в вопросах и ответах, на форумах, в Contributors Chat, Discord и т.д. Участвуйте! Участие в качестве пользователя и сторонника помогает распространять информацию о нашем замечательном движке, который не имеет маркетингового бюджета и поэтому может полагаться только на своё сообщество, чтобы стать более популярным.

  • Делайте игры. Это не секрет, чтобы убеждать новых пользователей и особенно индустрию в целом, что Godot - это адекватный игрок на рынке, мы нуждаемся в великолепных играх сделанных на Godot. Мы знаем что движок имеет огромный потенциал, для создания 2D и 3D игр, но из-за юного возраста мы не имеем больших блокбастеров которые привлекут внимание к Godot. Так что продолжайте работу над вашими чудесными проектами, каждая новая игра увеличивает нашу привлекательность для рынка разработки игр!

  • Принимайте участие в разработке движка. Вы можете предлагать код через Pull requests, тестировать самые свежие сборки или основную master ветку, сообщать об ошибках или предлагать улучшения в разделе Issues, улучшать официальную документацию (как справочник классов, так и обучающие материалы) и переводы на другие языки. Следующие разделы расскажут о каждом из этих "прямых" путей содействия подробнее.

  • Помогайте деньгами. Godot - некоммерческий проект, но он использует преимущества пользовательских донатов разными путями. Помимо обычных расходов, таких как расходы на хостинг или рекламные материалы на мероприятиях, мы также используем пожертвованные деньги для приобретения оборудования, когда это необходимо (например, мы использовали пожертвованные деньги для покупки MacBook Pro для реализации поддержки Retina/HiDPI и различных других функций, связанных с macOS). Что наиболее важно, мы также использовали пожертвования для найма основных разработчиков, чтобы они могли работать над движком полный рабочий день. Даже при низкой ежемесячной заработной плате нам нужен стабильный доход от пожертвований, чтобы продолжать делать это, что до сих пор было очень полезно для проекта. Так что, если вы хотите пожертвовать немного денег проекту, посетите наш сайт и узнайте подробнее как это сделать.

Участие в разработке

Возможность изучать, использовать, изменять и распространять модификации исходного кода движка - это основные права, которые предоставляет вам лицензия Godot MIT, что делает движок бесплатным ПО с открытым исходным кодом.

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

Внесение изменений в код имеет два больших преимущества:

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

  • The whole community will benefit from your work, and other contributors will behave the same way, contributing code that will be beneficial to you. At the time of this writing, over 2,000 developers have contributed code changes to the engine!

Чтобы обеспечить хорошее сотрудничество и общее качество, разработчики Godot применяют некоторые правила для добавления кода, например, касающиеся стиля, используемого в коде C++ (отступы, скобки и т.д.) или рабочего процесса Git и PR.

Хорошее место для начала - поиск проблем, помеченных как хороший первый запрос на GitHub.

См.также

Технические подробности о рабочем процессе PR изложены в специальном разделе Механизм Pull request.

Подробная информация о рекомендациях по стилю кода и инструменте clang-format, используемом для их выполнения, изложена в Code style guidelines.

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

Чтобы ваше время и усилия не пропали даром, рекомендуется сначала проверить идею, прежде чем реализовывать её и выставлять на рассмотрение в качестве PR. Для этого в Godot есть система предложений ` <https://github.com/godotengine/godot-proposals>`_ . Её использование поощряется для планирования изменений и обсуждения их с сообществом. Детали реализации также можно обсудить с другими участниками в чате Godot Contributors Chat.

Примечание

Предложения требуются только при работе над улучшением или новой функцией. Для устранения проблем достаточно сообщений об ошибках.

Тестирование и отчёты о проблемах

Ещё один отличный способ внести свой вклад в движок - это тестировать релизы или ветку разработки и сообщать о проблемах. Также полезно сообщать о проблемах, обнаруженных в стабильных выпусках, чтобы их можно было исправить в ветви разработки и в будущих отладочных выпусках.

Тестирование версий, находящихся в разработке

У вас есть несколько способов помочь с тестированием:

  • Скомпилируйте движок из исходного кода самостоятельно, следуя инструкциям на странице Compiling для вашей платформы.

  • Тестируйте официальные предварительные сборки, когда они анонсируются (в блогах и на других платформах сообщества), например, альфа-, бета-версии и релиз-кандидаты (RC).

  • Тестируйте "доверенные" неофициальные сборки ветки разработки; просто спросите у членов сообщества надежных провайдеров. По возможности лучше использовать официальные сборки или скомпилировать самостоятельно, чтобы быть уверенным в происхождении ваших сборок.

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

Регистрация проблемы на GitHub

Godot uses GitHub's issue tracker for bug reports. When you start filing a bug report, you’ll be given a form to fill out. Please try to follow it so that all issues are consistent and provide the required information.

Вклад в документацию

В Godot есть два отдельных ресурса, которые называются "документацией":

  • The class reference. This is the documentation for the complete Godot API as exposed to GDScript and the other scripting languages. It can be consulted offline, directly in Godot's code editor, or online at Godot Class Reference. To contribute to the class reference, you have to edit the XML file corresponding to the class and make a pull request. See Внесение вклада в справочник классов and Class reference primer for more details.

  • Учебники и документация по движку и их переводы. Эта часть, которую вы сейчас читаете, распространяется в формате HTML. Её содержимое генерируется из обычных текстовых файлов в формате reStructured Text (rst), в которые вы можете внести свой вклад с помощью запросов на исправление на репозитории godot-docs GitHub. Более подробную информацию смотрите в Вклад в документацию.

Вклад в переводы

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

Дополнительную информацию смотрите здесь: Локализация редактора и документации.