10

Godot 3: Применение шейдера к спрайту и замедление музыки

Показан стартовый экран игры с искривляющимся фоном и замедлением музыки при нажатии на кнопку старт.


К спрайту фона применяется параметризованный шейдер и его параметр меняется из gdscript.


Также приведен пример управления темпом музыки из скрипта.

Правила сообщества

ОБЩИЕ ПРАВИЛА:

- Уважайте чужой труд и используйте конструктивную критику

- Не занимайтесь саморекламой, пишите качественные и интересные посты

- Никакой политики


СТОИТ ПУБЛИКОВАТЬ:

- Посты о Вашей игре с историей её разработки и описанием полученного опыта

- Обучающие материалы, туториалы

- Интервью с опытными разработчиками

- Анонсы бесплатных мероприятий для разработчиков и истории их посещения;
- Ваши работы, если Вы художник/композитор и хотите поделиться ими на безвозмездной основе

НЕ СТОИТ ПУБЛИКОВАТЬ:

- Посты, содержащие только вопрос или просьбу помочь
- Посты, содержащие только идею игры

- Посты, единственная цель которых - набор команды для разработки игры

- Посты, не относящиеся к тематике сообщества

Подобные посты по решению администрации могут быть перемещены из сообщества в общую ленту.

ЗАПРЕЩЕНО:

- Публиковать бессодержательные посты с рекламой Вашего проекта (см. следующий пункт), а также все прочие посты, содержащие рекламу/рекламные интеграции

- Выдавать чужой труд за свой

Подобные посты будут перемещены из сообщества в общую ленту, а их авторы по решению администрации могут быть внесены в игнор-лист сообщества.


О РАЗМЕЩЕНИИ ССЫЛОК:

Ссылка на сторонний ресурс, связанный с игрой, допускается только при следующих условиях:

- Пост должен быть содержательным и интересным для пользователей, нести пользу для сообщества

- Ссылка должна размещаться непосредственно в начале или конце поста и только один раз

- Cсылка размещается в формате: "Страница игры в Steam: URL"

Вы смотрите срез комментариев. Показать все
Автор поста оценил этот комментарий

Вам надо на habr пост запилить.

раскрыть ветку (35)
0
Автор поста оценил этот комментарий

Не думаю, что на хабре хорошо относятся к движкам типа Годота. Там всё таки более профессиональное сообщество

раскрыть ветку (34)
0
Автор поста оценил этот комментарий

Лучше не гадать а попробовать.

0
Автор поста оценил этот комментарий

На хабре есть публикации про Godot, и сообщество отнеслось достаточно хорошо.

раскрыть ветку (12)
Автор поста оценил этот комментарий

Я встречал много веток комментов, где люди не понимали смысла писать свой движок, когда есть Анрил (для 3д экшн-рпг и им подобных игр) или юнити (для платформеров и мобилок). Ладно писать движок для своего проекта, например ММО или стратегии, где требуется то, чего не предлагают обычные движки.
Сейчас есть Анрил и Юнити, которые и так лёгкие. И создаётся Годот, который вроде планируется быть ещё проще. Зачем? Хороших игр и так нет, а когда движки поощряют создание парашных платформеров и мобилок - мы их и не увидим.

раскрыть ветку (11)
0
Автор поста оценил этот комментарий

А ты сам разделяешь эту позицию, или же видишь в ней логические нестыковки? (Но в любом случае хорошо, что на хабре представлены разные точки зрения.)

раскрыть ветку (10)
Автор поста оценил этот комментарий

Я написал. Я не понимаю, зачем нужно создавать движок и делать клон юнити\анрила. Он не никогда не достигнет уровня анрила или сделает это через лет 10-20. Юнити тоже как минимум не скоро сможет тягаться с анрилом по графике и качеству условных 3д экшн-рпг на нём. Так почему не уйти в другую сферу? РТС, например, или что-то ещё, что невозможно сделать на том же Анриле без перекапывания исходника движка. Тогда бы юнити сразу стал единственным движком, который бесплатен и способен делать ртски, он привлёк бы очень много людей к себе.
А сейчас все 3 движка почти не отличаются друг от друга. Разве что качеством. У анрила потолок самой крутой игры выше чем у двух других.

раскрыть ветку (9)
0
Автор поста оценил этот комментарий

То есть, ты считаешь, что Unreal Engine по всем пунктам выигрывает (или хотя бы не проигрывает) сравнение с Godot?

раскрыть ветку (8)
0
Автор поста оценил этот комментарий

