Это копия, сохраненная 9 июня 2020 года.
Скачать тред: только с превью, с превью и прикрепленными файлами.
Второй вариант может долго скачиваться. Файлы будут только в живых или недавно утонувших тредах. Подробнее
Если вам полезен архив М.Двача, пожертвуйте на оплату сервера.
С изучения документации. Если не можешь в инглиш, и даже в гугл-переводчик, то есть варианты русскоязычного перевода части доков на ресурсе конкурирующей фирмы: http://c2community.ru/forum/viewforum.php?f=119
Ещё начат перевод официальной документации: https://docs.godotengine.org/ru/latest/
Но вообще, будь мужиком и изучи английский: https://godot.readthedocs.io/en/stable/
Вместе с движком обязательно смотри примеры, там есть всё - от платформера до чата. Примеры качаются прямо в движке через свой магазин.
Скачать движок: https://godotengine.org/download/ или http://store.steampowered.com/app/404790/Godot_Engine/
FAQ: https://docs.godotengine.org/ru/latest/about/faq.html
Игры, созданные глобальными кириллами: https://godotengine.org/showcase или https://steamcommunity.com/app/404790/discussions/0/412448792354265655/
Предыдущий:
>>552280 (OP)
Архивы:
1 https://arhivach.ng/thread/207802/
2 https://arhivach.ng/thread/388500/
3 https://arhivach.ng/thread/388501/
4 https://arhivach.ng/thread/388502/
5 https://arhivach.ng/thread/388503/
6 https://arhivach.ng/thread/432708/
Если форков годота нет, значит пользователей все устраивает. Сосите, хейтеры
У полного говна нет >100k пользователей
>как изменить дефолтный EditText ?
>убрать фон, убрать blink палочку и тд
>в окне инспектора это все не убирается
Через темы. Пик рилейтед.
Жми ссылки в шапке.
Ищи на ютубе туториалы.
А я думаю, что четвертый, и даже пятый, если хорошо постараться и иметь много времени.
Не, я серьезно. Я понимаю, что уровня субнавтики вряд ли, но что можно?
Там на выбор:
1. Легкий и простой гдскрипт, для питонщиков.
2. Сишарп для сишников.
3. Лапша-вижуалскрипт-как-в-УЕ4е-модно-молодёжно, для совсем новичков.
4. Си++ тоже возможен двумя путями, но тебе, я полагаю этот пункт не понадобится.
1280x720, 0:14
>Ничего не умею, но хочу научиться.
Главное - мотивация. Я Уже более года назад тоже не умел нихуя, к марту месяцу 2018-го я уже мог делать вот такое:
Для меня как новичка подходят 1 и 3 верно? Отдать чему-то предпочтение или они пересекаются, освоил один будешь в принципе и другой понимать?
Согласен, с мечтой можно что-то добиться и есть куда идти. А просто кирил никому не нужен.
1280x720, 0:40
маленькие шарики летают по орбитам вокруг большого и падают на него
Когда релиз?
Жаль, а мне понравился концепт
Форков нет потому, что бесперспективно.
Поддерживать форк некому, вся движуха, багфикс и апдейты будут на мастер-ветке.
А изменения из форка обратно в мастер-ветку не пропустит диктатор Хуан, ему ведь важно писать все костыли своими руками, не дай бог кто-то напишет лишний класс за него, его очко тут же сожмётся до размеров молекулы.
>Примерно такое
В такое умел еще blitz 3d году эдак в 2005ом. Даже если закрыть глаза на графон (не всем нужен фотореалистичный PBR как в анриле), главная причина, по которой годот непригоден для разработки 3д - отсутсвие окклюжен куллинга, пока не впилят, можно даже не пытаться сделать что-то сложнее сценки из 3-4 примитивов.
>can't run godot with nvidia on linux
Так это не годот виноват, nvidia опять кривые драйвера запилили, чтобы пользователи годота страдали.
Окклюжн куллинг уже много лет никем не используется. Времена S образных стыков между уровнями давно прошли со времен коридорных шутанов. Сейчас в моде, прости господи, баттл рояли на опен ворлде. И там попросту нечего куллить. Наоборот, куллинг даст ненужную просадку фпс, когда ты высунешься из-за камня за которым прятался.
Хуан обещал портальную систему написать, но когда еще ее дождешься. Сам я портальную систему вряд ли осилю, а вот чанковый грид, думаю, тут любому под силу. Суть в том чтобы разбить все на сетку, добавлять все ноды в ячейки это сетки, и делать видимыми/невидимыми только те, которые не дальше какого-то расстояния.
Откомментил. Лайкнул.
Почему не хранить отдельными полями в таблице?
У всех, у кого что-то из двух слов, например, фамилия, или какой-нибудь лупас де сильва хуилья омега - то тоже все хреново.
Поэтому по стандарту международному - отдельными полями.
Я ещё думаю над этим.
С одной стороны да, стандарты предписывают хранить в отдельных полях, с другой стороны, хочется предоставить (себе? команде разработки? моддерам?) простой интерфейс с одним полем в текстовом файле, куда просто записывается строка из слов с пробелами, из которой система выберет по одному слову на имя.
Нужно, я полагаю, изучить матчасть по именам-фамилиям, чтобы сделать прям подлинно международный парсер.
Что одно поле, что несколько - от этого команде разработки не становится проще. Проще сделать гибкую систему, где ты указываешь сколько тебе нужно полей в конкретной реализации, по которым система сама будет искать нужное.
t = { name = "name", surname = "surname"}
Потом просто добавляем/убираем поле в таблицу и пользуемся в любом месте нужными данными.
>команде разработки не становится проще
Не согласен.
Гораздо удобнее дизайнеру текстов/квестов/диалогов, когда он вообще не имеет дела со структурами данных, типа t = { name = "name", surname = "surname"} и когда программист ему выдал тулзу, в которой просто, без задней мысли вписываешь несколько ФИО в текстовый контрол через запятую, а не ебашишь через табу или интер в грид.
Потом в соседней вкладке у тебя удобно выпадает выпадающий список с именами, выбранными из списка ФИО.
Так программист и выдает ему тулзу, где есть эти поля в нужном количестве с нужными названиями. По желанию выдается еще кнопочка по добавлению/удалению полей.
Программист сделал таблицу в ядре программы keys = {} и вынес:
1) интерфейс конфигурирования реализации
кнопка "добавить", кнопка "удалить" и текстовое поле "attribute"
Пользователь настраивает систему, например, ему нужно только имя и фамилия в этой реализации. Он пишет в поле attribute слово "name", нажимает кнопку "добавить" и к таблице добавляется новый ключ name. keys = {name} То же самое со вторым. keys = {name, surname}
2) интерфейс ввода данных
По таблице keys создается нужное количество полей ввода. В данном случае два поля. Он заполняет их и добавляет в какое-то хранилище данных.
Задал кинематику
func _physics_process(delta):
move_and_slide(Vector3(1, -1, 0), Vector3(0, 1, 0) )
Падает вниз и вбок. Но при попадании на плоскость перестает двигаться.
Вопрос снят, засунул на отдельный канвас
>фиче фриз
>добавляют TypeScript, CSG and more
>не фиксят баги "движок не работает"
Они ебанутые?
Что за глобал варс и сам delay? Давай код этого. Думаю, что просто ничего не делает она тебе.
Да по названию по моему понятно что оно задержку делает. Я написал, что оно нормально работает вне _process и выдает все правильно, но в нем код во время нее все равно продолжает дальше выполняться. Глобалварс - просто синглтон.
Я уже засыпаю, не знаю, что это у тебя за функция такая недокументированная. Пользуйся лучше таймерами.
https://godotengine.org/qa/9758/timer-node-how-to-use-it-in-code
Ты с ума сошел? Представь себе что у тебя 60 FPS, это 16 ms. Ты предлагаешь каждый кадр делать делей на 1/5 этого значения, лол.
Ок, спасибо, завтра поразбираюсь.
А непонятно, что ты обходить собрался. У тебя окошко быстро открывается и закрывается, или что? Почитай тут https://godotengine.org/qa/16520/is_action_just_pressed-is-gone-what-to-use-now
А мог бы игры делать.
Да, инвентарь на пробел открывается-закрывается несколько раз слишком быстро. И тебе спасибо.
Они добавляют побольше фич, чтобы хомяки визжали от восторга.
А про критические баги хомяки не в курсе, они не делают игры на годоте, просто запускают его время от времени, чтобы почувствовать себя причастными к миру геймдева. Эти же хомяки везде пиарят годот и советуют его всем.
А потом у тебя случается разрыв шаблона, когда ты запускаешь его и пытаешься запилить даже что-то совсем простое - физика глитчит, рендеринг статтерит, проседает фпс на двух спрайтах в кадре, редактор анимаций время от времени решает потроллить тебя и не сохраняет внесенные изменения.
И ты сидишь и охуеваешь оттого, насколько реальность не соответствует радостным визгам хомяков на форумах.
Блеать, обернул в elif, а не if второй вариант и с _action_just_pressed все заработало даже без задержки. Какой же я тупой.
Ну вот в новой у меня сейчас меньше стало глюков переноса кода между проектами и физика у кинематик бодей не стала так глючить))
Пока что у меня такое:
В отдельной вкладке вписываются полные имена в свободной форме в текстбокс.
После чего в основной вкладке заполняется краткими именами из этого списка. Список парсится построчно. Если строка непустая - вызывается гет_фёст_нейм. Всё.
Зачем городить огород из отдельных полей?
Изобретаешь, причем такой, на который потом нельзя привесить звоночек или убрать лишний катафотик.
А должно быть 10Гб, иначе несолидно?
Какая разница какой вес файла, школота?
Чего? Ты даже не стараешься сжимать. Надо выставить нужные флаги компиляции, собирать релизную версию.
>если ты не ue4/unity/godot макака.
Все правильно сказал. Настоящие профи используют рпг мейкер с ренпи.
Мало кто будет спорить, что уровень большинства пользователей godot крайне низок. Низкий уровень входа === много тупого быдла.
И интересно вам друг в друга репортами кидаться.
Если вы, девчонки, выберетесь из /gd/, вы станете разработчиками, молящими о том, чтобы началать делать игру! Но до этого дня вы просто блевотина! Вы низшая форма жизни на земле! Вы вообще нихуя не люди! Вы всего лишь неорганизованная стая скользких вонючих жаб! Я строг и поэтому я вам не понравлюсь! Но чем больше вы будете меня ненавидеть, тем большему вы научитесь! Я строг, но я справедлив! У меня здесь нет дискриминации движков, мне насрать на unity, на уеч, на гамак и на годот! Они все здесь одинаково никчёмны! Моя задача – избавится от тех, кто неспособен делать игры! Вам это понятно, мрази?
>4. Си++ тоже возможен двумя путями, но тебе, я полагаю этот пункт не понадобится.
А меня вот как раз этот пункт интересует больше всего. Может кто объяснить как использовать плюсы и насколько широко они тут могут применятся? Ищу небольшой движок для обучения плюсов.
>насколько широко они тут могут применятся?
Максимально широко. Весь API движка доступен.
>Может кто объяснить как использовать плюсы
Где то в прошлых тредах поянял. Либо пишешь либу и подключаешь ее в настройках проекта. Либо пишешь модуль и компилируешь его вместе с движком.
Обновляемся!
Да все уж обновились и обсудили)
Непонятно зачем было релизить сломанную версию. Инвесторы не торопят, живи себе на донаты. Конкурентов у движка нет, ни в опенсорсе ни в проприетарщине.
Так-то у юнити будет за сотню мегабайт минимальный билд. А у анрила еще больше.
Скорее всего, у тебя кривые модели. Или кривые драйвера. А может, и то и другое кривое, но точно не годот, в нём же нет багов.
Так он видимо и жалуется, что слишком мало. Одноклассники не оценят. Сам подумай, одно дело пакмэн весом 30мб, другое дело 120мб. Очевидно больше лучше, в нем какие-то волшебные штуки засунуты, не иначе.
> Конкурентов у движка нет, ни в опенсорсе ни в проприетарщине.
Если бы ему дать на маркетинг половину денег маркетинга юнити, то затмил бы юнити к хуям.
Так это движки для 3D игр, 2D там просто в комплекте, потому что могут, а не потому, что хороши для этого.
set_enabled(true)
is_colliding()
set_enabled(false)
то коллайдинг не срабатывает.
Еще для 2D было бы неплохо, чтобы был официальный шаблон экспорта, из которого убрано все от 3D.
спасибо кэп
Да не за что, обращайся.
Причем тут буфер видюхи, если речь о физике?
get_transform вернет позицию/вращение относительно родительской ноды, get_global_transform - относительно всего мира, вроде так.
Это понятно, а как извлечь оттуда именно позицию? get_global_transform(). а что дальше? )
Есть же global_translate(), который устанавливает глобальную позицию, по идее должен быть и геттер.
Для внутренностей движка, только для обсчета физики. Static это стены, которые никогда не двигаются, Kinematic - это то, что ты типа кинематографично двигаешь, например двигающаяся платформа или примитивный персонаж который ходит влево-вправо, Rigid- это симуляция физики с массой, ускорением и т.д. просто Area - область взаимодействия для определения коллизий.
Т,е. Static и Kinematic особой разницы в методах нет? И это только для лучшего обсчета освещения и отработки на видюхе?
Читал, не понял. И что это за вектор origin? Translate-то все равно в basis лежит. Оно конечно можно извлекать basis.x.x, basis.x.y, basis.x.z, но может что уже готовое есть для этого. И если уж ты не знаешь ответа на задаваемые вопросы, то лучше промолчать и ничего не писать.
>читал
Вот это читал?
https://docs.godotengine.org/en/3.0/tutorials/math/matrices_and_transforms.html
>лучше промолчать
Ок.
Так и в чем разница-то у Kinematic и Static ? Ну сделаю я персонажа Static и также буду его двигать. Разница в наличии методов move, которые проверяют соударение, а при движении статиков такого нет?
Документацию бы уже открыл, да посмотрел, там это в первой же строчке написано. Ответ - да.
Вот вместо кучи сообщений предыдущих, можно сразу написать по существу ответ и все или ничего не писать.
Вас зеленых учить надо, хотя бы советами, а то засрете нормальный тред и будете отпугивать адекватных новичков.
enemylist = $SpotArea.get_overlapping_bodies()
это нормальный способ создавать список мобов, которым я иду бить морды (не на каждом тике, офк).
Потом я этот список чищу, но если цикл писать как
for body in enemylist:
то я потом не могу вызвать
enemylist.remove(body)
чтобы не бить морду себе. Как поступил бы правильный пацан? for по индексам от нуля до .size()?
Так. Русский у меня сегодня тоже как gdscript. Первый тезис — это тоже вопрос, но я уже понел на него ответ, так как SpotArea наследуется от чего ни попадя, она почему-то не стала огромной для потомка, и туда не попали мобасы.
Ладно, вопрос снимается, я внимательно посмотрел в других частях собственного скрипта, всё поправил и решил, что пора баиньки.
https://www.reddit.com/r/godot/comments/5jlnzf/weird_array_forloop_behavior/
Удалять крайний элемент массива.
Либо, конечно, через временный массив, куда ты добавляешь только нужные элементы, проходящий твой критерий отбора.
Нулевой? Ну это решает проблему только с мазохизмом, а ведь тел в кадре предполагается немало.
Я уже сделал итератор числом и чувствую себя очень тупым.
А ты пробовал слои на производительность? Можно же пометить самого себя другим слоем.
Можно и так (кстати, нужно, чтобы не обрабатывать агрессию по отношению к деревьям и стенам). Надо записать это в какой-нибудь файл «костыли.txt» и время от времени туда залезать и смотреть, что я опять сделал не так.
>чтобы не обрабатывать агрессию по отношению к деревьям и стенам
Г Р У П П Ы
Р
У
П
П
Ы
https://docs.godotengine.org/ru/latest/getting_started/step_by_step/scripting_continued.html
Сигналы с биндингами это такая СИЛА! СИЛИЩА!
Рассмотрим на примере ноды MenuButton. У неё есть потомок PopupMenu, но в редакторе не вынесены ссылки на этот потомок. Однако, мы можем обратиться к экземпляру менюшки в рантайме, вызвав у кнопки get_popup()
И вот нам надо организовать такой часто применяющийся контрол как текстбокс с кнопочкой-меню, иначе говоря, комбо-бокс.
Если пошастать по вкладкам сигналов в редакторе, мы не увидим способа сделать это.
Но давайте напишем в _ready() вот что:
var popup = $".../MenuButton".get_popup()
var textbox = $".../TextEdit"
popup.connect("id_pressed", self, "popup_menu_pressed", [popup, textbox])
[popup, textbox] - вот это биндинги и это главная СИЛИЩА! Далее мы напишем процедуру popup_menu_pressed(ID, menu, control) в которой ID - это обязательный аргумент длелегата-сигнала, а вторые два - наши биндинги, которые передадутся в процедуру при каждом вызове сигнала.
Таким образом тело процедуры полностью инкапсулировано от остального кода, при этом имеет всю необходимую инфу для обработки меню и передачи выбранного пункта в текстовый бокс:
control.text = menu.get_item_text(ID)
Да, вот это точно верный подход, потому что он убирает сразу два костыля, спасибо.
А кто нибудь проводил бенчи этих подходов? Сравнение ручного контроля словаря, слоев, и групп?
>проводить бенчи
>годот
Gdscript лучше не бенчить, чтобы не расстраиваться лишний раз.
Юзая годот, ты должен быть рад, если твой код просто запускается и кое-как работает.
Можно бенчить внутренности движка, не трогая gdscript.
Миллионами блеать.
Так это не проект а сцена, кидаешь в папку со своим проджектом и открываешь из редактора.
Прост, решил плотно с ним ознакомиться, но если не то, то перейти на юнити.
поможет, разумеется. как и дроч UE поможет. даже если языки имеют разный синтаксис и в разной среде, но общие знания вроде "как повернуть вектор", "как сделать чтобы камера красиво сзади летала", "как написать менеджер" и прочее разумеется останутся.
но я бы на твоём месте сначала полез в юнити а потом в годот.
Я изучал флеш - один вред для дальнейшего изучинеия, там другой ооп на прототипах, все другое.
А, вот оно как, спасибо.
Нет, никак не поможет. Что за долбоебизм? Разные подходы, разные архитектуры, разные языки. Опыт в виндоус как то помогает опыту в линукс?
> Опыт в виндоус как то помогает опыту в линукс?
Бля, ну вообще то я думаю, что человек, сидевший на винде разбирется в линуксе быстрее, чем моя бабка, которая компом никогда не пользовалась.
Если ты знаешь прототипное ооп, то другие парадигмы освоить уже будет проще. Помешать эти знания точно не могут.
>Помешать эти знания точно не могут.
Парадигмы могут мешать. Вот тут большинство знает одну парадигму ООП, две выучить уже тяжелее. Но им похуй, они и на этой игры делают.
В примерах я видел, что вроде бы корректно работает, если всех юнитов забросить дочерними нодами от тайлмапы, изображающей стены. YSort нужен в такой ситуации? (А то по-моему он всё портит.)
А вот и первые подрывы тех, кто начинает окунаться в реальный геймдев))
У меня вот с ходу возникли вопросы, на которые ответ не могу найти уже в течение часа.
1) Как изменить дистанцию отрисовки сцены? У меня не отрисовывается целиком то, что должно быть видно (кусок планеты) + не отрисовывается источник света.
2) Как отключить фоновый свет и серую подложку на сцене?
3) Как выбирается позиция, относительно которой вертится сцена по нажатию колеса? Можно ли сделать несколько якорей, относительно которых буду вертеть сцену?
>>66857
На самом деле у тебя всё состояние сцены хранится в каких-то переменных. Вот их и надо записать правильно в простейшем случае. А потом считать и восстановить сцену.
Используй сериализацию, если ты не из этих конечно.
Если из этих - делай как этот >>66949 (Del) анон указал.
В билд можно напихать гиг ресурсов.>>66945
>1) Как изменить дистанцию отрисовки сцены? У меня не отрисовывается целиком то, что должно быть видно (кусок планеты)
В настройках камеры.
>2) Как отключить фоновый свет и серую подложку на сцене?
В настройках мира.
>3) Как выбирается позиция, относительно которой вертится сцена по нажатию колеса? Можно ли сделать несколько якорей, относительно которых буду вертеть сцену?
Ух, ответом на этот вопрос будет волшебный мир векторов, матриц, квартенионов.
Ну давай по пунктам разберем твои придирки:
>1) Как изменить дистанцию отрисовки сцены? У меня не отрисовывается целиком то, что должно быть видно (кусок планеты)
>В настройках камеры.
Конкретно здесь что не ясно?
Если бы ты знал, как, не спрашивал бы у меня.
Буду пытаться, но работы конечно много и она унылая.
>На самом деле у тебя всё состояние сцены хранится в каких-то переменных. Вот их и надо записать правильно в простейшем случае. А потом считать и восстановить сцену.
Я это понимаю, но у меня там дохуя состояний у даже самой маленькой сцены выходит, переменных дофига, и если что-то забуду, то потом баги чувствую полезут. Надо на свежую голову заняться.
>у меня там дохуя состояний у даже самой маленькой сцены выходит, переменных дофига
Определяем, какой объект должен сохранять свои переменные.
Пишем в коде такого объекта таймер, который периодически пишет свои данные в глобальную структуру, которую видно всем. Я такую структуру называю просто, без заморочек - GameWorld.
Таким образом, в этой структуре мы всегда имеем актуальное состояние всего игрового мира (даже незагруженных в данный момент локаций, объектов и т.п.)
И функция сохранения просто сериализирует (записывает в файл) эту структуру.
Функция загрузки наоборот, читает из файла и записывает в память эту структуру. После чего всем объектам направляется широковещательное сообщение о том, что мир загружен. И они сами делают нужные дела: кто-то самоуничтожается, кто-то меняет позицию, кто-то создаёт дочерние объекты, а они в свою очередь загружают себе дочерние объекты. Всё выполняется рекурсивно, от большего к малому.
Звучит мммкасимум криво, годот не дает гарантий в каком порядке прилетят сообщения о загруженом мире, как следствие ты будешь ловить при одной загрузке одно состояние, а при другой из этого же файла краш или тихие глюки. Так же таймер никак не гарантирует что он не сработает во время обновления, когда половина объектов уже поменяла положение а половина нет. Ты хоть игру на паузу то ставишь? Хотя очевидно что нет.
Там в любом случае все на 2 года устаревшое, а за последние полгода годот далеко шагнул вперед.
>Как задать объекту координаты
>об этом в доках на 3.1 ничего
https://docs.godotengine.org/ru/latest/classes/class_spatial.html
void translate ( Vector3 offset )
Новый террейн для годота.
Просто применяю к KinematicBody, а у меня камера и это тело относятся к spatial, в итоге и камера тоже начинает вращаться, отсюдав меня посетила мысль, что трансляция происходит видимо и на spatial, раз камера к нему относится, поэтому, вероятно, стоит применять трансляцию к spatial в целом?
Но опять же. Столкновения обрабатываются через KinematicBody, значит надо получать ноду или spatial, или всё же применять к KinematicBody.
Если делаешь обычного персонажа из примеров, то делай кинематика, у него дочерние коллижен шейп и камера. Камеру можно тоже отдельной сценой, тогда при создании нпс, которому камера не нужна, просто будет удаляться со всеми скриптами, но оставляя логику движения и поворота самого шейпа. Вращаешь сам кинематик, камера движется с ним. Дополнительно на мышь повесить движение камеры по вертикальной оси.
В простейшем случае будет примерно как на пике. Соответсвенно что плеер, что нпс будет модульно собираться из нужных кусков.
>когда трогаю rotation, у меня translation просто в Вальгаллу летит? Объект (а вместе с ним и камеру) начинает дико закручивать и уносить прочь
Потому что ты трогаешь rotation у себя под одеялом в радианах, не переводя в градусы. А радианов в круге всего 3 целых штуки и ещё попугайское крылышко в виде 0,1415927!
Поэтому, когда ты пишешь например, rotation = 90, годот честно проворачивает объект на 90 радианов. А это 30 полных поворотов вокруг своей оси, плюс попугайское крылышко.
Соответственно, когда объект так дико вращается (быстрее фреймрейта между прочим), он, как электрон в атоме, не имеет точного местоположения. На экране ты его видишь в случайной позиции, на том моменте, где его застала отрисовка. Соответственно и двигаться он будет не по траектории, а рандомно, у том направлении, куда он повернулся на данном шаге просчёта физики. Просчёт физики по умолчанию имеет такую же частоту, как и отрисовка, но можно сделать пореже в настройках.
НО ТЕБЕ НЕ ЭТО ДЕЛАТЬ НАДО
Тебе надо либо подставлять значения градусов переведенные в радианы, либо использовать rotation_gedree где углы принимает в градусах.
Отсыпь, а?
Объект движется по орбите радиуса R.
Если я меняю радиус (опускаю или поднимаю объект на орибите, то у меня начинает сдвигаться центр окружности, т.е. не относительно координат (0, 0, 0) радиус растёт, а относительно текущего положения, что приводит к тому, что центр откружности сползает от цента планеты.
На втором пике примерный результат. Если сперва радиус увеличиваю до R1, а потом уменьшаю до R2, то это приводит к сползанию центра, что в случае R2 приводит к тому, что орбита начинает проходить сквозь планету, что неверно.
При использовании to_global большой разницы не вижу.
Координаты на окружности вычисляю по известному радиусу и углу поворота.
Делаешь структуру как на пике. Т.е. у тебя есть планета допустим в нуле координат, далее создаем spatial и его тоже засовываем в нули координат. Спутник засовываем в spatial. Translation твоего спутника - это радиус, меняешь его как нужно. Для вращения меняешь rotation у spatial.
Не за что, обращайся.
По такой формуле в моем примере спутник летает вокруг планеты по синусоиде. Т.е. при изменение радиуса полета от планеты никаких искажений не происходит. Проверь свою формулу, по которой считаешь.
>Ты вообще о чем?
Я вообще о том, что ты, как мне кажется, ебашишь код от фонаря, не разбираясь в тригонометрии.
Давай сделаем так. Что ты вообще хочешь сделать? Опиши вкратце одним постом, или нагринтексть из своих постов выше.
А мы с аноном подумаем, как это тебе будет проще реализоват.
>>67313
Я, в общем, сам дурак, изменял позицию самой ноды через translate.
Формула X = RxCOS(угол) оказалась верна.
Повторил подвиг профессора Фарнсворта.
Видео релейтед получается.
>The engines don't move the ship at all. The ship stays where it is and the engines move the universe around it.
https://www.youtube.com/watch?v=1RtMMupdOC4
Я вообще-то тому анону, который вопросы задает и отвечаю с примерами) Оп, иди поспи.
Не за что, обращайся.
Вспоминая баги, что я видел за 25 лет игр, полагаю, что именно так и делалось большинство катсцен. На это явно намекают баги, когда ракурс меняется, а управление игроку не отдаётся нормально. Ну или пререндер сцены, как в каком-нибудь вове.
>и функций типо иди на лево столько-то шагов
Зачем, если можно заанимировать через animation player? Через него можно анимировать все свойства нод.
А как еще-то? Та же сцена, только с заготовленным инпутом - самое простое решение.
В топе чего?
Те, кем ты мечтаешь стать.
Придумывает за что еще попросить донаты
Что они делают на GDC? Донаты просят?
3 попрошайки с самодельным движком на серьезном мероприятии. Кринжово.
У всех фирмы, кроме самоделочников.
У самоделочников все делается, как велит сердце. А у фирм строгий план и следование стандартам iso.
Расскажи какой проект делаешь, скажу проблемные места и посоветую более подходящий движок при случае.
Не уклоняйся от ответа.
А я б вот тоже послушал. Меня интересует, насколько реально писать на нем непростой ИИ для стратежек например, сетевой код для шутеров и что там с мультиплатформой на практике.
Зависит от сложности проекта и величины команды. Пишешь основные состояния поведения, саму логику можно дать на откуп дизайнерам или кто у вас там будет самой логикой заниматься. Заму FSM пусть делают на нодах, если им привычнее.
https://docs.godotengine.org/en/3.0/_images/engine_design_fsm_plugin.png
Пример сетевого шутера где-то вроде был в ассетах, можно оценить сложность. Если mmo пилишь или социалочку, то как и на других движках будешь улезать в низкоуровневое на native. Если есть бюджеты на красивости для шутера, то лучше взять UE4, он под него лучше заточен из коробки.
Мультиплатформа работает, не проверял много только на маке и айфоне.
>Меня интересует, насколько реально писать на нем непростой ИИ для стратежек например, сетевой код для шутеров и что там с мультиплатформой на практике.
>насколько реально
нереально
Открой список багов на github. И вскукареки хуана, что это все нвидиа, годот ахуенный.
Поддержка мульты требует постоянных больших усилий, для этого нужен целый штат программистов, которые никаких фич добавлять не будут, а только поддерживать мульту.
Почему мои проекты работают на винде, лине и андроиде и никаких вылетов тогда? Усилий к этому никаких особо не прилагаю.
То есть несколько страниц issues на github написали ненавистники годот/тролли/вруны или как вы еще их можете называть? Забавное мировозрение.
Пакеты вручную носить? Ебанат, ты вообще ничего не знаешь о разработке, поддерживать мульту он будет, охуеть вообще.
Тут больше вопрос к производительности, если вообще есть смысл писать ИИ инструментами движка, а не отдельно на натив подкидывать.
Юнити с его шарпом и моно это совершенно не вариант для иоса, учитывая какие там костыли используются. Плюс, мне нужно норм 2д, а не 3д подрезанное.
Я пишу только про себя. А таких багов на любом движке есть до хрена. Просто в закрытых ты всего этого не видишь, потому что это все уходит в техподдержку.
>>67731
Да, ИИ вполне себе хорошо пишется средствами движка без натива. Вот сложные алгоритмы поиска путей для кучи юнитов в RTS уже надо тестировать, возможно их уже стоит и в нативе писать и дергать из скриптов.
Если тебе в 2D то зачем вообще 3D движками заморачиваться. Бери cocos, oxigyne, love2D
>А таких багов на любом движке есть до хрена.
Но у крупных комдвижков есть ресурсы их исправлять. Ты по диагонали читаешь?
Подходит, зависит от твоего проекта и команды. Но можно взять движки изначально заточенные под 2D.
Давайте просто игнорировать высеры тупых школьников, а не отвечать им, раз уж модеры все равно не чистят вилкой от таких.
Звучит как "пиши свой низкоуровневый движок". Хм, а он пиксельный? А если я не хочу всю картинку перекрашивать, а по-материально?
Третий тред подряд прошу об этом анончиков.
>Как в годоте с цветокоррекцией?
Ну, цветокоррекцию там видно сразу, как только первый меш на сцену положишь.
Он отображается синюшным, хотя альбедо у него белое.
Вопрос, является ли цветокоррекцией эта цветокоррекция?
Как получить доступ к настройкам этой цветокоррекции и сделать дефолтный куб белым?
Ответ прост: в настройках окружения. Этого достичь можно двумя путями. 1. Если не планируется динамически менять цветосветовые настройки окружения, то просто щелкаем двойным щелчком мыши файл default_env.tres в корне папки проекта и в инспекторе отразятся все его свойства, где можно вдоволь насладиться возможностями цветокоррекции. Нас интересуют свойства (ambient light, tonemap, exposure) и т.п. 2. Если по задумке игры планируется часто менять окружение, например, входить в пещеры, выходить из них в подземелья фортов, затем подниматься в сами форты, потом снова выходить на улицу, а на улице уже дождь пошёл, пока ты исследовал пещеры, то тогда нужно создать несколько таких файлов. И этот файл-ресурс подгружается в камеру, у ней есть специальное свойство, на пикрелейтеде я показал, как в камеру загрузить дефолтный файл.
Ещё пример: можно сделать файл-окружение с настройками вида под водой, сделать воду, состоящую из меша с поверхностью и Area у которой 1) гравитация настроена на выталкивание объектов, 2) при попадании в неё объекта-камеры, она присваивает Environment камеры наш "подводный" файл, при выходе камеры - возвращает ей тот файл, что установлен текущей сценой/картой/уровнем.
Анончик, может ты знаешь. Утрированный пример: есть у меня город, а в нем автобусные остановки. На весь город я кидаю систему частиц с каким-нибудь снегом, но они проникают сковзь все. Как оптимальнее сделать так, чтобы частицы не проникали в какие-то зоны? Только через шейдерную систему частиц? Или есть все же хитрый способ.
Я даже согласен съесть шляпу и признать, что в принципе на современных технологиях такое возможно, но в Годоте вроде пока нет, если не навасянишь сам.
https://www.youtube.com/watch?v=8Q77OlffvfQ
Ну я и писала, что через шейдерную систему частиц, а не через обычную, хотя может через шейдерный материал еще. Ладно, спасибо, видимо нет простого способа пока, буду этот пилить.
Но ведь
>These nodes do particle processing using the CPU (and draw using the MultiMesh API). They are quite efficient for lesser amounts of particles and work on all hardware. Additionally, these nodes open the window for adding features such as physics interaction, sub-emitters or manual emission
>physics interaction
https://godotengine.org/article/godot-3-1-released#cpu-particles
>these nodes open the window for adding features
Ну, открыли окно. Теперь надо подождать пока кто-то сделает большой шаг вперед.
Не поверишь, но у юнити список issues в десятки раз больше, просто он не в публичном доступе.
Чем бебистее фейс - тем легендарнее игры. Тяночки не дают - сидишь и делаешь игры одной рукой.
Ей, я уже ей помогаю!
Да какая разница сколько снежинок, просто метод подскажи как ограничить партиклы в какой-то области.
Тут может не знаю, разрабатывалась сто лет назад на сайте геймдев игра хруст снега, вот там как раз через шейдер создавали такие частицы и через пересечения и нормали прерывали падение и оставляли след вроде еще.
Так что если метода нет в движке пока такого, то буду этот способ пользовать.
>через шейдер создавали такие частицы и через пересечения и нормали прерывали падение и оставляли след вроде еще
Дай ссылку, плиз. Звучит, как годнота!
Так партиклы шейдерами это вообще отказаться от системы партиклов годота. Зачем тогда спрашивать?
Не, пока ничего не вышло. Там была настройка Visibility AABB но она как-то ни на что не повлияла. Видимо, все таки шейдер.
Если надо до усрачки и только над одним навесом остановки уменьшить, то я бы сделал в лоб - разделил на несколько эмиттеров, и подобрал в средней части параметры чтобы сыпалось короче.
Ну к сожалению в проекте там особо не разделишь, потому что таких мест будет много: дома, навесы и прочее, да и конкретной привязки их нет, чтобы дизайнеров таким обременять.
https://habr.com/ru/post/259255/
Ты так говоришь, будто современные эрпогэ не фёст-пёсн. Чем любой современный НЕшутер отличается от шутера? Просто интерфейс сложнее. В шутере надо только аптечки и патроны подбирать, а в эрпогэ еще есть диалоги, прокачка, лут и крафт.
Хм.. Статья знакомая, но перечитав, появилась одна мысль, завтра попробую реализовать. Спасибо.
То, что называешь соврепенным эрпоге - это тот же экшон, только с чуть большим количеством рукопашных драк и еще парой механик.
> всегда перпендикулярно экрану
А если в фпс посмотреть вверх? А если проверю?
>>67830
То что ты называешь олдскульным рпг - тот же тайкун, только с чуть большим количеством таблиц и ещё парой механик.
>>67829
>появилась одна мысль, завтра попробую реализовать
Запихнуть листинги шейдеров в годотовский шейдерматериал?
>> Запихнуть листинги шейдеров в годотовский шейдерматериал?
нет, обойтись вообще без шейдеров, проверю насколько идея жизнеспособна, ночью как раз обмозгую еще, пока засыпать буду
https://www.youtube.com/watch?v=LdtzBs73fTw
Есть такое подозрение)
Вот ещё костыльный вариант, нашёл по форумам.
Для остановок не годится, а для многоэтажек может подойти.
Суть на пикрелейтеде. Описываем плоский меш произвольной формы в любом тридэредакторе. Импортируем меш в годот. Нажимаем кнопачку на пикрелейтеде. Получаем результат: осадки выпадают из эмиттера сложной формы, соответственно в местах, где стоят дома, частицы не излучаются. Однако если добавить смещение (ветер), то всё это тоже будет с артефактами.
1920x1080, 0:31
Надо просто брать и делать мозговой штурм. Всё равно подберёшь вменяемый вариант.
Вон, я три дня бился только над траекторией вокруг планеты. А там в итоге всего несколько ифов и одна система уравнений. Перекопал тригонометрию, системы координат, полез в геодезию. А всё в итоге решилось сидением с листком бумаги и рассуждением логически с последующими записями на бумаге.
Просто не в первый раз сталкиваюсь с таким.
Когда-то пилил на юнити сцену игрового стола. Тоже всё решилось вариантом "хорошо посидеть и пораскинуть мозгами на предмет вариантов".
Правда почитав тебя, немного ужаснулся, т.к. частицы тоже хочу.
Да, еще если придется пускать снег на крыше, то тоже не пройдет такой вариант.
В принципе, менее костыльный вариант, это если сцена не меняется и все такие здания - статическая геометрия, то после создания из сцены получить текстуру с картой высот и от нее уже создавать. Но тоже ни ветра ни изменения какого-то.
Никто не прислал pull request. Вот редиски. Хуан же запланировал, а никто бесплатно не сделал.
Оправдания. Просто Хуану неудобно говорить, что все попытки реализовать частицы с физоном дичайше тормозят.
>>67937
Вот тебе инструкция по сериализации объектов на примере сейвов. Но ты можешь использовать общий принцип для чего угодно.
https://docs.godotengine.org/ru/latest/tutorials/io/saving_games.html
Мне вообще попадалось объяснение, что они бы сделали на глес3/вулкане, но им же пришлось глес2 для инвалидов добавлять, а не нем не получится компьют шейдер.
Нихуя не понял в чем наебался, но починил уже. Засунул в словарь просто строку к текстуре и сделал load с этой строкой на стадии обновления инвентаря.
Указал в в поле экспорта Release путь до файла хранилица, в поле username указал zalupagame, в поле пароль zalupapassword. И при экспорте появляется ошибка jarsigner' returned with error #1.
Нихуя не понимаю, что делать. Анончик, подскажи
В продолжении вчерашней темы про дождь/снег. Вот собственно это сделано, что требуется, но человек не хочет делиться способом как реализовал. Буду дальше мозгоштурмить.
https://twitter.com/0nepixel/status/1099459459972120576
Там проблема с дебаг версией, а у меня с ней все норм. Кидает ошибку только если начать экспортировать релизную
Но все равно попробую, что там написали. Спасибо
в unity делается простой настройкой частиц
Это только начало, дружок.
Шейдер чего? Проверки коллизий?
Вангую, что там шейдер чекает цвет канвы в точке отрисовки, и если цвет != черный, то отрисовывает попадание капли на поверхность.
Если так, то для триде это не годится.
да ладно даже в юнити можно это на коленке сделать. можно рендерить з-буффер ортогональной камерой и рендерить капельки туда где рендерит.
В любом случае, не вижу сейчас способа сделать это по другому.
Как пишет анон >>67848 ты можешь создать меш, который излучает.
То есть логика такая - ты хочешь получить зоны, в которых НЕ излучается. Но тебе доступны только зоны, в которых излучается.
Значит, ты можешь написать утилиту. Дизайнеры рисуют зоны, где снег не идет. Или назначают какой-то материал. Пофиг какой.
Твой инструмент или скрипт перед запуском создает меш-инверсию. То есть вычитает из полного объема уровня помеченные меши.
https://twitter.com/Wesnoth/status/1108435946205134848
А бы сказал, но тут за это банят.
Тащемта, если wesnoth перенесут на годот, то это будет пруфом того, что он пригоден для разработки полноценных игр, как минимум в 2д. Ибо там достаточно всего - много геймплейной логики, прокачка юнитов, боевка, ИИ противника, плюс игра по сети есть.
А какая у вестнота архитектура? Если как в FreeCiv, то это не будет пруфом вообще ничего. Потому что там бэкенд логики отдельно. Если там будет просто рендер на годоте - вообще ни о чем.
Эта хуйня умеет выводить спрайты и в ней есть скриптовый язык. Разумеется на ней можно сделать игру. Вопрос лишь в том, нужно ли это делать и стоит ли игра свеч? нет
Без понятия, можешь сам посмотреть, опенсорс же.
https://github.com/wesnoth/wesnoth
Но как я понял из комментов в твиттере, они хотят полностью портировать с С++ на годот, не только рендер.
>>68026
Ну, разработчики веснота видимо считают иначе, раз решили портировать. Я не думаю, что они совсем дебилы, все-таки смогли сделать такой масштабный проект, при этом довольно качественный для опенсорса. Раз пробуют - значит, на то есть причины и годот может дать какой-то профит.
>они хотят полностью портировать с С++ на годот
Надо чтобы им кто то сказал, что там и на C++ все работает.
>Раз пробуют - значит, на то есть причины и годот может дать какой-то профит.
Например пеар.
>Например пеар.
Ты серьезно? Зачем это некоммерческому проекту, у которого и так на стиме пол миллиона игроков?
>пруфом того, что он пригоден для разработки полноценных игр, как минимум в 2д
Кто-то сомневался? Меня больше напрягают перспективы и странный способ разработки Хуана
Ну я тоже на юнити смотрел как на странного звверька до выхода HS. Хотя даже то, что это близзы были не спасало игру от каких-то дурных багов первые года 1,5 даже после релиза. Например, когда все текстуры объектов начинало пидорасить непонятно как, что те временами вытягивались в сторону камеры. Пофиксили же. Теперь юнити только ленивый не хвалит. А года через 4 и Хуан, думаю, немало вещей запилит. Надо всго несколько популярных релизов на годоте и он пойдёт развиваться с нарастающей скоростью.
>>68028
Странно, что они решили ее еще куда-то переносить, хотя там по сути уже все готово, только допиливать контент.
>>67979
Это -да, но это все равно не решает проблему изменения угла падения осадков.
>>67975
Если такой, то точно не подходит)
>>67974
АГа, не вижу причин скрывать такое. Что ты такой хмурый)
>Кто-то сомневался?
Залетные юнитеки вон сомневаются.
>Меня больше напрягают перспективы и странный способ разработки Хуана
Есть такое, я уже не верю, что однажды годот сможет потягаться с тем же уечем на поле 3д.
Но для 2д его можно считать вполне полноценным и пригодным к использованию, как статтеры починят
>https://packages.debian.org/stretch/all/wesnoth-1.12-data/filelist
Это движок, который скриптуется lua. При переносе они и lua-машину сделают в godot?
Странное решение, в чем выгода?
>Странно, что они решили ее еще куда-то переносить
Могли напороться на труднопреодолимую проблему.
Народ, а помогите по дельте.
Я же правильно понимаю?
Есть тележка, едет со скоростью v=2 м/с.
Расстояние она пройдёт за s += v x t x delta = 2 м, если func _process(delta): будет происходить секунду?
>При переносе они и lua-машину сделают в godot?
Либо так (ибо годот открыт и новые языки/среды исполнения прикручиваются только в путь, как показал тот японец с тайпскриптом), ибо перепишут на gdscript.
Выгода? Может, legacy код начал мешать жить, а рефакторить уже тяжко, проекту ведь лет 15, если не больше. Может, что-нибудь с кросс-платформой, у них там полно низкоуровневого кода, который надо поддерживать и допиливать время от времени, чтобы всё работало четко и на линуксе, и под шином, может хотят переложить это на движок и сосредоточиться на игре.
>Есть такое, я уже не верю, что однажды годот сможет потягаться с тем же уечем на поле 3д.
Мало кто сможет.
>если func _process(delta): будет происходить секунду?
В смысле сколько-то раз, но в рамках 1 секунды.
fix
в _process_physic() привязываешься к реальному времени
Так оно там уже лет 10 работает на платформах и отлажено. Там SDL2, который не они все равно допиливают для переноса на другие платформы.
>Либо так (ибо годот открыт и новые языки/среды исполнения прикручиваются только в путь, как показал тот японец с тайпскриптом), ибо перепишут на gdscript.
И снова все отлаживать.
Ну хуй знает, остается только ждать дальнейшего развития событий, они обещали написать о причинах перехода.
На самом деле - звучит как какой-то сюр, портировать стабильный проект на годот в тот момент, когда активная разработка уже завершена и идет насыщение дополнительными фичами - это странно.
Это как если открываешь новости, а там пишут, что Кодзима решил перепилить свой death stranding на годот, поэтому в ближайшие лет пять релиза ждать не стоит.
>и новые языки/среды исполнения прикручиваются только в путь,
https://docs.godotengine.org/en/3.0/getting_started/scripting/gdscript/gdscript_basics.html
>In the early days, the engine used the Lua scripting language. Lua is fast, but creating bindings to an object oriented system (by using fallbacks) was complex and slow and took an enormous amount of code. After some experiments with Python, it also proved difficult to embed.
>>68054
Так это Хуан просто велосипедист, он не может нормально работать с чужим кодом. Представь, сколько времени и сил было потрачено на тот же ебучий текстовый редактор внутри годота, который в итоге все равно сосёт у какого-нибудь visual studio code по всем параметрам?
Любой нормальный человек спросит, а почему бы не использовать сторонний текстовый редактор, в котором есть миллион фич и плагинов, им пользуется куча народа, все к нему привыкли, тем более - он бесплатный. Надо только запилить плагин для подсветки и автокомплита, что не так уж и сложно.
Но у Хуана не возникало такого вопроса, он вместо фикса багов и доработки движка готов тратить месяцы на разработку текстового редактора с нуля, пусть хуёвого, кривого, с функционалом блокнота из windows 98, но зато своего. Вот и с gdscript та же история. Медленно, ага. Угадай, кто соснет, если бенчмаркать luajit и gdscript.
В команде веснота достаточно нормальных сишников, которые луа тебе куда угодно заэмбеддят, и всё это будет летать быстрее некуда.
По частицам и остановкам идеален был бы вариант, чтобы в ноде Area/Area2D была опция absorb_particles и просто загородить этой площадью все остановки, дома, и все частицы вне зависимости от смещения по осям просто пропадали бы, поглощаяясь этими площадками.
Хуан, сделай!
Кстати, непонятно почему Хуан описал, что они отказались после исследования от луа и питона и написали свой. Что оно дало - непонятно. Многопоточность реальная там вряд ли есть в gdscript, строгая типизация - ну ок, но тоже не повод отказываться от луа.
Да хотя бы просто в пайплайн бы запили возможность вписывать в уже готовый функционал шейдеров compute и этого бы уже хватило для начала, это вот делается неболшим дополнением в код, но это не плуреквестят, поэтому многие пока сами себе вписывают и компилят движ.
>>68058
ну с luajit пока еще никто не сравнится)
>Что оно дало - непонятно.
Хуан кончил несколько раз, дроча на свой код - точно так же, как и со своим редактором кода, своей самописной физикой, своим личным классом для работы со строками, своей кросс-платформенной абстракцией вместо стандарта индустрии в лице SDL.
Ты забыл два визуальных 3д редактора.
>поэтому многие пока сами себе вписывают и компилят движ
Так и знал, что рано или поздно мы в это окунёмся. Пришло время скомпилировать движок.
>для 2д его можно считать вполне полноценным и пригодным к использованию
>как статтеры починят
Даже самые упоротые лизуны рыжей волосатой жопы Хуана соглашаются что годот неюзабельное говно
>это будет пруфом того, что он пригоден для разработки полноценных игр
Первый пруф будет за 3 года разработки годота, неплохо.
Интересно, сколько им еще времени понадобиться, чтобы наконец-то осознать что годот это движок без перспектив и они просто тратят на него свое время: месяц, год?
В любом случае конечный результат будет неизбежным: все ИТТ пожалеют о потраченном времени и начнут учить уже другой движок.
А это не пруф?
>Игры, созданные глобальными кириллами: https://godotengine.org/showcase или https://steamcommunity.com/app/404790/discussions/0/412448792354265655/
Сейчас разбираюсь в архитектуре, читаю код на гитхабе. Если мысли уже на пару реквестов, хотя может еще не до конца понимаю задумку, к выходным, наверное, управлюсь. Многое кажется странным, да, и это с учетом того, что движок сначала использовался как внутренний в компании у них.
>Если мысли уже на пару реквестов,
Тебя на хую провернут, Хуан не допускает мимо-крокодилов к разработке новых фич, максимум можешь пофиксить какой-нибудь старый баг. Весь новый код может писать только Хуан.
Раз ты не в состоянии отличить полноценную игру от неполноценной что неудивительно для пониеба, то решать придется мне, да.
Так как у нас тред про годот, то могу сказать только то что игры сделанные на этом движке - неполноценные.
молодец, ваше мнение всем очень важно, а теперь ложитесь спать, завтра рано в школу
О, завтра гляну что там 3д умеет.
Я не он, но скажу, что применительно к годоту можно ввести один простой критерий - полноценная игры это игры выше уровнем чем "васян сделал на коленке за неделю."
По какой-то странной причине на божественном аналоговнет годоте таких игр нет.
Даже в том шоукейсе из шапки все игры это именно такой мусор, который было бы стыдно показать даже на недельном геймджеме.
Вас самих не удивляет, что это главный вопрос, который вам все задают и почему его на задают по отношению к другим движкам?
Ни на какие мысли такая странность не наводит?
>Ни на какие мысли такая странность не наводит?
Наводит на мысль, что на Годоте можно делать действительно хорошую игру, как ты верно заметил, на за неделю. А например за год-за два. Oh wait, 3д только год назад появилось. Значит и игры не за горами.
Собственно по ссылке выше привели студию, которая на нем игру 3D и писала. Также описывает с чем столкнулась во время разработки.
https://github.com/touilleMan/godot-python Python support for Godot. Неофициальный, официально "python - proved difficult to embed"
Надежда, что godot кто-нибудь форкнет.
>Значит и игры не за горами
>Игр полно
Лол.
Я-то уже успел подумать, что встретил среди фанатиков адеквата, но нет, похоже у него просто мозг на секунду включился, но затем сразу же включилась привычная мантра, выключая сознание.
Надо было указывать -keypass и -storepass одинаковыми. Вот почему выскакивала jarsigner' returned with error #1. ЭТО ЖЕ ОЧЕВИДНО
Ладно хоть я увидел, что годот можно запустить с ключом -d, там нормально было написано, что с паролем какая-то хуйня
Даун, притом, что у хуана низкая квалификация, а выбоны как у кармака.
Я про смену команды, с хуановской командой будет "мы доказали, что это очень трудно, потому в годот не будет, пишем свой велосипед"
Это у годотовцев называется игра?
А я думал это видео где какой-то хер стоит в школьной аудитории и уныло о чём-то пиздит.
Ладно ладно, не изображай из себя мегамозг. Я, не без труда, науглил этот Интерпид.
Оказалось, что это стандартный Эскейп зе рум, коих несколько миллионов на флэше, на который натянули какие-то 3д модельки уровня ассетов юнити. Этот хуй, понимая какое же это неполноценное говно, даже денег за него постеснялся просить и раздаёт в стиме бесплатно.
То есть он ещё и заплатил стиму, чтобы вы могли в треде говорить, что ОДНА ИГРА ЕСТЬ.
Ну поздравляю, у вас теперь есть ОДНА игра.
Такую на юнити можно сделать за дня два, может быть три если будет очень лень.
Лучше уж продолжайте Самосбором Ребелион себя характеризовать, это хотя бы не так стыдно. Там хоть постиронией можно попробовать оправдаться.
От дошика желудок побаливал.
Каждого персонажа нужно создавать как отдельную сцену, если делать их локальными, то файл с парой персонажей будет весить чуть ли не гигабайт.
Тут показано куда что крутить, чтобы настроить персонаж. Делать как в видео не надо, это для тех, кто хочет вырезать лишние ключи формы, но там показано, где настройки персонажа. https://www.youtube.com/watch?v=cPVjNh2Ki4I
Лицензия свободна в том числе для коммерческого использования как и самого MakeHuman с моделями.
Так вопрос всегда один - если это такой лучший в мире движок, то где хоть одна полноценная игра?
Смешно конечно когда вы виляете, говоря что годот это прежде всего 3Д, а 2Д там лишь для галочки, поэтому полноценных 2Д игр нет, но при этом когда спрашиваешь про 3Д игры, выясняется что оказывается-то 3Д завезли всего год назад и 3Д игр оказывается тоже нет.
Но давай смех и виляния отложим в сторону и ты покажешь действительно полноценнуюпо твоим критериям игру на годоте. Не важно сколько Д, пусть это будет даже пиксельная параша.
Но ты сможешь сказать, что вот он, флагман мира Годот, вот она полноценная игра на лучшем в мире движке.
>если это такой лучший в мире движок
Не лучший в мире, а неимеющий аналогов, лучший в своей нише.
Удваиваю. На что они вообще рассчитывают, эти гордые русичи? Пилить игоры на языке 1С?
>дополняет КинематическоеТело
>функц _готов():
>>перем движ = Вектор2()
>>если Ввод.а_действие_то("пи_влево"): движ.ю = -1
>>если Ввод.а_действие_то("пи_вправо"): движ.ю = 1
>>если Ввод.а_действие_ваще("пи_вверх"): движ.э = -1
>>движ = двигаться_и_скользить(Вектор2(0, 1), движ)
Омерзительно! Это... Омерзительно!webm
Сударь, разрешите добавить вас в шапку следующего треда?
https://www.youtube.com/watch?v=5uosiSeCs64
В том видосе от ноября 2017 года чел сказал, что есть книга от авторов Годот.
А твоя от 2018.
Есть книга по godot 2, она уже переведена, но смысла в ней мало, т.к. вторую версию движка лучше уже не использовать.
Во второй версии триде в зачаточном состоянии. Организация нод немного другая, нет того, что нужно и есть в 3х. Придётся изобретать много велосипедов.
В целом версия 2х осталась в нулевых.
А Ксенко по графике Годот когда догонит?
Xenko is just like XNA, and does Sprite Batching like DirectX, which is all better than Godot for my game."
А что Годот так плох, да?
Только не говори, что Вулкан лучше ДиректХ12
В годоте есть батчинг, хуй знает что этот хуй несет.
Rastering is done via another opaque interface, Rasterizer, which, in Godot 3.0, was further optimized to take batches of objects instead of having to call one by one to render (which hurts performance).
Каким образом повтор поста какого-то неосилятора, не разобравшегося как работает годот, или вообще платного пиарщика, из какого то левого репозитория, что-то пруфает? Я скинул текст из документации годота, батчинг есть.
Имеется в виду scene graph. В xenko просто immediate mode, где ты вызываешь функции отрисовки спрайта в нужном месте, а в годоте тебе надо создать объекты спрайтов и настроить их, лишняя абстракция усложняющая простые игры.
>> В xenko просто immediate mode, где ты вызываешь функции отрисовки спрайта в нужном месте
Для слабых устройств это затратнее и жрет больше батарейку.
Ок, так и запишем, что лучшая и единственная игра на ГОДОТ по мнению годот сообщества, сделана на Моай.
Пиздец платформ
Ну не подходит тебе годот, ну не бери ты его, что ты такой тупой-то, а? Иди в тред юнити и обсуждай там.
Нихуя, я кинул ссылку на steam, чтобы отвязались. broken age появился через 4 года после публикации моай. У годота еще 4 года не прошло.
То есть ты этим согласился, что на годоте игр всё-таки нет и появятся только спустя 4 года после его публикации?
1) occlusion culling
Оно всегда работает, когда просто кидаешь камеру?
2) threads
когда в скриптах делаем var thread = Thread.new() и все такое прочее, то как оно под капотом работает: участок кода скрипта в самом движке на c++ кидает в параллельные потоки, или оно как корутины в Lua работает?
>Ну не подходит тебе годот, ну не бери ты его
А кому годот подходит? Если на годоте нет ни одной игры... он не подходит никому.
Очевидно тех, кто, например, сидит в этом треде.
Вот, обмажься играми и вали уже, больше тебя кормить не буду и так жирный и зеленый, чего и другим советую просто игнорировать это обиженное жизнью существо.
https://godotengine.org/showcase
https://gist.github.com/paulloz/2966cb9c674146d0a1ba44899ac6ab4f
https://www.youtube.com/watch?v=q9C4FgvxNYw
А для тех кто сидит в уечетреде подходит уеч, ага. А вы сидите в этом треде потому что делаете коммерческий проект на годоте, а не просто маетесь хуитой передвигая кубики
>бегая по доске с горящей жопой
Но я не бегаю по доске, я захожу в годотред унижать безыгорных уебков сознательно севших на стул с хуями дрочеными от Хуана.
Но ты сам безыгорный уебок, кому вообще не похуй на твои слова.
> А для тех кто сидит в уечетреде подходит уеч, ага.
Ну да. А зачем еще заходить в тред своего движка?
> А вы сидите в этом треде потому что делаете коммерческий проект на годоте
А причем тут коммерция?
З.ы. в 3.2 будет динамическая система порталов для интерьеров и репроекция z-buffer на следующий кадр для открытых пространств.
Нет, ничего не определяет, есть только frustrum culling, чтобы не рендерить что за спиной (не попадает в угол обзора камеры). Но если у тебя объекты за стеной они все равно рендерятся.
>А зачем еще заходить в тред своего движка?
Воображать себя игроделом, очевидно же. 99% уечедебилов - это шкальники, которые выбрали уеч из-за блюпринтов. У них даже в уме не укладывается идея выучить программирование. Нет, они стараются найти такое решение, чтобы игра как-то тама сама по себе сделалась, где не нужно прилагать никаких усилий.
Такие ролевые игры в разработчика. Не знаю зачем вы это делаете. Только серите в моем /gd/ ей богу.
Хреново. А можешь подсказать участок кода, где это есть. Может можно подменить своим вариантом.
Изучи класс Performance.
Это синглтон, то есть ты просто обращаешься к нему из любого скрипта.
>>68287
>>68285
https://docs.godotengine.org/ru/latest/classes/class_performance.html
>print(Performance.get_monitor(Performance.TIME_FPS)) # Prints the FPS to the console
Так напиши разработчику, пусть исправит.
В том, что вниманиеблядям с галкой вообще не стоит доверять.
Посмотрел результаты, абсолютно одинаковую информацию выдают.
Нахуя, и так донатят.
Вероятно, автор сбежал из ОБР треда политача просто.
Ты напишешь ему?
Почему "как"
Не можно, ты ебанутый что ли? Если бы был один участок кода, где это можно было бы легко впилить, Хуана бы давно завалили пулл реквестами. Тебе придется перелопачивать лапшу из десятков файлов из многих тысяч строк, лучше просто забей и не лезь в исходники этой параши.
Одни не хотят, другие развиваются, но ты хочешь чтобы они тоже сдохли.
Но грамматически то все правильно, епт. На вопрос то ответьте пожалуйста, мистер.
Не используйте GLES3.
Жди бэкенд на вулкане, ибо что gles2, что gles3 - для десктопа хуйня собачья и то и то, запиленное ради общей кодовой базы с мобилками и поэтому закрывающее годоту путь в качественный графоний уровня анрила.
Глес2 добавлен совсем недавго, глючный и к тому же временный, значит его особо поддерживать не будут.
>что gles2, что gles3 - для десктопа хуйня собачья и то и то, запиленное ради общей кодовой базы с мобилками
Блять, я и забыл об этом. А ведь действительно. А мы тут весь день обсуждаем, как зделоть снег из частиц не пролетающий сквозь крыши.
Если бы gles2 был запилем так же качественно как 3, то без вопросов его. А сейчас у тебя два стула: хреново запиленная двойка, но идет под большим количеством устройств и без таких шейдерных шейдеров, либо тройка более стабильная, но устройств меньше, т.к. старые мобилки отсекаешь.
>Если бы gles2 был запилем так же качественно как 3
Зря Хуан полез глес2 пилить. Один хуй таким как ты не угодишь. Не было 2ки - хуёво. Есть 2ка - хуёво, недоделано.
У меня пекарня 10-летней давности, еще какая разница. gles3 разогревает комп до 90 градусов цельсия.
>>68393
Хуево было релизить 3.1 в данный момент времени, с недоделанным рендером. Но судя по обилию фоточек с конференций, теперь все понятно. Тысячи кириллов будут епаться с багами глес, потому что Хуану хотелось покататься по миру.
>У меня пекарня 10-летней давности, еще какая разница. gles3 разогревает комп до 90 градусов цельсия.
Окей, значит буду креститься и на 2-ке пелить.
Мне угождать не надо, просто говорю как есть. Это естественно, что gles3 пилят с основания движка и там все пофикшено более-менее, а второй только запилили и еще не обкатан.
>>68396
Если пилишь под десктоп, то особо никакой. Даже мой некроноут имеет gl 3.3, так что можешь спокойно и третий брать, ничего он там не греет на компах. Второй может даже больше будет, т.к. отрисовывает эти ваши модельки/спрайты через begin/end в опенджиэлях, а не через буфферы.
>gles3 пилят с основания движка
лол. gles 3 Хуан пилил для годота 3. А потом охуел от того говна что получилось, и стал пилить gles 2 обратно с нуля(!).
Глес3 получился замечательным.
Но мир не совершенен и его недостаточно для заявленных движком устройств.
Да это просто в драйверы баги добавили чтобы замечательный открытый движок дискредитировать.
>охуел от того говна что получилось
Получилось не говно, картинка довольно крутая, я тестил на пизженных модельках, но производительность говно, тут он обосрался по полной как мудак.
Нет, тыковка, просто у Хуана нет цели переписать андроид на всей планете и вставить всем в старый мобильник gtx2080 чтобы в нем появился глес3.
У Хуана не сдельная работа - сделал фичи, получил за фичи бабло. А ставка - хуан спит, а деньги идут.
Порнотред не читал?
Это, конечно, пиздеж, потому что сообщество может перестать донатить, а значит над Хуаном постоянно висит этот домоклов меч, который его подгоняет
>висит этот домоклов меч, который его подгоняет
Который его подгоняет растягивать работу и пиздеть как все сложно.
Да-да, это только в порнотреде одни уебки, наебывающие патронов, а хуан не такой.
У фанатиков всегда так - наша хуйня не такая, как похожие хуйни, а получше; наш лидер не такой, как другие лидеры, а лучше; мы сами не такие, как остальные.
>сообщество может перестать донатить,
Уже на github в подписях к issue пишут "i am patron". Не помогает.
>Уже на github в подписях к issue пишут "i am patron". Не помогает
Пусть не донатят, что вы за пидарахи ебанутые? Вы годами будете здесь сидеть и постить каждый день одну и ту же хуйню, как кто-то кому-то донатит, кто-то что-то ленится.
>который его подгоняет
ничего не делать. если Хуан сделает новый рендер за месяц, что он будет делать все следующие месяцы? Вот и растягивает простые задачи на год, вот он и велосипедит, вот он и переписывает одно и то же по десятку раз.
Патреон для разработки мотивирует растягивать работу и имитировать ее деятельность. Если ты донатишь на патреон за разработку - то ты дегенерат.
Причем тут пидарахи, шизик? Неприятно осозновать что Хуан это на самом деле заурядный кидала, а годот - бесперспективное говно без задач, да?
Хуя ты себе там построил воздушные замки.
>если Хуан сделает новый рендер за месяц, что он будет делать все следующие месяцы?
Ну во-первых, ты пишешь хуйню, по такой логике можно топ двиг за год в одно рыло написать.
Во-вторых, если люди видят, что хуан медленно делает и растягивают, пусть просто перестанут донатить. Не перестают, значит им нормально, отчего бомбежка то, пидрила? Он может вообще ничего не делать, написать в твиттер я перестаю, и все равно могут найтись люди которые продолжать донатить за красивые глаза и душу хуана, что ты рвешься то от этого?
>>68447
>Если ты донатишь на патреон за разработку - то ты дегенерат.
Ну и пусть, и притухни.
>>68449
> а годот - бесперспективное говно без задач, да?
Ну люди донатят, им нравится юзать годот, это ты себе что-то придумал.
>Пусть не донатят
Как показывает практика, это не так работает. Люди все равно будут донатить, писать в подписях что они патроны и надеятся на что-то.
Донаты по своей сущности есть явление иррациональное. Донатят на эмоциях, чтобы почуствовать себя частью чего-то. Донаты на патреон в этом смысле ничем не отличаются от донатов на стримах твича.
Я тупой, что не сразу это понял. Конец.
Ну значит, все эти твои вскукареки бесполезны, донатили, донатят, будут донатить и юзать годот.
> Люди учатся только на своих ошибках
Люди разные, не нужно тут всех под одну гребенку.
>Я тупой
Естественно.
Никогда не донатил на годот и не собираюсь. Я в плюсе за счет тех, кто пишет в подписи что он патрон.
уеч
И чем он лучше то, вы ебанутые, такое же говно только на пару лет разработки отстает.
Ну, людям же хочется альтернатив? Вместо того, чтобы игры делать. На Godot.
Так он теоретик же, он не пишет никакой реально используемый софт. А алгоритмы пофиг на чем писать, хоть на машинных кодах.
Ну одно дело писать на таком для анализа данных, прикладного использования лично для себя, для души, вне коммерции.
Мы же находимся на гд, где эту программу ещё другим показать надо, плюс сомневаюсьб, что на такое говно мамонта найдётся лишняя упоротая команда разработчиков (годот не в счёт, у него синтаксис схож с довольно популярным и простым питоном).
А давай их сразу на c++ или посадим, ахуенно же!
Потому-что на питоне сдавать ЕГЭ быстрее всего, да и основы основ усваиваются в нем быстрее, а потом можно и на другой язык переучиться дебич
Основы логических операций and or not, циклов, ветвлений, процедур и функций, ветвлений, а также тренировка всего этого на базовых алгоритмах по типу нахождения простых чисел, работа с различными типами переменных и прочее. А уже в вузе идёт переход на различные юнити с сисярпами и прочую дичь.
чем ближе к железу, тем понятнее.
питон это абсолютнейший говноязык полный магии, который даже опытный сишник не поймет сразу. ньюфагам питон вообще мышление сломает. получатся скриптоинвалиды ничего кроме скриптовых языков неспособные понять.
А если мухосранская школа находится на базе яндекс лицея (зато бесплатно) то к 10 классу там вроде уже идёт уклон в веб, телеграмм боты и подобное.
Просто имел дело со всем этим (нет, не школьник) и узнал, что оказывается не всё так плохо за МКАДом.
имхо это уже лучше чем паскаль
если скриптоинвалид будет гуру в питоне, почему бы и нет, там глядишь переучиться
а в паскале что, if else какие-то другие? учить надо от простого к сложному, а в питоне слишком много хитро выебанных абстракций непонятных школьнику. тут происходит тупо заучивание без понимания принципа работы. это не обучение, а зубрежка
Представь пример такой абстракции, попробую разобраться
Паскаль в школе не учат ещё и потому-что, про него уже забыли и кроме легаси кода у него почти нету применения. Питон принялись учить из-за его популярности среди индусов любителей говнокода, обработки данных, и веба.
Насчёт вопроса почему не взять тот же Си, этого я не знаю. Если мы говорим о с++ или сишарпе, то наверно потому, что среднестатистическому Васе во время ЕГЭ будет быстрее и понятнее набросать говнокода на питоне.
>1
Мне все понятны одинаково, кроме двоичного кода
Хули там непонятного с асмом? Загоняются в регистры номера системных ф-ий и ссылок на строку и syscall.
Хорошо хоть проблем кроме перезапуска не несёт.
годот тоже x64, sytable, если что.
>даже в школах уже пару лет как питон изучают
Дети в школах должны изучать язык 1С. И это нихуя не шутки.
Ну тогда надо было хотя бы язык поприличнее взять, а не этот пистон. Начинать с того же Lua, в универе на си переходить.
win7-64 godot 3.1 тоже такая штука есть, подвисает иногда, хотя ресурсы есть. Есть подозрения на партиклы на шейдерах и материалы через шейдеры. При их отключении вроде перестает подвисать.
ты ещё на инфомате такое посоветуй.
Приходит такой школьник после инфомат школы в вуз на геймдев направление и уже от вида сишарпа или с++ у него в заднем проходе начинают возникать вопросы:
ЯЗЫК ПРОГРАММЕРОВАНЕЯ НА АНГЛЕЙСКОМ???7?
НА НЁМ МОЖНО ДЕЛАТЬ ИГРЫ?77??
Я начинал с С++ в кружке Дворца пионеров. Дома была книжка по Паскалю. Паскаль - отличный язык для обучения, понимания основ программирования, плюсы посложнее.
Некакие питоны и луа брать, естественно, в начале нельзя. После них в голове останется полный фарш, без строгой статической типизации, без понимания что как работает. Лучший способ словить шизу - начать знакомство программирования с какого нибудь джаваскрипта или питона с их отношением к конверсии строк.
Лучше всего начать прогать с констракта.
Ничего страшного, в универе их всё равно переучат. Зато С++ не каждый поймёт (2/3 детей идут в шараги на автомехаников и поваров, а не на вышку), так что pascal и пистон это идеальные компромиссы
Я ещё помню когда в местном ДК микроконтроллерам и прочим няшкам в радиокружке учили, вот там С был и прочее, но из-за кружка РОБОТОСТРОЕНИЯ0))0), где программировали лего копрокубы каким-то аналогом констракта для детей, его закрыли из-за непопулярности .
Теперь понимаешь, что такое массовость?
Меньше, чем пистон
Доков на пистон гораздо больше
Те же нейросети быстрее и удобнее построить на пистоне, а в луа докуменации на это хуй найдёшь
В луа неявная типизация, хуита
Даже в пистоне ооп ближе приближено к языкам си, чем ооп у луа
Пистон это мощный комбайн для прикладного использования, луа же (хотя и питон тоже) в основном встраиваемая для всяких игр, скриптов и прочего.
А сейчас вообще хуй знает, но когда прикасался к луа, что-то там с типизацией было хуёвое
Блин, а в том же пистоне типизация то неявная, но что-то в ней в луа меня оттолкнуло, может бухим был, но уже не помню
Да в луа там все тошнотное, по крайней мере было в 2006 когда я с ним познакомился.
Может сейчас получше, но тогда приходилось писать уморительнейшие портянки, да еще это все без подсветки в IDE.
function num_to_char ( number )
return ( string.char ( math.mod ( math.mod ( number, 256 ) + 256, 256 ) ) )
end
local isok,asname = mappy.fileRequester (".", "Font files (.FIN)", ".fin", mappy.MMB_SAVE)
if isok == mappy.MMB_OK then
if (not (string.sub (string.lower (asname), -4) == ".fin")) then
asname = asname .. ".fin"
end
>> да еще это все без подсветки в IDE
открой для себя zerobrane studio или notepad++, это не говоря про vim и emacs
>ЯЗЫК ПРОГРАММЕРОВАНЕЯ НА АНГЛЕЙСКОМ???7?
Да ладно тебе. Я когда в аспирантуру пришёл (а у нас были безопасники, программисты, математики и прочие около-it), то для всех это был действительно АНГЛЕЙСКИЙ, из 15 человек английский знали только 2 человека (я в их числе), остальным хорошо даже если чтение давалось. Средний уровень группы был чтение по слогам. Что там происходило дальше - хз, после первой пары пришёл только уже на экзамен.
>>68616
И почему я не удивлён.
Когда в каком-то году 2008 у меня на очередном аддоне игры метелицы умер простой аддон с портохами, реши было свой аналог запилить, но луа настолько мне не понравился, что я решил перетерпеть.
В сравнении с ним gdscript просто верх изящества и удобства.
>>68630
Он же написал, что было то в 2k6. Я о npp впервые только году в 2007 услышал.
Алсо вопрос.
А примерный роадмап с примерным временем у годота есть?
На сайте висит
>## Coming Soon.
На гитхабе просто описалово типа
>ну надо сделать это
>А примерный роадмап с примерным временем у годота есть?
Хуан грозился замутить суперрендер от которого суиня заплачет кровавыми слезами.
Не, на 3.0 и 3.1 были сроки, но они на полгодика промахнулись. Дальше должна была быть 3.2, но везде срочно меняют на 4.0. Дай человеку отойти от поездок на конференций, может потом распланирует. Но там будет опять полгода-год.
>но везде срочно меняют на 4.0
Я видел на вики, что он там и вулкан грозился в 4 версии запилить.
Да, да, может я всрато написал. Обещали вулкан в 3.2 версии. Но ее скипают, назовут сразу 4.0.
пиздец.. мне кажется, что движку нужен новый куратор
>в 3.2 версии. Но ее скипают, назовут сразу 4.0.
Вангую, что через год-два годот будет версии 60.0. Скриньте.
print (cos(deg2rad(270)))
Эта конструкция показывает, что значение равно -0 (минус 0).
Wtf?
Это вообще нормально?
Есть Vector3().
Результат вычислений - пикрил.
Условие kek.y == 0 не выполняется после таких вычислений. Если же я ручками сделаю -0 == 0, то условие выполняется. Как так?
Причём такая хуйня происходит при углах 270+/-360.
https://github.com/godotengine/godot/issues/3221
Тут говорят, что -0 - это часть стандарта IEEE, но получается, что в вычислениях -0 и тот -0, который я в условии прописал бы руками - не одно и то же?
Что-то я нумерацию релизов современных браузеров вспомнил.
Floating point math - это не фунт изюма. Это кстати одна из составляющих сложности 3д. Конверти через Math.abs().
>Math.abs()
В смысле? abs(kek.y)?
Такая конструкция не работает. Равно как если и абсолют от радиан или самого угла в 270 градусов. Проверял. Зато вот из тестов выходит, что cos(deg2rad(270)) меньше 0. Ощущение, что в памяти он хранит где-нибудь 30 знаков после запятой, а для вывода на экран до злополучного -0 округляет.
Пока костыль в виде ручной проверки на 270 написал. Чувствую себя болваном.
Спасибо.
Тогда сравнивай с эпсилоном.
https://godotengine.org/qa/16522/problem-comparing-floats
const FLOAT_EPSILON = 0.00001
static func compare_floats(a, b, epsilon = FLOAT_EPSILON):
return abs(a - b) <= epsilon
Это стандартный подход к флоатам.
Да, уже увидел, что это в принципе такая вещь, и годот тут не при чём.
с эпсилоном все сложно, потому что он зависит от размеров самих чисел. Например при твоем эпсилоне все числа < 1e-5 будут равны, что может быть не то что нужно.
По хорошему нужно что-то вроде:
if (fabs(a - b) < epsilon * max(fabs(a), fabs(b)))
А почему у него должен быть хороший перфоманс? Ты в этот говнокод вообще заглядывал на гитхабе? Загляни как-нибудь, чтобы отпали такие вопросы.
Зачем тебе фпс выше 300, лалка? глаз все равно не различает А раз гейммейкер, то это даже не 3д игра.
Аноны, вы что серьёзно не понимаете, что при в 25 раз большей нагрузке, на Gamemaker вы даже не увидете разницы, в то время как на Godot с 12 FPS играть станет совершенно неприемлимо.
Уже был уебок, который делал синтетические тесты с 10k спрайтов. В реальных играх это не нужно.
Что еще за нагрузка, лол? Это игровой движок, а не паровой двигатель. Тут не будет такой линейной зависимости. Алсо мы не знаем что он там бенчмаркил и как. Вообще 2000 фпс звучит как баг подсчета.
А что ты планируешь такого высоконагруженного на годот вешать? Всему свой инструмент. Если индюшатина способна угрузить машину до 12 фпс на таком движке, то это очень большой вопрос, а не загрузит ли она до такого же уровня на каком-нибудь более зрелом движке.
>>68700
>Тут не будет такой линейной зависимости
Из-за всего виденного мной, боюсь, что ситуация может быть хуже, чем линейная, и производительность вообще может по гиперболе падать.
Тебя не учили не делить шкуру не убитого медведя?
Твоя игра на годоте не выстрелит, потому что у тебя не будет никакой игры.
>Too many errors! 4 errors were dropped
К чему это он? Ничего не вылетает, всё работает сравнительно разумно.
Прошу прощения, уже нагуглил, что это имелись в виду warnings.
Первое что приходит в голову: периодически объект сообщает свой трансформ, эти координаты складываются в массив, потм из этого массива строится сплайн, по которому выводится кривая.
Вот тебе простенький урок для 2д, в 3д всё так же
https://www.youtube.com/watch?v=_lJ0jbahbjw
Тут показано, как двигаться по созданному в редакторе пути.
Тебе же нужно построить путь в игре, добавляя к нему точки.
Может, и на секретных. Если ты заранее знаешь, сколько и чего у тебя рисуется по гриду, то можно много интересных оптимизаций накрутить.
У меня универсальный движок держит анимацию 10к спрайтов на 60fps без просадок. Что там хуан намудрил, я не знаю.
>Что там менчмаркер намудрил
Пофиксил тебя. Мы не знаем, ни что он там тестил, ни на каком железе/ос/драйверах.
А что ты хочешь от GLES2/3, простите? Этот стандарт на перформанс в принципе не рассчитан, и загнётся даже на десятке спрайтов, если ты захочешь рендерить их в 4к.
Вообще давно уже надо сделать тикет, чтобы Хуан запилил нормальный огл рендерер помимо мобилкоговна. ДиректХ был бы лучше, конечно, но я понимаю, что его не будет никогда. Но блядь, движок вообще без рендерера для полноценных видеокарт - это пиздец.
ОН ПИЛИТ БОМБУ НА ВУЛКАНЕ НУЖНО ЕЩЕ НЕМНОЖКО ПОДОЖДАТЬ, ТАМ ПИЗДЕЦЪ ЧЕ БУИТ, ОН САМ СКАЗАЛ ЧТО МИР ОХУЕЕТ
Разве ДХ дает что-то производительности? Он вроде только свистелки-перделки добавляет.
УХ БЛЯ ЖДУ
>According to this test, Direct3D 12 is faster than OpenGL when the number of triangles is low. AMD Radeon cards are particularly fast! Around 80K polygons, Direct3D offers the same kind of performance than OpenGL. Above 80K polygons, OpenGL is faster.
Ну такое. По современным меркам 80К полигонов это 1 персонаж или босс + какой-нибудь базовый террейн.
пипец графики рассчитанные на журнашлюх.. сейчас бы так dx12 и gl сравнивать..
а толку с вулкана, если он будет идти на небольшой кучке устройств, на которые все равно те, кто использует движ, не замахиваются
Рендеры мутятся, донаты крутятся
В смысле? Vulkan это просто драйвер, он будет работать на 6-летних видеокартах.
У меня работать не будет
>обладатель 7-летней видеокарты
Хуан или уже в открытую ссыт в глаза донатерам, либо он реально тупой. На одни грабли с gles 3 уже наступал, теперь расстилает коврик под еще одни.
В андроидо-планшетах настоящего дня вулкан? Период появления обновлений прошивок планшетов обычно не больше полгода, срок службы планшета больше двух лет.
>а толку с вулкана, если он будет идти на небольшой кучке устройств
Даунеха, для твоей сраной видюхи в годоте уже все есть. Без запекания пбр в годоте заебись, и по производительности, я чекал. Он только с вокселами обосрался.
>и по производительности, я чекал.
Нет описания теста, чтобы можно было проверить самостоятельно или оценить качественно-количественно
@
Научный подход
Ебать, там целая гама, скоро будут как эпики, на играх зарабатывать
https://twitter.com/reduzio/status/1110400672258678784
Я для себя проверял, тебе надо, закидываешь ассеты в двиг, крутишь там, бегаешь, так же в юнити, создаешь пока фпс не просядет. Я создавал модельку скелетную, в анриале больше всех моделек влезло, в юнити с годотом почти одинаково. Но в анриале там освещение заебись, а в годоте без гипроб
В строю еще куча ноутов/компов, где вулкан не завезли и вряд ли завезут. У меня только на одном из трех ноутов есть вулкан и GL4.6.
Про телефоны и говорить нечего, что все старенькие смарты идут лесом, а значит с вулканом ты будешь ориентироваться на аудиторию, которая ходит с крутыми, а это, сам понимаешь, какие ограничения накладывает на твою игру кликер
Логично, что движок заточенный под этот жанр показал себя лучше тех, которые не под него.
>движок заточенный под этот жанр
Поясните вот это.
Я уже который год смотрю на подобные посты и не могу понять. Например, крайдвиг считается заточенным под шутер. Как это? Почему там нельзя поместить камеру сверху и сделать псевдоизометрический вид? Что, нельзя создать интерфейс инвентаря и диалогов для эрпогэ? Почему-то у тройкагеймс получилось сделать эрпоге про вомперов на "шутан"-движке сорс. Почему-то на УЕЧе, который тоже якобы шутерный, можно без задней мысли пилить платформеры.
Что вообще подразумевается под заточенностью под жанр?
Да ничего это не подразумевает, заточенные двиги только у студий, которые пилят конкретные проекты и двиги под них. Анриал, юнити, годот это универсальные двиги, пидар просто выдумывает хуйню для подкрепления своей точки зрения.
Заточенность проявляется в том, что на движке X все из коробки настроено под конкретный тип игр. Почти на любом движке можно делать любую игру и все будет работать и так и делают, потому что почти ни один разраб не скачет с движка на движок. Если взять к примеру УЕ4, то в нем заточенность проявляется для создания экшонов с кооперативом: он тебе выдаст крутую картинку (если конечно художники тебе предоставят модельки с текстурками), кооператив для шутера тоже будет хороший с блекджеком и лагокомпенсациями. Но вот когда ты начинаешь пилить на УЕ4 платформер под мобилку, то эта заточенность тебе удлиннит время разработки, потому что большинство это заточенности надо будет убрать руками и перенастроить. Да, есть готовые шаблоны, но они тоже своеобразные.
>пидар просто выдумывает хуйню для подкрепления своей точки зрения
>Ну это мне было ясно сразу. Я не теряю надежды, что он наконец вынет хуй изо рта и попытается внятно объяснить свою точку зрения.
Жаль не заметил сразу этого сообщения, не метал бы бисер, не тратил бы время.
Так ты поясни за разницу заточенности юнити и анриала для скелетных моделек, а не анриал для 3д и 2д. Просто пиздишь и никаких тестов сам не проводил.
>движок заточенный под этот жанр
>Поясните вот это.
Поясняю. Это высер местного шизика, которого уже обоссали 100 раз, но он продолжает форсить этот манямирок.
Но ведь ссыш здесь только ты. Под себя.
Заточенность движка - это его функции. В движке физически не могут быть реализованы все функции, поэтому его разработчики осуществляют определенную выборку наиболее важных на их взгляд функций, это и определяет заточенность движка.
Сделать можно что угодно на любом движке, так как в любом движке можно рисовать и писать код. Вопрос только в том, что тебе придется писать самому и сколько времени это займет.
Не в этом ли суть движка, чтобы вместо велосипедства полагаться на уже написанную библиотеку функций?
И что это должно значить, долбоеб? Они все силы вливают в оптимизацию кода. HDRP рендер дохуя жрет, это для инди?
>Годотяне, когда будем визуалскриптом давить уечекаличей?
Давили уже в первых тредах и выяснили, что хуита выходит. То что текстом пишется в двух строчках, нодами вяжется в тарелку лапши на два экрана.
И нахуй такое надо, спрашивается?
Графноды хороши при конструировании анимация с блендспейсами и шейдеров. В 3.1 всё это есть (только нахуй оно там, тоже неясно, все уже ГЛШЛ выучили, пока ждали возвращения вижуалшейдеров в трёшку). Кроме того, можно с лёгкостью написать плагин, в котором графнодами будет конструироваться твоя кастомная логика (хотя тоже неясно нахуя с этой вижуалпоебенью ебаться, когда можно просто конфигами и скриптами всё настраивать)
В википедии сходи почитай за суть движка, тебе говорят.
Ну тут не поспоришь. Сися изучается за неделю. Я неделю почитал просто учебники на мсдн и с лёгкостью заработал на сисе. Написал свой хеллоуворлд. Перенёс пару десктопных своих тулз с других языков на сисю. Собрал пробный проект годота с сисей.
Но вот интересный нюанс: несмотря на поддержку сиси в годоте, желания писать логику на ней всё ещё не возникает.
Рискну предположить, это оттого, что я подсознательно понимаю, что когда придёт время оптимизировать игру, сися не поможет и критические куски кода нужно будет ебошить на крестах.
>сися в анриале вместо блюпринтоговна убила бы юньку
>а вот в годоти
Демон, хуй сосать будешь? Давай соси.
сися - это такое же йентерпрайзовое макакоговно как js. В геймдеве исключительно для того, чтобы любой школьник мог въехать и пилить свою убивцу жта. Ему неизвестны оптимизации и алгоритмы, он просто накидывает модельки, ржет, говорить "ух бля круто" и жмет компочку компайл.
Вот так делается перемещение на уече в тридэ. На годотовских вижуалнодах пришлось бы гораздо больше лапши мотать.
Это я к тому, что в УЕЧе это реально круто реализовано и никто не сравнится с блупринтами уеча.
Сейчас попробую для сравнения реализовать этот алгоритм на вижуалскрипте.
Тогда блюпринтоговно это вообще для имбецилов которые три года учатся закидывать модельки в двиг
>Сейчас попробую для сравнения реализовать этот алгоритм на вижуалскрипте.
Короче я заебался. На пикрелейтеде примерно треть скрипта из ФПС-туториала годо.
Основное неудобство в том, что нужно конструкторы-деконструкторы отдельными нодами выкидывать тоннами, а в УЕЧе правый клик по ноде и в контекстном меню выбираешь, в каком виде выдать результат? Вектор? Или на компоненты разложить?
Да. Кавычки в путях нужны, только если есть пробелы. Это классика, это знать надо.
А есть опция чтоб при драг-н-дропе ноды в код название без кавычек было если слитно? Просто увеличивает размер строки без причины. И так в _процесс частенько адовая вермешель из битовых выборов получается.
Есть замена драг-н-дропу. Пишешь знак $ и тебе выпадающим списком предлагают выбрать ноду из потомков. Если там нет пробелов, то выборы будут без кавычек.
Не, это я знаю. Просто дроп иногда использую тоже. Было интересно конкретно за него, но если нет, то пофиг, не такая большая проблема.
Вот более наглядный пример, как несколько строчек кода превращаются в лапшу.
Сразу возникла несколько вопросов:
Как сделать проекцию, типа вот такой
https://en.wikipedia.org/wiki/Isometric_video_game_graphics#/media/File:LootHunter_Tileset.png
? Ну я тупой, да, не знаю...
Кто-нибудь пользовался конвертером из Tiled редактора карт? Чтобы делать много уровней -- удобнее будет это или в Годоте сцены лепить?
* Стоит ли пользоваться встроенной локализацией или как оно? Я еще не смотрел даже, можно ли в GDScript перключать из игры локаль или оно системную всегда берет. Или может проще свой костыль сделать? Надо два языка поддерживать всего - тексты, картинки менять.
Зачем ты тайлы вручную выставляешь? Тебе TileMap ноду дали.
Делаешь тайлсет в одной ноде спрайтами, ставишь нужным staticbody, анимации - все.
Это называется 2.5D, Top Down perspective
Как будто на схему БД смотрю, аж передергивает.
Вот тебе совет. Есть вижуалнода Expression. В ней можно компактно ужать много хуаноцирка с вижуалнодами вроде бесконечных деконструкций, занимающих место. Пик релейтед. Но при этом вижуалскрипт превращается в почти-гдскрипт.
>>69231
Двачую этого >>69232 (Del) а ещё можно быстро смотреть какие аргументы есть у встроенных функций и наглядно (пере-)подключать. Ну, это для тех у кого с образным мышлением траблы. У остальных и чтение документации выполняет ту же функцию.
>Стоит ли пользоваться встроенной локализацией или как оно? Я еще не смотрел даже
Судя по описаниям в документации, пользоваться стоит. Там очень плотно подошли к вопросу. Там тебе и наборы строк и привязки к локализованным пикчам.
Так вот оказывается чем я все время занимался...
выпускай в продакшон
https://goo.gl/forms/WlCFsRXzslL5YRmk2
Не понял, где пункты ездить по конференциям и ресторанам.
Да оно вроде и в 3 пашет, или я чего-то не понял
А, все, понял. Это сбор денег на обучалку о том, как менять разрешение в игре. Ай Хуан, ай малаца.
в gles3 нет поддержки компуте шойдеров. Они только в 3.1 добавились. А тесселяцию и геометрический аж в 3.2.
Посему или идешь нахуй, или форкаешь, запиливаешь рендер под 3.1/3.2, называешь свои форк HuigotYobaGrafon, сам в жало его майнтейнишь и разрабатываешь и не ебешь мозги своими шизофантазиями про функционал.
И зачем это делать, сами себе-то и в исходниках поправим и скомпилим, общественность просить
У них в планах говно мамонта и некромобилочки, дауншифт аж до gles 2.0, а ты к ним с компуте полез. Вот года через 2 и закатывайся, когда они некроговна нажуются.
ЧСХ, никакой иронии. Именно народ весь прошлый год кудахтал, что не запускается на некровстройках и некромобилах. вот народу и запилили глес2 вместо 3.2.
Аж трисёт, суки.
> ProjectSettings.load_resource_pack("/path/to/mod.pck")
После чего содержимое файла pck оказывается в виртуальной папке проекта так, как если бы было там изначально. Если в файле мода есть файлы с совпадающими именами, они заменяют файлы оригинального проекта. Таким образом с лёгкостью можно делать патчи, чтобы игроку не пришлось переустанавливать игру, достаточно установить патч. Еще более легко делаются моды. Не нужен оригинальный проект, нужно только знание метаданных, так, как задумал автор игры: куда положить сцены, куда скрипты, чтобы игра проанализировала и подхватила. Например, внутри виртуальной папки res:// есть папка mods, в которой должна лежать как минимум сцена mod_init.tscn которая уже подключает к себе весь остальной контент мода. А автор написал внутри основной игры скрипт, который перебирает моды и добавляет найденные сцены в общее дерево игрового мира.
Вся эта система очень сильно напоминает широко известный в узких кругах ModOrganizer, В котором тоже оригинальные файлы объединялись с файлами модов в виртуальной папке, которая подсовывалась игре. При формировании папки использовался порядок загрузки и в конечный результат шли файлы с наивысшим приоритетом.
Годот делает то же самое а) искаропки, б) без виртуализации хардкодом (который детектится антивирусами или блокируется обновлениями венды).
Слава Годоту!
https://docs.godotengine.org/ru/latest/getting_started/workflow/export/exporting_pcks.html
Есть ли команда, быстро удаляющая из маски слои указанной ноды?
Но он рисуется поверх задней части аналогичного тайла для "сзади", хотя в Isometric демке тролль может заходить за колонны и блоки, не понимаю, как там это сделано.
В ТайлСет нельзя добавить AnimatedSprite похоже. Еще, случайно очистил тайлест, посое этого undo не восстановило в сцене расставленные блоки.
Придется что-либо мигающих ламп делать спрайтами отдельными. Кстати, где лучше выполнять скрипт, чтобы у таких спрайтов случайным образом анимацию включать, чтобы лампы мигали, и как их все на сцене перебрать? Where should I execute a script to randomly start blinking lamps animation and how to go through them all in a scene? No idea...
Еще подумалось - а как для 2D игры на Godot системные требования узнать? Под Win/Linux/Mac.
>> Еще более легко делаются моды
Для модов, к сожалению, эта система все так же подходит не очень. Большинство мододелов не будут разбираться с новыми программами. Им бы просто написать диалог в каком-нибудь json, засунуть это дело в в папочку или архив. То же самое с теми, кто текстуры перерисовывает. Для упоротых и тех, кто делает большие моды - это подходит, но пока все еще отсекает многих других. Поэтому пока параллельно в дополнение советую писать парсер для подхвата файлов из просто конкретных папок.
Оценить сколько твоя игра предполагает жрать оперативки, также в зависимости от того, каким рендером пользуешься. Это и будет задавать минимальные требования к устройству.
Пацаны, может мне кто-нибудь объяснить, зачем у годота рендер называется GLES 3, но при этом в кишках гладом цепляется десктопный 3.3
https://github.com/godotengine/godot/blob/master/thirdparty/glad/glad.c
GLES 3.0 делался на основе спецификации OpenGL 3.3 только без геометрических шейдеров.
>Большинство мододелов не будут разбираться с новыми программами. Им бы просто
Написать для них аналог CreationKit, собирающий файлы в pck, остальные будут делать в годоте.
Короче, лапша. И без обфускации нихуя не понятно становится.
можно и CreationKit, но это какие дополнительные трудозатраты.. просто бы ресурсы парсить из произвольного каталога годот давал из коробки, ,чтобы мододелы просто пихали свои png да json в своем проводнике
>просто бы ресурсы парсить из произвольного каталога
Я сначала тоже так думал. Даже начал уже писать загрузчик сцен из user://. Но потом почитал статью из доков, ссылка выше, и понял, что принцип модульной подгрузки пак-файлов гораздо круче. Во-первых, ты работаешь с одной папкой res:// она универсальна и все ссылки между скриптами корректно обрабатываются. Во-вторых, игроки же тупые, представь себе на секундочку форум поддержки игры и миллионы однотипных комментов "я положил файлы обж в папку дата\моделс и у меня ниработаит, памахити!"
>>69457
Тот же код в гдскрипте. Делайте выводы.
>> "я положил файлы обж в папку дата\моделс и у меня ниработаит, памахити!"
Форум того же Minetest этим не завален, а моды делаются на коленке в блокноте и пейнте, как и переводы.
1920x1080, 0:35
Детектит, но еще и на другие события срабатывает
>Как вкатиться?
Шапку почитать.
>>65315 (OP)
>есть варианты русскоязычного перевода части доков на ресурсе конкурирующей фирмы: http://c2community.ru/forum/viewforum.php?f=119
>Ещё начат перевод официальной документации: https://docs.godotengine.org/ru/latest/
>>65315 (OP)
Но вообще
Но вообще, будь мужиком и изучи английский: https://godot.readthedocs.io/en/stable/
Сделай, это, блеать!
крутая игруха
У тебя в папке проекта создаётся автоматически файл default_env.tres у него в свойствах есть ambient_light_sky_contribution выставленный в 1. И синее небо. И всё на сцене контрибутится небесной голубизной. Зачем Хуан так сделал - не нам судить. Сделай этот параметр 0 и будет тебе нормальный цвет.
Сделал тут тестовый проектик, всё работает, мод грузится, сцены мутятся.
Закомментил для вас, годаны!
>Можно ли прямо в годоте делать ландшафт
https://godotengine.org/asset-library/asset/231
>>69729
Вот в чём я уверен, так это в том, что данный код успешно обновляет содержимое виртуальной папки res://
Если ресурсы в твоём моде будут корректны для алгоритмов твоей игры, то не вижу препятствий, что может пойти не так?
Только что проверил такой расклад: В оригинале сцена с простым меш-инстансом и камерой, в моде меш-инстанс с материалом и скрипт, который крутит меш перед камерой.
Всё загружается и корректно работает. Сейчас попробую сделать мод, в котором скрипт обращается к данным в оригинальном проекте.
Алсо, в упакованном файле скрипты компилированные! Хуясе! Интересно, всякие баннимарки учитывают это при замерах скоростей гдскрипта? И вообще эта конпеляция даёт прирост скорости?
ЭТО ЖЕ ОЧЕВИДНО ДА БЛЯДЬ!? ЕБАННЫЙ ГУГЛ. ПРОЕБАЛ ВЕСЬ ДЕНЬ ДУМАЯ ЧТО ГДЕ-ТО В КОДЕ ОБОСРАЛСЯ
>Сейчас попробую сделать мод, в котором скрипт обращается к данным в оригинальном проекте.
Да. Подтверждаю. Чтение-запись данных работает. Подгрузка внутренних сцен к внешнему моду тоже работает (например, мы делаем мод с другим скином оружия, но внутри мода мы подключаем стандартные анимации стрельбы и перезарядки (при этом мод не знает, что анимации могут приходить из другого мода, но на то есть порядок загрузки, каждая уважающая себя игра должна грузить моды по порядку загрузки из специального конфига, да Тодд?)
В тоддоподелиях вроде есть порядковая загрузка модификаций.
Еще примеры будут, кроме этих двух за почти два десятка лет?
>Моды - верный способ выпустить недоделанную игру и 8 лет навариваться на ней за счёт сообщества. Да, Тодд?
Пофиксил.
Нет материалов, по гдскрипту тоже нет, только время потратишь. Бери юньку и через не могу учи сишарпу, материалов море, рано или поздно усвоится.
Там хватит официальный доков
http://docs.godotengine.org/en/3.0/getting_started/scripting/visual_script/index.html
и пары этих уроков
https://www.youtube.com/watch?v=_tma9msTfpM&index=2&list=PLVPelrbFmzgOGBz1rKQjVjXLGhjAGJaKs
больше там особо и нечего учить.
Если с чем не разберешься или когда будешь делать, то что-то не найдешь как, просто тут спроси.
>>69883
Иди уже в свой угол со своей шарпопарашей.
>визуальный скриптинг - хуйня, на которой ты даром потратишь свой потенциал.
Как и гдскрипт. Он нигде не применяется кроме годо
>>69934
>>69944
Ключевые слова одинаковы для всех языков. Подходы к программированию в реальном секторе экономики, так сказать, делятся на два больших шалаша: си-подобный и паскаль-подобный. Первый победил в современном кодинге.
Даже питон с его отступами тоже си-подобный.
Есть еще хаскель и лисп в отдельном скворечнике паскаль-шалаша, но они слишком в стороне от практического игростроя. И вот луа где-то между ними трётся.
Поэтому ваши кукареки про гдскрипт - это бессмысленные кукареки ньюфагов.
А визуальное программирование - это банальные блок-схемы. Они научат ньюфага логике, но не позволят ему перекатиться на настоящий язык (кресты) а гдскрипт - сможет.
Визуальное программирование тоже делится на два больших шалаша: блок-схемы (уеч-блупринт, блендер, годот) и таблицы (скрэтч, констракт). И даже таблицы ближе к нормальным ЯП, хотя тоже не сильно помогут перекатиться на кресты.
>>69944
Луа - помесь паскаля и лиспа: 1) длинные кейворды, в которых стыдливо убрали begin, оставив остальное, 2) списки, списки, всё есть списки! ЧТД.
Да, Семен
Гдскрипт брат близнец питона. Питон используется везде, начиная с искуственного интеллекта заканчивая научными рассчетами. Без работы не останешься.
УЕЧую официально, с плашкой.
Положняк таков: Для инди-проектов - годот. Для ААА девелопа большой командой - УЕЧ. Нодискасс.
Нет, не близнец. Еще будешь передергивать?
>Ключевые слова одинаковы для всех языков.
Только если собеседуешься на клоуна.
Уровень пользователей-годо удручает
Помесь хуена. Пиши на неофициальном питоне, так хоть полезные в обществе навыки получишь.
>Питон используется везде, начиная с искуственного интеллекта заканчивая научными рассчетами.
Только не в официальном годоте.
>Гдскрипт брат близнец питона
Зачем нужно было придумывать велосипед, если питон и гдскрипт не отличаются?
На самом деле, это очень выгодный политический ход. Хуан гений.
в жжоппу этот ужасный питон, нахрен он нужен
Какие навыки можно получить, делая игру на питоне, которые невозможно получить, делая на гдскрипте?
>Питон используется везде, начиная с искуственного интеллекта заканчивая научными рассчетами.
Даун, язык это ничто, главное библиотеки. Юзая питон, ты ознакомишься с библами на питоне для искуственного интеллекта, научных расчетов, узнаешь их фичи и нюансы.
Так а я с этим и не спорю, чего ты обзываешься-то?
Но мы же другие тезисы обсуждали. Не писать игры на гдс vs писать нейронки на питоне. А писать игры на гдс vs питоне.
С гдскрипта на питон ты переучишься за день. И когда будешь проходить обучалки по созданию нейросетей, уже будешь все понимать, синтаксис ты уже знаешь.
>Контр страйк, Дота2, это все моды укравшие прибыль у основной игры.
Несешь хуйню.
Это моды, принесшие прибыль непосредственно ИХ создателю и дополнительную популярность игре. Схуяли основная игра должна получать прибыль за то, что левый чувак потратил кучу времени на создание мода? Плюс, для игры в мод нужна лицуха игры, так что игра в любом случае остается в плюсе.
>С гдскрипта на питон ты переучишься за день.
Нет, потому что
> Юзая питон, ты ознакомишься с библами на питоне для искуственного интеллекта, научных расчетов, узнаешь их фичи и нюансы.
Еще раз объясняю, дебич - если ты будешь делать годото игру на питоне, ни с какими библами искусственного интеллекта ты не познакомишься.
манямир - нету, значит не нужно.
>С гдскрипта на питон ты переучишься за день.
Нет, не переучишься. Я тоже умею декларировать, маня
>делать годото игру на питоне, ни с какими библами искусственного интеллекта ты не познакомишься.
Говори про себя
Ты можешь конечно заниматься тупой демагогией, мне похер вообще. Разница между C++ и JS на пике. Незначительность разницы между GDScript и Pyhton увидит любой, просто взглянув на описание языка https://docs.godotengine.org/en/3.1/getting_started/scripting/gdscript/gdscript_basics.html
>>70044
В данном случае можно говорить за всех. Что-то я твоих игр с нейросетью не вижу.
> Незначительность разницы между GDScript и Pyhton увидит любой
Если разница незначительна, то зачем нужно было изобретать gdscript?
По техническим причинам - гдскрипт уже встроен в архитектуру движка, в ноды.
По политическим - никто не сможет визжать - а вон у вас в питоне хуйнянейм не работает.
Чтобы хуан занимался тупыми велосипедами, вместо делания движка.
>никто не сможет визжать
Все равно визжат. И здесь и на официальных форумах. Хейтерс гонна хейт.
Вроде как Хуан вилял на тему, что он попробовал питон и луа, но ему не зашли, потому что не хватало чего-то и он решил сделать более крутой. Ага, круче луа, уже скоро лет 20 как все пытаются.
Мм, когда манька разбирается лучше хуана
>In the early days, the engine used the Lua scripting language. Lua is fast, but creating bindings to an object oriented system (by using fallbacks) was complex and slow and took an enormous amount of code. After some experiments with Python, it also proved difficult to embed.
Ммм, когда манька обрывает цитирование прямо перед неудобными фразами
>Godot embeds scripts in nodes, most languages are not designed with this in mind.
>Godot uses several built-in data types for 2D and 3D math, script languages do not provide this, and binding them is inefficient.
>Godot uses threads heavily for lifting and initializing data from the net or disk, script interpreters for common languages are not friendly to this.
>Godot already has a memory management model for resources, most script languages provide their own, which resulted in duplicate effort and bugs.
>Binding code is always messy and results in several failure points, unexpected bugs and general unmaintainability.
Итого - байндинг медленно и не оптимизировано, гдскрипт - встроен в движок и осведомлен о его устройстве.
Угу, у всего мира луа нормально эмбеддится и работает быстро, только у Хуана все медленно и неоптимизировано.
WoW с его тысячами одновременно подключенных игроков в одной локации как-то умудряется работать со скриптами на луа, а у Хуана все медленно. Десятки других движков юзают луа, у всех всё нормально эмбеддится и быстро работает (недаром luajit считается самой быстрой реализацией встраиваемого языка на планете), у всех, кроме Хуана, у него всё медленно и не эмбеддится нормально.
Так может проблема в Хуане?
>WoW с его тысячами одновременно подключенных игроков в одной локации
А что там за скрипты? Считать сколько волков из 10 по квесту ты убил? Пфффф.
>быстро работает (недаром luajit считается самой быстрой реализацией встраиваемого языка на планете)
Ало, что ты там не джить, у тебя все равно будет лишняя прослойка абстракции. Вот ее и у странили.
Любой скриптовый язык это слой абстракции, включая gdscript. А gdscript - еще и хуёвый слой абстракции, написанный программистом средней руки, не являющимся профессионалом в разработке скриптовых языков и виртуальных машин.
Что собственно и показывают баннимарки, на которых годот начинает захлёбываться быстрее любого другого движка, авторам которых хватило мозгов не изобретать свои языки.
>Вот ее и у странили.
Устранили скорее здравый смысл, но хомякам пофиг, и так схавают.
> гдскрипт - встроен в движок
Что значит встроен? гдскрипт компилируется в бинарный код хоста и линкуется с годот?
>у тебя все равно будет лишняя прослойка абстракции
Я знаю ffi и бинарную линковку. Ну еще rpc. Что нового изобрел Хуан?
>Ало, что ты там не джить, у тебя все равно будет лишняя прослойка абстракции.
Ты ебнутый? У gscript тоже virtual machine.
> у тебя все равно будет лишняя прослойка абстракции.
Ебанашка, если код не транслируется в инструкции железной машины, то значит его исполняет виртуальная машина. Третьего не дано. Просто пиздец.
Ебанашка, ты мог бы и не подписываться.
Тебе понятна разница между абстракцией и еще одной лишней абстракцией? Тебе придется дублировать весь API в виде прокси-объектов на этом языке, гдскрипт может обращаться на прямую.
К твоему хозяину.
Так и Lua через ffi мог бы также напрямую обращаться к api движка, но ху.. Хуан
>Что собственно и показывают баннимарки, на которых годот начинает захлёбываться быстрее любого другого движка
Где можно увидеть сравнение?
Будешь каждый вызов к api через ffi писать? Серьезно?
local ffi = require("ffi")
ffi.cdef[[
int MessageBoxA(void w, const char txt, const char *cap, int type);
]]
ffi.C.MessageBoxA(nil, "Hello world!", "Test", 0)
Не, ffi это прослойка через прокси-объекты/прокси-функции, а у гдскрипт не так, "он встроен и может обращаться на прямую". Но и не бинарная линковка. Кароч, хуан изобрел что-то абсолютно новое.
К каким структурам, ты вообще код годота открывал перед тем, как спиздануть эту хуйню?
>Будешь каждый вызов к api через ffi писать?
Поведай нам о новом методе кроме ffi, бинарной линковки и rpc.
>Кароч, хуан изобрел что-то абсолютно новое.
Пиздец, не перестаю проигрывать с фанатиков Хуана.
Вот нахер ты несешь эту дичь? Ну не шаришь ты, ну и делай игры, а не теоретизируй о программировании.
Вощет я мимо проходил, но держи
https://github.com/godotengine/godot/blob/master/modules/gdscript/gdscript_functions.cpp
Я уже показывал lua ffi к движку на c++ и 10k иерархических спрайтов на 60fps
А ты в годоте покажи.
Ты меня-нас раскусил.
Та не, это два безигорных довна-долбоебика.
Ну всё, проотвечался. Пизда тебе от Бога, сегодня ляжешь здоровым, завтра проснёшься больным. Проклинаю тебя, мертвяком и Наськой.
Сам нагуглил
>Грэм является автором так называемого «Парадокса Блаба» («Blub paradox»), ссылки на который нередко встречаются на тематических ресурсах, посвящённых обсуждению новых и ограниченно популярных языков и механизмов программирования. «Парадокс Блаба» описан в очерке «Побеждая посредственность». Его сущность состоит в том, что программист, знающий некоторый язык («Блаб»), «думает на Блабе» — выражает решение любой задачи в средствах Блаба, а имеющиеся в более мощном языке дополнительные средства в его глазах ничего не стоят, так как он не умеет их применять. Только когда программист по каким-то внешним, дополнительным причинам изучит более мощный язык, он получит возможность смотреть на Блаб «сверху вниз» и увидит его ограниченность. Таким образом, ограниченность Блаба сама по себе не может стать стимулом для изучения более мощного языка, так как для осознания этой ограниченности необходимо уже знать такой язык. Этим Грэм объясняет то, что программисты обычно не желают изучать более эффективные инструменты программирования, чем те, которыми они уже владеют (в частности, непопулярность Лиспа).
Хуан, сделай скриптинг на Лиспе!
>Вот, ты уже вижу давненько отвечаешь за базар свой гнилой. Весь прогнил насквозь. А всё не каешься.
Нет, я был святым и здоровье начало потиться, но как только я начинаю указывать общественности на пидарскую сущность таких как ты, выздоравливаю. Это мой крест.
Ой, что-то захотелось пописять. Пссс на тебя, пссс. Ой, прям в лицо тебе пописял.
Ну в общем да. Он такой: а я знаю ffi! Показываешь ему гениальный код Хуана. Он не находит там ffi поэтому обзывает код непонятным.
Бля, пацаны, карабоним отсюда быстрее!
Если скорость работы приложения и его потребление ресурсов не важны, то можно хоть на брейнфаке.
>Он не находит там ffi поэтому обзывает код непонятным.
Чиво?
Строка 1145
>case PARSE_JSON: {
...
проверка аргументов, блаблабла
...
вызов метода:
>Error err = JSON::parse(*p_args[0], r_ret, errs, errl);
Это и есть ffi. И у луа такой же.
>обзывает код непонятным.
Это ты сам придумал. Я не понял, нахер ты привел пример кода, который доказывает, что ты не прав.
А если я докажу, что шарп быстрее, ты признаешь, что ты всё это время был неправ?
Ну ты ведь пишешь неправильные вещи. Выдумываешь хуйню на ходу, думая, что никто не принесёт опровержение твоего пиздежа.
Ты неправ.
И должен это признать.
Если это не ffi, то дай название этого метода. Это же абсолютно новое изобретение хуана и оно еще не попало в учебники cs? И proof-of-concepts документа тоже нет?
>Language Bunnies Rendered
>GDScript (Release) 18560
>C#/Mono 27555
https://github.com/cart/godot3-bunnymark/blob/master/runs/2019_03_16.md
>>case PARSE_JSON: {
>...
>проверка аргументов, блаблабла
>...
>вызов метода:
>>\tError err = JSON::parse(p_args[0], r_ret, errs, errl);
Почему эту прокси-процедуру годото-дети не считают прокси, а называют "обращением на прямую"? Такая же распаковка, упаковка, подготавливание аргументов для стороней функции/метода, а потом и ее вызов.
>Color color((float)p_args[0] / 255.0f, (float)p_args[1] / 255.0f, (float)p_args[2] / 255.0f);
>рокси-процедуру годото-дети не считают прокси
Потому что это не прокси процедура, а вызов библиотечной функции. Плюсовой. Напрямую.
Error JSON::parse(const String &p_json, Variant &r_ret, String &r_err_str, int &r_err_line)
>Такая же распаковка, упаковка, подготавливание аргументов
Ты реально не понимаешь, о чем идет речь. Это - необходимые действия, которые будут в любом случае. Речь идет о ДОПОЛНИТЕЛЬНОМ оверхеде, который есть в случае байндинга с другим языком.
>Потому что это не прокси процедура, а вызов библиотечной функции. Плюсовой. Напрямую.
Ты, наверное, фантазировал, что в ffi не вызов сторонней ф-ии? Да ты просто уебок.
Олдфаг в треде!
>Речь идет о ДОПОЛНИТЕЛЬНОМ оверхеде, который есть в случае байндинга с другим языком.
Ну, расскажи, какой доповерхед, по-твоему, дает ffi. Ведь у тебя не ffi же, да?
>Это - необходимые действия, которые будут в любом случае.
Конечно будут, и это называется ffi.
Я делаю игоры.
Вот сегодня написал задел под будущее наследование сущностей.
Вот подскажи, как правильнее организовать?
Я пока что замыслил такое: базовый класс-предок называется Character и наследуется от RigidBody. В нём реализовано движение через apply_impulse с параметром, который берётся из внутренней переменной move.
Далее, от этого класса наследуются классы Player и NPC, в первом переменную move дергает инпут через экшоны, во втором переменную move дергает функция get_next_move_by_AI()
О! А в 3.0.6. запустилось. Как же быть, я люблю всё новое, блестяшэе. Как это мне обратно на устаревший 3.0.6. переходить???
Не придётся переходить. Экспортированный проект ни в какую не видит либу питона.
Не забыл. Но не агентным программированием единым жив программист.
Наследование предполагаю юзать в скриптах, а древовидную композицию в нодах. Во, погоди, щас схему нарисую. Во, нарисовал. Сцены собираются деревом, но при сборке нужным нодам назначаются определённые скрипты. Если мы собираем персонаж игрока, ему назначается скрипт игрока. Как я и писал ранее, в скрипте игрока реализован только специфичных для игрока функционал, общие вещи, как перемещение объекта, реализованы в общем скрипте.
Если собираем врага, назначаем скрипт врага, в котором реализованы выстрелы.
Если собираем горожанина, назначаем скрипт горожанина, в котором реализованы диалоги.
А в классе НПЦ реализован лут-контейнер, перемещение по точкам внутри навигационного полигона, которое дёргает функцию передвижения из базового класса.
Впрочем, я понимаю, что наследование соснёт с проглотом у композиции, когда мне понадобится сделать, например, собаку-горожанина без контейнера, но с диалогом, после которого собака превращается во врага и атакует.
Поэтому, пожалуй, нахуй-нахуй.
Как узнают? Декомпилировать будут? Ну я там назову всякие файлы и функции как в годоте.
Бля, ну что непонятно, какие же вы тупые. На годоте не может быть игр, это невозможно. Тут и декомпилировать ничего не нужно, юзай логику, есть игра, значит не на годоте, а скорее всего на юньке, фсе.
Что ты там называть собрался, даун? Пользователь юнити не контролирует дистрибутив своей игры, юнити всегда высирает его по одному и тому же принципу, поэтому игры на юнити в два счета детектятся - по папке игранейм_Data, внутри дистрибутив mono и т.д
Не коди, епта. C++ ему дали.
зачем ты предлагаешь эту распиаренную хуйню без задач
>старый пердун не смог в наречие питона
Я сильно сомневаюсь, что этот пердун окончил школу.
Щас бы придумать еще один язык, который похож на один из тповых, но без инфрастуктуры - блядь это же не лабораторка в универе.
Нахуя тебе делать игры, когда стим полон игор? Скачивай и играй. Хули ты напрягаешься?
питон.. топовый.. хех..
>> Блядь пиздец нахуя мне учить еще один питон если я его и так знаю
так если знаешь, то игры делай, а не хуйню тут пиши
>архитектурные-концептуальные ошибки
Перечисли парочку ошибок и опиши, как лично тебе они помешали выпустить свои игры в стиме или гугле.
Ну он пиар умеет делать, да.
Не очень мне нравится этот юнити. А какие траблы могу возникнуть при разработке на юните и при разработке на годоте?
Классические, тебе понадобится какая-нибудь фича, ты спросишь - пацаны, как вот так сделать - а тебе скажут - в годоте пока такое нельзя, хуан обещал запилить, нужно немножко подождать. А в юнити это уже давно сделано.
Если ты еще не владеешь ни одним движком, а планируешь писать 2D игру, то и выбирай сначала простой 2D движок под нее.
>> Не очень мне нравится этот юнити
да далеко не тебе одному
Пример такой фичи в студию, которая сейчас есть в юнити и которой нет в годоте, и без которой нельзя сделать 2д платформер, или пиздабол.
я не тот анон, что пилит платформер, я лишь дал тебе ответ на твой вопрос
Я не буду для тебя копаться в говне и списки составлять. Ты предупрежден, дальше сам думай.
opegles2 dfnsierhfbue&G6298 opengles3
Вот смотрите, есть маняноунейм движок, версии 0.2.четотам, ка кэто положено.
https://github.com/turanszkij/WickedEngine/
При этом говногодот сосед подчистую:
1) Кода на порядок меньше
2) Современные GAPI - vulkan и DX12
3) Рендер умеет в самые последние письки графономоды:
https://www.youtube.com/watch?v=siui7gLxcIQ
4) LUA вместо велосипедных говноподелиев.
5) ECS и многококочность на джоб системе искаропки (тут смело уже ссым в ебло юнитидаунам, которые даже с главным по дрейкфейсам нимогут уже который год в релиз)
При всём этом это любительский манядвижок. не уеч, не юнька и не круйзисосопилка.
Ну, каково вам чувствовать себя говноедами?
Лучше обмажемся дружно некроговном, еще большим чем было, как велит хуан.
Алсо, главный обосрамс тут как раз в том - что это недопиленный манядвиг, пилимый одним упоротым, который по фичам уебывает поделие хуанга.
Да, он не тог что гвоздями к ДХ/WIN10 прибит, автору даже впадлу было смакелистс/сконс вместо проектов студии запилить и исходы структурировать по каталогам.
>>70487
>А в нем есть opengl 3 и gles2 ?
В нем есть вулкан и рейтрейсинг на DX12.
>> В нем есть вулкан и рейтрейсинг на DX12.
так большинству разрабов это не нужно, слишком узкая аудитория
Но он ничего не уделывает, лол. Ты вообще представляешь, сколько придется перехуяривать архитектуру этого двигла, чтобы оно запустилось на android/webassembly/linux/ios/vr?
Кто-то разве ставит под сомнение возможность накидать говнокода который у тебя на компе будет рендерить что-то там в DX12? Это делается за неделю по туториалам.
Я даже не уверен что в этом движке есть pathfinding например. Физика какая-то вроде есть, спрайты есть. А вот можно ли задать тупо путь, чтобы NPC прошел из одной точки в другую?
>Ты вообще представляешь, сколько придется перехуяривать архитектуру этого двигла
https://github.com/turanszkij/WickedEngine/blob/master/WickedEngine/wiRenderer.h
https://github.com/turanszkij/WickedEngine/blob/master/WickedEngine/wiGraphicsDevice.h
https://github.com/turanszkij/WickedEngine/blob/master/WickedEngine/wiGraphicsDevice_DX11.h
https://github.com/turanszkij/WickedEngine/blob/master/WickedEngine/wiGraphicsDevice_DX12.h
https://github.com/turanszkij/WickedEngine/blob/master/WickedEngine/wiGraphicsDevice_Vulkan.h
У него с архитектурой все в полном порядке, кек, разве что (из прибитого) использует векторную либу из DX, что, в целом логично, не велосипеды же писать и не хеллоуворлдную GLM использовать.
Не знаю, что у него там в порядке с архитектурой если его пример начинается с какого-то drawPath
ну разрабы движка движутся в правильном направлении, но пока еще много чего не хватает, чтобы люди могли брать и писать игры
drawPath - это вид рендера с определенными техниками, у него их там несколько.
Все, к слову, унаследованы от общего интерфейса и ты можешь вполне выбрать один, а затем ебошить через каст к общему интерфейсу и графоний будет запиливаться сам.
Это ничего не значит. Он может брать куски кода со своего форума, обезличивать их и выдавать за свои.
То есть, никакой команды, и если его собьет машина - то все? Нет, нам таких движков не надо.
Ну сейчас первоочердного не хватает рендеров на ogl и gles, и сборки под андроид. Без этого движки сейчас не нужны.
Эх, щас бы модуль фрипаскаля в годот!
парадокс блаба
Эххх, щас бы модуль блаба в годот!!
Эххх... Щас бы модуль Крюгера в годот!
Им надо кинуть скрин из редактора годота
Пиздос! Встретимся в суде!
Чё у тебя бомбит то? Говорю, блять, нарисовать на сишке свой опенжээл легче чем разбираться как в годото четко написано и нахуя.
Да ты только ныть можешь, заебал, нихуя ты не умеешь и не можешь, ни с движком ни без.
>Вот как генерировать карту?
Всё просто. Сначала создадим колоду:
>var Koloda = []
>func Sozdati_Kolodu(num_of_cards = 36):
>>for card in range(num_of_cards):
>>>Koloda.append(card)
Затем сгенерируем карту:
>func Generirovati_Cardu():
>>return randi() % Koloda.size()
>>70610
>Как настроить файлы игры?
В окне импорта. Пикрелейтед.
>>70610
>Почему нихуя не понятно и так сложно?
Потому что в детстве мама не была ласкова с тобой.
>>70610
>Я правильно понимаю, что движками пользуются аутисты, а нормальные люди пишут всё сами потому что это быстрее и проще?
Совершенно верно. Ты попал в тред аутистов. Беги отсюда скорей.
>Говорю, блять, нарисовать на сишке свой опенжээл легче чем разбираться как в
Хуан также думал
>var Koloda = []
>func Sozdati_Kolodu(num_of_cards = 36):
>>for card in range(num_of_cards):
>>>Koloda.append(card)
Глаза_Вытекли_от_твоего_кода ТыЗачем_ПаскальКейс_СоСнейк_кейсом_мешаешь_ирод?
У дурака будет доступ к файлу mods.json, поэтому он может туда вписать, как твою мамку ебал, или схоронить туда бинарные данные вместо json-формата.
Похоже эта игра от Хуана весьма реиграбельна. Играю уже год и ещё не надоела. Называется "Годот 3: Разработчик игор". Жанр: "IDE симулятор".
У меня была спина белая.
Пожалуй стоит уточнить. Top-down-игра, ИИ чувака, который бегает за персонажем если видит, его можно отвлекать там, прятаться за укрытиями, короч все как в говнохоррорах из директа.
1. Навмеш.
2. Местоположение игрока.
3. Вычисляешь расстояние до игрока.
4. IF расстояние меньше, чем расстояние, которое ты определил, как расстояние детектирования, THEN установить точку назначения.
5. Повторять периодически.
ИИ уровня /gd.
Пиарщик от Бога
Ну это хорошо, спасибо. Правда я пока вообще не представляю как всякие пути работают и как реализовать обход препятствий, надо будет поразбираться как время появится.
Если игра на сетке - алгоритм a-star, если в непрерывном пространстве - какой-нибудь понравившийся навигационный граф. Если в годоте делаешь, то там уже есть нужные классы для подобного.
Есть довольно внятный пример с навигацией в стандартных.
Ты жопой читаешь, или троллишь?
Если не тролль, ты правда считаешь, что geforce 1080 ti слабовата для годота?
А может ты троллишь? Там написано дрова обнови. Проблемы с драйверами, а не с годотом.
И в этом годот круче юнити.
симпатично выглядят
Ну вот я пытался делать подобное последнему, и знаю что в движке из коробки для этого нихуя нет. То есть они демонстрируют самописную систему кликанья по клеткам.
Какая там система. Там вид сверху жестко закрепленный, поэтому ты всегда по простой формуле можешь определить в пиксель какого гекса ткнул.
Тебе с такими запросами не движок нужен, а конструктор игр. Констракт и рпгмейкер к твоим услугам.
Нет онклика на спрайтах, надо приделывать area
Когда делаешь свой онклик, узнаешь много интересного о устройстве годота, он посылает события не в порядке z-order на экране.
https://github.com/godotengine/godot/issues/24259
https://github.com/godotengine/godot/issues/23051
То есть тебе нужно дублировать еще раз кишки годота, держа свой список прорисовки.
>>71052
Это и называется самописный. Тебе придется к простой формуле приделать как минимум учет масштабирования и скролла поля, и кучу других мелочей.
>>71057
>>71058
> скачай васянство неизвестно запускающееся ли на свежей версии годота
> искаропки
Значение знаешь?
>>71056
О, значит конструкторы стоят выше в иерархии чем двежки, вау.
А игры где?
Я с мобилы сейчас, поэтому не могу развернуто ответить. Скажу вкратце, ты неправ. Ты требуешь, чтобы движок делал игру за тебя. На предложение пользоваться конструкторами, в которых игра уже сделана за тебя, ты начинаешь разводить демагогию с писькомерством иерархий.
Я просто отмечаю, что в движке нет нод для игр такого жанра, спрайты кликаются не в порядке отрисовки (нельзя кликнуть самый верхний), поэтому приходится дублировать еще раз устройство движка.
Такое чувство что годот затачивали сугубо под платформеры.
В куколе, блд. Как можно сидеть на борде и не уметь пользоваться поиском по картинке?
Аж два запилили, только они работают исключительно внутри редактора, при экспорте - проект не находит либу pythonscript.dll
Пичалька.
>Exporting the project hasn't been tested at all (however exporting for linux should be pretty simple and may work out of the box...).
Лол.
Ах ты ж больной ублюдок. Используй встроенный питон, который назвали гдскриптом. Обычный питон работал через костыли и благодаря ним он даже у гдскрипта по скорости сосать умудрялся. Или у тебя челендж сделать игру на самом тормознутом языке в природе?
>первое видео
>loading
>загрузка сцены размером в один экран из полутора спрайтов занимает 5 секунд
Мощно, ничего не скажешь.
А в каком движке тебе будут ноды искаропки для такого жанра игр? Даже в юнити этого не будет, тебе придется качать из маркета, если не можешь написать сам.
Я прост слишком старый и привередливый чтобы жрать что дают. Встроенному обрезку не хватает выразительности. Хочу хуячить list comprehensions и прочий сахар. На тормоза похуй, не я же играть буду.
Дурачок, это стилизация под 80-е, жанровый троп.
Это копия, сохраненная 9 июня 2020 года.
Скачать тред: только с превью, с превью и прикрепленными файлами.
Второй вариант может долго скачиваться. Файлы будут только в живых или недавно утонувших тредах. Подробнее
Если вам полезен архив М.Двача, пожертвуйте на оплату сервера.