Не пытайся меня подловить. Скажу так: на нём не создать хорошую игру. Мобилки и платформеры такими не считаются.

раскрыть ветку (7)
0
Автор поста оценил этот комментарий

А ты не мог бы вместо высказывания всё новых бездоказательных тезисов аргументировать хотя бы часть своих предыдущих утверждений? Или хотя бы поделиться личным субъективным опытом реальной работы с Анриал и Годо?

раскрыть ветку (6)
Автор поста оценил этот комментарий

Я не понимаю что для тебя аргументы. Как и не понимаю какую игру ты считаешь хорошей. Годот был создан совсем недавно и в нём только недавно ввелись вещи вроде динамического источника звука, тайлинг текстуры относительно размеров модели. Он плох со всех сторон, потому что в нём ничего нет и разрабатывается он не большой компанией вроде Эпиков, а кучкой энтузиастов+сообществом. Да даже юнити лучше.
Годот позиционирует себя как что-то, где можно быстренько склепать паршивенькую игрушку и отправить её в стим (спасибо боже что гринлайта уже нету). Хотя опытный человек уже знает, что скорость разработки в таких масштабах скорее важна мобилкам, нежели нормальным и качественным играм. То, что ты можешь в 2 клика сделать Марио - не значит, что эта игра будет хорошей и ты чему-то научишься. Также, как ты играя в Лего не учишься строить реальные здания. Ты можешь потратить время на изучение питона и годы на то чтобы выучить специфику работы Годота, но если твоя цель нечто большее чем казуалочки для детей - это трата времени. Сейчас для создания качественного 3д проекта тебе не нужно иметь штат из ста программистов, которые напишут тебе свой движок, орду композиторов и визуальщиков. Почти всё что тебе надо ты можешь найти в интернете, а с опытом создавать что-то своё, что уже не стыдно показать людям и что не вызовет критику в духе "да это просто проект из готовых ассетов".
Библиотека с природными ассетами доступна за 9$ в месяц, в ней 2к - это минимальное разрешение текстур. И их там дохрена. Материалы, модельки, вот это вот всё. Я про Megascans.
В том же анриле тебе даже не надо знать с++ чтобы сделать свою игру (конечно, раз в сто лет тебе всё же придётся залезть в студию и изменить какой-то код, но даже по этой теме есть статьи для не знакомых с с++ людьми). Ты можешь сделать всё на блюпринтах. Вот видео сравнения работы бп и с++: https://youtu .be/8gVixDglpQ4
Тебе не надо писать код чтоб просто открыть дверь, всё визуализировано и понятно даже ребёнку. Если бы ты раньше был в шоке от фраз "обьектно-ориентированное программирование", "двумерный массив", то сейчас ты можешь с этими вещами разговаривать на "ты" и удивляться, как сложно звучит их название.
Даже для анимаций уже есть Cascadeur и старенькая Euphoria, которые могут тебе забацать реалистичную анимацию просто по кейфреймам, где тебе не надо быть задротом и держать в голове центр массы,.
Второй видос про Isles of Adalar, который создавали изначально 3 человека. Движок Юнити, конечно, от того и такая паршивая картинка. Сейчас, когда игра стала чуть популярнее, ей помогают и другие люди из сообщества с созданием, поэтому про 3 человека не совсем правда, там скорее всего около 10, но это тоже мало. https://youtu. be/-vkQ-hyCoXA
Поэтому я не понимаю в чём прикол движков типа Юнити и Годота, которые позиционируют себя как лёгкие движки и при этом не имеют хотя бы системы блюпринтов, уже готовых шейдеров (может юнити и имеет, не помню) и такой высокой планки качества. Люди идут делать хорошие игры, думают что это сложно и начинают (и заканчивают) платформерами или мобилками, убивая свой энтузиазм на эту дрянь. Ещё и не пойму зачем создавать движки для FPS игр, от третьего лица или с видом сверху, если можно создать движок под RTS или что нибудь ещё, сделать % с продаж игры как у анрила и получить огромный заработок, потому что любителей стратегий очень много, а игр нету, как и движков для их создания. Юнити углубился в 2д и стал популярен среди платформеров. Анрил в 3д. Годот? Копия Юнити, которая хочет казаться круче.

раскрыть ветку (5)
0
Автор поста оценил этот комментарий

Примеры хороших игр (из тех, которые по силам создать практически в одиночку): Minecraft, Rimworld, World of Goo, Limbo/Inside, режим выживания в The Long Dark (или двумерный аналог), Invisible Inc, Gish, Zombie Night Terror и т.д. Да, я не считаю, что хорошая игра обязана быть в 3D. Более того, считаю, что маленькой команде рационально тратить силы в 3D только если третье измерение критически важно для их замысла геймплея.


Ну вот я, например. Не был программистом (правда, есть неплохая математическая подготовка). Прошлым летом пытался учить python в связке с pygame, потом блеванул и начал присматриваться к unity но чисто случайно узнал про godot. Пощупал и сразу влюбился. Заодно и git немного освоил. Первый проект делаю в 2D. Не мобилка и не платформер (надеюсь, получится сделать геймплей достаточно глубоким, приятным и нетривиальным). Нравится красивый лаконичный скриптовый язык. Понемногу осваиваю встроенный шейдерный язык, нравится писать свои шейдеры. И скриптинг и шейдеры есть в визуальном варианте, но, по мне - это как хлебать суп вилкой - совсем не оптимально. И кстати, RTS в Godot создать вполне реально, и даже не через жопу, при условии, что у создателя у самого руки откуда надо растут.

раскрыть ветку (4)
0
Автор поста оценил этот комментарий
А чем Godot не проффесианален? Лицензия MIT, открытый исходный код
раскрыть ветку (19)
0
DELETED
Автор поста оценил этот комментарий

У Годота конечно есть своя ниша, но считать тип лицензии и опенсурс за "профессионализм" это признак нубства.

Автор поста оценил этот комментарий

А зачем он был создан? Чем он отличается от какого нибудь анрила? Он предлагает что-то уникальное, позволяющее легко создать игру такого жанра, который в анриле или юнити сделать без больших вложений или опыта невозможно?

раскрыть ветку (17)
2
Автор поста оценил этот комментарий

На годоте хорошо делать простые инди проекты. Он очень простой, маленький и в нем уютно работать. Там есть честная 2D графика. Остальные движки делают это через 3D, из-за чего приходится возиться с камерой если надо сделать какой-нибудь пиксель арт платформер.

раскрыть ветку (5)
0
DELETED
Автор поста оценил этот комментарий

В "простых" проектах принято использовать шаблон singleton для различных игровых менеджеров и обращаться к этим менеджерам из любого участка кода.

if (enemy.isDead)
     ScoreManager.scores++;

Но в Годоте же нельзя создавать глобальные классы/объекты? Как тогда делать "простые" инди-игры если уже вначале пути нас поджидает "гемор"?

раскрыть ветку (3)
0
Автор поста оценил этот комментарий

Тем и нравится мне Godot, что там оказывается можно почти все, что может понадобится. И сделано это удобно.
Синглтон в Godot делается легко - https://docs.godotengine.org/en/3.1/getting_started/step_by_...

раскрыть ветку (2)
0
DELETED
Автор поста оценил этот комментарий

Я знаю про это ибо когда то рассматривал Годот. Но каждый раз руками регистрировать в редакторе не всегда круто.


Еще я добавил не много своего мнения про Годот #comment_153822529

Так как пробовал использовать его больше, чем "просто для инди" и возникло много приколов.

Еще были проблемы с импортом моделей, анимаций так как из-за принципа они не добавляли формат fbx. Но сейчас это уже вроде исправлено...добавлением поддержки fbx ;).

раскрыть ветку (1)
0
Автор поста оценил этот комментарий
Добавят поддержку assimp в 3.2. и поддержка gltf ещё есть.
Автор поста оценил этот комментарий

Обычно для таких целей используют GameMaker или какой-нибудь Роблокс.. или конструктор игр онлайн, не знаю, существуют ли такие.

1
Автор поста оценил этот комментарий
Да.
раскрыть ветку (1)
Автор поста оценил этот комментарий

Net

1
Автор поста оценил этот комментарий

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

С такой логикой не нужно создавать ничего нового. Зачем Y ведь есть X?

раскрыть ветку (1)
Автор поста оценил этот комментарий

Скорее зачем пытаться сделать ещё один X, если есть уже готовый X

0
Автор поста оценил этот комментарий

Чем отличется тут уже перечисляли #comment_153683161
Отличий очень много в деталях и целях применения. Не всем надо непременно создать "самую крутую игру в мире", если цель быстро(за недели) создать платформер, который бы приносил прибыль, то Анриал и Юнити может оказаться не лучшим выбором. Плюс тут дело вкуса и навыков конкретных людей, которые хотят сделать игру. Кому-то проще всю игру, включая уровни запрограммировать кодом, таким пойдет LibGDX, кому-то без редактора уровней никак не обойтись, но ставить гигабайты софта, который потом еще запускать через wine совсем нет ни потребности ни желания - этим пойдет Godot. Кто-то делает "самую крутую игру в мире" и будет изучать Анриал, а кому-то не удобно кодить текстом и непременно хочет аналог блюпринта.
Есть параллель этого вопроса с такими - зачем нужен Pikabu, когда уже есть Reddit или зачем VK если есть Facebook или зачем универсал, если есть хэтчбек. Ну просто они настолько кому-то были нужны, что их создали.

раскрыть ветку (6)
Автор поста оценил этот комментарий

Ну, я и говорю. Ради какого-нибудь платформера на мобилку годот и сойдёт. Для нормальной игры (ака самой лучшей) уже придётся учить нормальный движок)

раскрыть ветку (5)
0
Автор поста оценил этот комментарий

А что такое самая лучшая игра? Автор майнкрафта сделал игру на кубиках и заработал миллиард. Еще миллиард заработала игра с птицами и свиньями. Есть прекрасная серия платформеров: Limbo, Braid, Fez, Terraria, Inmost вышел на Apple Arcade. Всем им не нужен навороченный движок. А для большой игры нужна большая команда. Вот для таких игр движок типа UE4 и нужен.

раскрыть ветку (4)
Автор поста оценил этот комментарий

Ты реально думаешь, что ты зайдёшь в Годот, заюзаешь этот очень лёгкий движок, создашь за пару недель какой-нибудь платформер и он окажется шедевром? Многие популярнейшие игры были либо первопроходцами в своём жанре, либо очень хорошо доработали старый жанр (как батлрояль). Вряд ли бы ты сидел сейчас и выставлял скорость создания игры за аргумент, если бы занимался созданием той самой игры, которая окажется шедевром и заработает кучу денег. Потому что это не аргумент. За пару недель ты создашь только паршивенькую мобилку, которая месяц поприносит тебе денег и умрёт, а ты будешь дальше сидеть и шпилить новые мобилки думая, что ты обуздал геймдев)
Причём обучаться созданию нормальных игр у тебя не будет времени. И переходить на другой, более качественный движок тоже.

раскрыть ветку (3)
1
Автор поста оценил этот комментарий
заюзаешь этот очень лёгкий движок, создашь за пару недель какой-нибудь платформер и он окажется

..нет не шедевром. Но вполне способной приносить годами денег казуалкой на которую есть устойчивый спрос со стороны очень большой и неожиданной для многих игроделов категории людей.
Я уже так делал и намерен повторить это еще не раз)

раскрыть ветку (2)
Автор поста оценил этот комментарий

Бесит, когда люди начинают спорить о качестве движков, но когда им тыкают в лицо качественным движком они резко начинают говорить что они хотят создавать некачественные игры и поэтому им не подходит качественный движок. Кстати, эти же лицемеры чаще всего ноют вместе со всеми когда в новую часть их любимой игрульки злые разрабы пихают микротранзакции или ещё какую-то дрянь, хотя сами по-факту такими разрабами и являются, которым бабки важнее качества. Ладно бы сидели на жопе ровно и не отсвечивали, так вы ещё за движки споры устраиваете, какой движок быстрее всего вам высрет донную казуалочку. Лично мне бы пиздец как стыдно было говорить кому-то что я делаю мобилки. Может, левому человеку можно сказать, но знающий понимает какое это болото и что к геймдеву это имеет такое же отношение как какая-нибудь работа крутым чиновником, ворующим деньги. Один вред, но о том как всё плохо поноем вместе с народом.

раскрыть ветку (1)
0
Автор поста оценил этот комментарий

"начинают говорить что они хотят создавать некачественные игры"
Никогда не видел людей, которые бы говорили, что хотят создавать некачественные игры. Просто не у всех представление о "качественных играх" одинаковое. И далеко не все перфекционисты, бесконечно идущие к "идеалу" и при этом ни в состоянии довести до конца ни один проект. Кто-то просто здраво оценивает свои силы, время и возможности и делает то, что может реально сделать и довести до завершения в текущих условиях.
Вот интересно, какая игра качественнее с точки зрения современного Анриальщика LodeRuner или Robocop 3?))) Вот мне кажется Robocop качественнее, а LodeRunner, хоть и не такой "качественный", но лучше, потому что его хочется повторить.

Вы смотрите срез комментариев. Чтобы написать комментарий, перейдите к общему списку