Это копия, сохраненная 11 апреля 2020 года.
Скачать тред: только с превью, с превью и прикрепленными файлами.
Второй вариант может долго скачиваться. Файлы будут только в живых или недавно утонувших тредах. Подробнее
Если вам полезен архив М.Двача, пожертвуйте на оплату сервера.
1) Простота.
2) Кроссплатформенность.
3) Бесплатность.
4) 2D.
5) 3D.
А так-же куча различных фишек вроде разветвленной анимации, охуеннейшего дебаггера с графиками и статистикой, подсветка синтаксиса прямо в редакторе с автодополнением, поддержки интернет протоколов и многое другое, о чем ещё не знал ОП первого треда.
С чего начать?
С изучения документации. Если не можешь в инглиш, и даже в гугл-переводчик, то есть варианты русскоязычного перевода части доков на ресурсе конкурирующей фирмы: 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/
Я посмотрел на твой код и забыл, о чём мы спорили.
Там нет прелоада. Там просто вызывается change_scene(с путём к ноде/сцене)
Я же имел ввиду такое:
var n = preload("path")
var m = n.instance()
self.add_child(m) # Вот здесь происходит добавление инстанса m к себе
singleton_autoloaded_node.add_child(m) # А здесь происходит добавление инстанса к некоему синглтону
И вот именно при добавлении инстанса происходит его вход в дерево сцен, у него отрабатывает коллбэк _ready и начинают вызываться в главном цикле коллбэки _process и _input
Я не прав?
Рисовать фанарт годотян у них время и скиллы есть, а игры делать не могут. Где ваши игры, годотяне?
Чьи ваши? Ты один тут сидишь!
Делай все пикчами, большие уровни из нескольких собирай. Тайлы в 2к18 нахуй не нужны, кроме как когда они в геймплейных фичах используются. Ну или для мобилок, если арт HD, пиксель-арт и мобилки целыми пикчами потянут.
В целом, я именно так и хотел. Уровень состоит из пикчи, на которую накладываются интерактивные объекты нодами.
А по производительности что более выгодно? Одна большая пикча или тайлмап?
Разницы в производительности нету
Ну конечно пикча, сам подумай.
Тайлмапы нужны только в одном случае: Если тебе нужно конструировать уровни из набора элементов. Во всех остальных случаях проще сделать, как тебе написали выше.
Сделай свой движок, в котором так можно будет.
Очевидно, что никто не хочет, ведь такие фичи в больших движках требуют солидных денег и большого количества времени. Но зачем на это тратиться, если и так всё работает?
>Когда уже можно будет в 3д так делать?
Как "так"? Гридмапы штоле?
https://www.youtube.com/watch?v=jD04Tua191Q
AtlasTexture в помощь. Вырезать куски из неё при помощи шейдерного языка.
>Тайлы в 2к18 нахуй не нужны
Прямо так не нужны, что каждая первая 2д-игра до сих пор их использует, ага.
От того, что тайлы стали размером 1024х1024 вместо 16х16, принцип их применения не поменялся.
Тайлы сегодня используются в основном только из эстетических соображений, а не из-за технических ограничений. К тому же, глядя на игру невозможно определить используются ли в ней тайлы на уровне движка, или просто из них в фотошопе уровень собирали. И да, из тайлов 1024 и выше сложновато будет собирать вменяемые уровни, если только не использовать их как разбитую на части большую картинку, а это уже как раз другой принцип.
Зато заебешься потом оптимизировать такие объемы видеопамяти.
idtech 5 и первую игру на нём выкатили в 2011-ом, и сразу чудовищно обосрались с ним, он был тотально не оптимизирован и поломан. Им там сколько лет и ресурсов потребовалось, чтобы его нормально допилить? 5 лет (если брать Дум, ремейк вульфенштейна и первую Evil Within всё равно ругали за те же самые проблемы даже спустя три года, пускай эти самые проблемы и не так сильно бросались в глаза) и новая версия движка. Я даже представить не могу, сколько десятков миллионов долларов беседка вложила в то, чтобы движок наконец стал хорошим.
>чтобы получить доведённую до ума мегатекстуру
Блять, вы охуели постить не читая тред? Сказано же, затребованная фича реализуется ВЕЗДЕ за счёт функций опенгл, известной как атлас. Ты закидываешь текстуры в атлас и этот атлас грузится за один дравкол. Затем ты натягиваешь куски этого атласа на все свои модельки в сцене. Хоть в годоте, хоть в уеч, хоть в юнити, везде есть поддержка атласов, а где нет явной поддержки, есть доступ к шейдерам, из которых атлас конструируется 10 строчками кода ГЛСЛ.
А ТЫ БЛЯТЬ УЖЕ ФАНТАЗИРУЕШЬ, КАК КРУПНАЯ ФИРМА БУДЕТ ВЕЛОСИПЕДИТЬ АТЛАСЫ ПОД ДРУГИМ НАЗВАНИЕМ (МЕГАТЕКСТУРА)
Ты сам-то не жопой читаешь? Изначально было сравнение с 2д тайлами и большими целыми пикчами, то о чем ты пишешь это как раз аналог тайлсетов на шейдере, а анон именно мегатекстуру хочет, чтобы целиком на сцену натягивать, без тайлящихся сегментов.
ХЗ, что он там имел ввиду. Он пукнул в тред и исчез, а мы тут уже втроём пытаемся понять, что же он имел ввиду.
Он сказал про idtech. Этот движок выделяется только мегатекстурой по той теме, которую оьсуждали до этого.
>>38438
Между атласом и мегатекстурой есть большая разница. Почитай:
https://blender.stackexchange.com/questions/66793/diffierence-between-texture-atlas-and-megatexture
Ссылка в ОП-посте.
>Вопрос в том, какие будет системки если ли в атлас пихнуть большую текстуру на весь уровень?
Если "просто большую текстуру" размерами допустим 16К, то будет мыло с метровыми текселями, если только уровень это не одна маленькая комната. А на текстуру с размерами мегатекстуры (например 128к) у тебя самого не хватит мощности чтобы просто создать такой файл, не то что в движок загрузить.
Ура!!!!
1D и 4D не завезли
Не наговариаай, 1D завезли
https://github.com/godotengine/godot/blob/master/scene/animation/animation_blend_space_1d.h
Помогите нанять Педро Эстебанеса!
>Besides the above, both Rémi and I will be asking you, the community, for a small raise. We are currently at USD 3000/month
Перестают им донатить, скоро загнутся. Последние несколько месяцев что-то никаких суперфич, даже у зенки не спиздили ничего.
Вместо того, чтобы фокусироваться на одном направлении и выпускать почаще релизы, тем самым постепенно удовлетворяя потребности хотя бы части пользователей, они делают сразу все, и откладывают ключевые вещи до крупных релизов. Без фич, отложенных до 3.1-3.2, версия 3.0х непригодна для серьезной коммерческой разработки. Для казуалок и небольшого инди нужен GLES 2, для графонистого 3D нужен как минимум окклюжен куллинг. В разработке новая система анимации со стейт машинами - и что сейчас, писать свои машины, чтобы потом все переделывать? Из всего этого складывается такая подвешенная ситуация, движок вроде есть, но пока только для пощупать, и так уже год. Я знаю что многие до сих пор сидят на ветке 2.х. А ведь сейчас выйдет 3.1, так потом придется 3.2 еще пол-года-год ждать. Куллинг, вроде, точно до 3.2 отложили.
https://twitter.com/reduzio/status/1068537073454460929
А потом обещает бету.
>и что сейчас, писать свои машины, чтобы потом все переделывать?
Ну если ты делаешь игру годами, то конечно фичи в движке будут появляться раньше, чем ты зарелизишься. Я не защищаю Хуана. Но тем не менее, можно делать небольшие игры и быстро сдавать их в стим.
Дело в том, что эту фичу анонсировали со скриншотами еще в июне. Сам понимаешь, это не такое масштабное нововведение, чтобы так долго его разрабатывать. Move_and_slide только в 3.1 починили. Множество улучшений для кинематик боди. Это все штуки, которые было бы удобнее иметь пораньше, а тяжелые вещи, типа рендера глес2, можно пилить и подольше. А тут все в куче делается, без всяких приоритетов.
У меня есть какая-то базовая сцена для всех объектов в игре. Предположим, я добавил пару таких в сцену-уровень. Но возникает вопрос: как я могу изменять свойства? Например, размер CollisionShape2D, спрайт и так далее? Если через export, то как именно? Или мне действительно придется создавать каждый объект отдельно как сцену?
Работай над проектированием своей игры. Сначала изучи тонкости работы с каждым классом (нодой).
Экспорт в скриптах нужен для того, чтобы видеть свойства в инспекторе редактора. Так что для обмена данными между скриптами он не нужен. У тебя все переменные скрипта публичные и этого не изменишь.
Не обязательно пилить каждый объект как сцену. Отдельная сцена предполагается, если у тебя объект либо должен спауниться на уровне, либо переходить из уровня в уровень.
>Экспорт в скриптах нужен для того, чтобы видеть свойства в инспекторе редактора
Именно так я и хотел, в общем-то. В самом редакторе спрайт менять у разных NPC (если они как сцена, то до спрайта не дойти, только делать его корневой нодой в сцене, но это мне очень удобно), менять у объектов размеры их CollisionShape и так далее.
Но если это работает так:
>Не обязательно пилить каждый объект как сцену. Отдельная сцена предполагается, если у тебя объект либо должен спауниться на уровне, либо переходить из уровня в уровень.
То тогда никаких вопросов нет.
Мда. Слайдшоу на 1050TI. Даже на минималках. Темно ничего не видно. И вишенка на торте - спрыгнул и застрял в текстурах. инб4 в геометрии
А я вообще хочу отработать фокус с репарентом, но лень включать комп. Идея заключается вот в чем: есть тестовая сцена А и тестовая сцена Б, кроме этого есть тестовая сцена-синглтон Х. В файле сцены А описана некоторая субнода со своим скриптом. Запускаем игру, грузится Х и А. Затем в А нажимаем кнопку и субнода перемещается из А в Х, затем вызывается change_scene(В) и субнода перемещается из Х в В.
В итоге мы должны получить такой функционал, что какие-либо объекты-ноды сдизайненные в одной сцене свободно перемещаются по всей игре из сцены в сцену. Но только в том случае, если сцены не грузятся повторно.
>Слайдшоу на 1050TI
Мне кажется у него ГИ сломан, я делал супер простую демку, просто куб с материалом и ги создал, не изменяя запустил, и когда камера близко к кубам заходит внутрь ГИ фпс до 35 падает.
Пока не было времени поковыряться, к тому же у меня движок собран из мастера, может там надо какую то особую версию, но это ж опенсорс, УНВР а ты ебись.
ГИ не при чём тут. Просто это GLes привет вам передаёт. Сделай ту же самую демку на полноценном OpenGL - получишь 4000 фпс.
Скорее, тут больше отсутствие оклюжен куллинга влияет.
Я говорю о том, что вот ты смотришь с двух метров на куб - 60фпс, подходишь к кубу падает до 35, как эта хуйня вообще влияет на расстояние? количество вокселей не увеличивается, расчитано до запуска.
Анончики, скинтье этот фаел, кто скачал, а то у меня с ошибкой скачалось, а интернет слабый чтоб перекачивать из-за одного файла.
Инструкцию прочитай. Файлы уровня слишком большие, из нет в архиве, надо качать git lfs
А на Github'е почему не скачаешь?: https://github.com/godotengine/tps-demo/blob/master/level/proptextures/LargeContainer1_container1_OcclusionRoughnessMetallic.png
А когда наоборот- нихуя интересного не происходит, так тут у всего треда жопы рвутся
Он же в отпуск собирался, не? А что там нового?
func foo() -> bool: return false
var bar : int = 0
Ууу... Это будет сложно. Насколько я понял работу со шрифтами, тебе придётся заготовить несколько шрифт-ресурсов одного шрифта но с разным размером, затем, если ширина лейбла больше, чем тебе надо - заменять кастом шрифт на меньший, пока длина не станет приемлемой. Но это какой то говноалгоритм, лучше подождём более толковых советов.
Для меня оказалось ломающей новостью, что размер шрифта можно менять!
800x600, 0:50
Тащемта, ничего сложного. Берёшь и без задней мысли делаешь.
Открываешь вкладку 3ДЭ, закидываешь модельки людей с колиженами в отдельные сцены, потом соединяешь на карте, которая тоже отдельная сцена. Как делать оружие - нагуглишь. Не забудь поставь галочки в инспекторе, чтобы включить все шейдеры и поддержку RTX.
У меня нет RTX, а Батла 5 и на старых видеокартах Батла 5.
google://alien 3 nes intro metal cover
хррр
Ну, я сижу в работе над сюжетом демки игры, так как с самим движком практически все основные механики закончены, не считая пары не особо критичных вещей. Поэтому пока и писать тут нечего.
мне важно, епт, говнюк
Почитать новеллы от Деревотян.
Ты не запостил, сам виноват.
В чем суть? Рамочка для редактора?
Про горы и тайгу гениально, блядь. Проиграл. Ты определённо мастер трешака.
А если C++ хочу?
Наоборот, я оправдываю свою ущербность низким количеством часов.
На плюсах не самый удобный воркфлоу, но все решаемо. Подводные плюсы в том, что нейтив скрипт голимо подключается и не везде работает (в html5 версии например). Поэтому я фигачу все в c++ модулях, которые вообще то предназначены для плагинов, но у меня они прикидываются классами, это же вопрос наследования по сути.
>Какие подводные камни Mono-версии Godot?
Никаких. Всё охуенно кодируется. А еще можно одновременно подключить годот и юнити в один модуль и ебашить кроссдвижковые ассеты.
using Unity;
using Godot;
public class UCross : MonoBehaviour
{
void Update(float delta) -> Combine.Tick(delta);
}
public class Gcross : Node
{
void _update(float delta) -> Combine.Tick(delta);
}
private class Combine
{
void Tick(float delta)
{}
}
Ba-dum-ts!
Но я не ставлю годот из стимопараши, а собираю его сам. Кроме того, если я запущу два годота на своей некропека, она, скорее всего, сдохнет.
Идите нахуй хейтеры
https://youtu.be/gy4E9nc5m0E?t=264
Известная личность в области компьютерной графики, предатель россиюшки и охуенный специалист
Ну лан.
>setget почему-то не работает
Разбирайся, почему не работает. У тебя что-то с кодом. Создай новый проект и погоняй в нём сеттеры геттеры. Я всегда так делаю.
export (bool) var mybool setget myfunc
myfunc:
_ _ print("mybool changed") #пробелами изобразил табуляцию
Кликаю mybool в инспекторе - в output ничего. ЧЯДНТ?
func myfunc(): там, вернее.
А в output "Set mybool". Но функция не триггерится.
УЕЧер, плиз.
Потому что не всем объектам надо быть интерактивными в редакторе, иначе все ляжет.
Куда ты в тридэ лезешь, дебил ебаный? Она тебя сожрёт нахуй!
Так и что? Мне МАССУ повышать, чтобы увеличить ТРЕНИЕ? Когда мне нужно только трение. БТВ, что он там, микроподпрыгивает, что максимальная единица начинает "скользить"? Понятно, что давление влияет на эту самую единицу. Но это единица, а не инфинити.
Зачем? Никто не пользует годот. Либо наоборот очень активно пользуют, что аж времени постить не остаётся. Выкатывайте уже свои проекты: скрины, видео, хоть что-нибудь! А то ощущение, будто двиг мёртв.
Присоединяюсь к реквесту.
От себя могу преложить свежих туториалов с ютуба. вот этот поразил меня хитровыебанностью:
https://www.youtube.com/watch?v=G2_SGhmdYFo
https://www.youtube.com/watch?v=U9B39sDIupc
https://www.youtube.com/watch?v=o3fwlk1NI-w
Вы только вообразите себе: будущие комнаты спавнятся как физические тела и благодаря физическому движку расталкивают друг друга в рандомном порядке. А затеем!
Надоел мне гейммекер. Думаю, а не вкатиться ли в годот?
Чего хочется:
1. Нормальный язык программирования. С типами данных (int, bool, float), с возможностью создавать структуры (классы, ну кароче свои типы), с модульностью (чтобы все было не в едином глобальном пространстве)
2. Качественная поддержки 2d. Чтобы не как в unity, где pixel perfect камеру завезли только вот вот недавно. Как, кстати, в годоте происходит масштабирование игр с низким разрешением. Как известно, пиксель арт можно скейлить только в целое число раз, чтобы не было уродских деформаций. Как годот эту проблему решает?
3. Возможность рисовать линии, прямоугольники, круги, спрайты как на холсте. Казалось бы, простая фича, а в юнити с этим проблема. И как годоте выполняется постобработка изображения?
4. Гамаку очень не хватает возможности анимирования, а так же работы с гуем. Слышал это в годоте имеется.
5. Хочется штабильной работы. Гамак то старый, стабильность его плюс, хотя люди и жалуются, что какие-то баги не закрывают годами. А годот молодой, развивающийся, баги для него естественны. И еще боюсь, не загнется ли проект.
Вот в общем-то основные требования. Основная платформа для меня - десктоп. Мобилки особо не интересны. Удовлетворит ли меня годот?
>И еще боюсь, не загнется ли проект.
Не загнётся. Я уверен. На остальное лень отвечать. Сто раз обсосали. Читай прошлые треды. Они еще не утонули.
Алсо, типизацию вон завезли в 3.1
Но лучше учи шарп.
Gdscript постепенно становится лучшей версией пайтона.
Поверхностный обзор прошлых тредов как-бы говорит не в пользу годота. Что-то недовольных много.
Что там, gles2 перестал падать-то уже?
1. С костылями умеет в c# и c++
2. и 5. Штабильность и какие то там perfect нельзя ставить в одно предложение с годо.
Я 3 раза пытался полюбить юнити. И каждый раз мне казалось, что пиздец юнити один большой костыль, а гм хороший и идеал для 2д.
Потом я получил заказ на проект с относительно сложной логикой и охуел от того, насколько гм плохо справляется с таким скоупом работы. После этого переход на юнити прошел как по маслу.
ПОЛАКОМИЛСЯ
Аналогично. Разобравшись прихуел, насколько ГМ инвалид. Однако считаю, что ГМ-инвалидам проще перекатиться на годот, поскольку язык очень похож.
Но если ты решил в одиночку делать серьёзный проект, то только юнити. УЕЧ слишком хорош, да и вообще есть неиллюзорная возможность словить ИНДУСТРИАЛЬНЫЙ СТАНДАРТ.
Ну и как там, 2д проблемы в итоге решаются? А то люди жалуются, что у них то пиксельную графику ломает, то щели между тайлами, то рисовать геометрические примитивы не получается.
Есть фри ассет pixel perfect camera.
А смысл? И так понятно, что в годоте модно сделать примерно то же самое, что и в юнити. Вопрос только, какой ценой. И если для простого 2D она ниже, то для сложного 3D выше. Например, намного сложнее написать модульный гейм фреймфорк и кастомные менеджеры (и это на C#, на GDScript ещё сложнее). Для себя выделил минусы: экспортный тип NodePath слишком абстрактен (а выставить в инспектор поля для конкретных типов нодов нельзя), выставленные переменные не работают в плейтесте и/или без атрибута Tool (что крайне нежелательно, так как судя по всему выполняет в т.ч. _process в эдиторе, да и вообще нагружает его). Физика не имеет тонкой настройки.
var label = Label.new()
label. <- вот здесь ничего нет.
Какого лешего я должен постоянно лезть в документацию, когда мог бы просто увидеть список всего доступного на конкретном объекте. Плохо зделоно тупо.
Тому шо типизации нет. Да и встроенный едитор так себе особенно когда есть божественный VSCode.
В VSCode работает, встроенный редактор теперь не нужен.
Создал и схоронил я сцену, пусть будет SomeScene. В скрипте главной сцены внутри _ready() я пишу
var some_scene = SomeScene.new()
и получаю Parser Error: Identifier not found: SomeScene .
Почему со стандартными я могу делать, например Label.new(), а со своими - нет ? Плохо зделоно тупо.
Как же мне создать в коде свою сцену?
Наверняка можно экспортировать поле для сцены в инспектор. Типа export(Resource) var my_scene, только вместо Resource тип сцены. Типа тип. А то вдруг там как с NodePath...
P.S.: по_моему_кодить_в_snake_case_это_моветон
>по_моему_кодить_в_snake_case_это_моветон
Это вопрос соглашений. В ГДСкрипт Хуану приспичило snake_case. Остальные согласились. Теперь конкретно в ГДСкрипт это НЕ моветон.
3.1 не завезли в релизы. Да и C#-господам плевать.
Ну для новичков читаемость повыше, да и ничто не мешает переменные кэмэлКейсом называть ебя при етом коуд консистэнси. А для господ действительно есть mono правда в альфе. Вроде честно, а вроде солюшен каждый раз ребилдить.
Обычные мысли жителя страны третьего мира, типа русского или аргентинца, все же в курсе почему прядка волос у годеточки белая?
Это больше применимо к китайцам, которые вынуждены часами добираться до работы и обратно. И ты либо тратишь деньги на мобильную дрочильню, чтобы хоть что-то делать, пока стоишь в переполненном вагоне метро, либо вешаешься от безысходности своей жизни.
Не думаю, что хуан обычный житель страны третьего мира с обычными мыслями. Это про тебя, пидараха, скорее такое можно сказать.
Просмотр ток-шоу по телевизору?
Но он хотя бы относительно на уровне передовых движков. Впрочем, если ТРИДЭ НИНУЖНО, то сойдёт и 2.x.
А если бы делал игры, то не был бы таким злым :3
?
В докментации не сказано, что class-members приватные или я не нашел. Про гетсет сказано: использовать, если надо кроме чтения/записи сделать какие-то действия с переменной.
А тут оказывается, надо обязательно городить методы, чтобы просто прочитать/записать значение. При том методы - обыкновенный ретурн и обыкновенное присваивание. Куча лишнего кода получается, для простейших действий.
Плохо зделоно.
>игрок лишается управления персонажем, но все остальные участники сцены могут что-то делать: разговаривать, передвигаться
Именно так. Триггерится катсцена, и в дело вступает CutsceneManager/Player, что отдаёт приказы по таймингам. Не знаю, как ты будешь проворачивать это в GDScript.
>>43532
>class-members приватные
Без явного указания они везде приватные.
>Из другого скрипта?
Подробнее про это. Допустим есть скрипт
/some/node/SomeNodeScript.gd,
в котором определен enum MyEnum {FOO, BAR}.
Я хочу в скрипте /another/folder/MyScript.gd использовать этот enum. Пытаясь просто обратиться к этому enum внутри MysScript я, естественно, получаю ошибку "Indetifier not found".
Как же мне использовать enum (определенный в одном скрипте) в другом скрипте ?
Разобрался. Можно сделать автолоад https://docs.godotengine.org/en/3.0/getting_started/step_by_step/singletons_autoload.html#global-gd и засунуть в этот скрипт мой enum
Назвать это "_g" (или еще как)
И в скриптах уже обращаться, например
_g.MyEnum.FOO или _g.FOO
Но выглядит это слегкуродливо.
Лютый костыль, хотя для новичков наверняка удобнее. Но все намного логичнее, когда можно просто обратиться к классу скрипта, что возможно в C# (mono). Там это как раз MyScript.MyEnum. Лучше уходить от GDScript, если делаешь что-то сложнее roll-a-ball, или начинаешь чувствовать, что язык не даёт сделать что-то просто и прозрачно. Я сам когда-то с гамака пересел с его недоязом - как с инвалидного кресла встал.
>Лучше уходить от GDScript, если делаешь что-то сложнее roll-a-ball
Но ведь Хуан старался! И сделал лучший язык в мире! Нахуй эти удобные вещи, вроде юнити и сишарпа, надо ебошить на годдоте и хуан-скрипте!
>Лютый костыль
Ну почему сразу костыль? Описанный способ выглядит примерно так, как если в нормальных языках написать модуль-файл и импортировать его глобально для всех других модулей. Хоть и сделано это способом, не совсем для этого подходящим.
>что возможно в C# (mono)
До стабильного релиза 3.1 только сейчас надо закрыть 777 issue. Как там альфа вообще, стабильна? Можно пользоваться?
Так-то оно так, но полезнее ведь сразу парадигмы постигать. Mono в целом работает, но проект не контролируется автоматически если например удалил скрипт, приходится вручную удалять строку с ним из .csproj, так же каждый раз тыкать Mono - Build чтобы отображались экспортные переменные но они один хрен не работают в плейтесте.
>>43573
Не все попадают сразу на сишарп, я вот когда-то ковырялся в гамаке и думал, нахрен мне эти ваши классы и векторы, что это вообще такое? НЕ ЖИЛИ БОХАТО НЕЧА И НАЧИНАТЬ Пока не упёрся в потолок говна. Кто-то вообще сидит на УЕЧе не зная о существовании неблевотного интерфейса и возможности делать игры.
> упёрся в потолок говна
Ты не понимаешь. Хуан-скрипт это свобода! Никакого давления внешней среды, это же новый гипертекстовый Фидонет. Это не "уперся", но постиг. Это не "потолок", но небо в алмазах. Это не "говно", но Хуан-скрипт.
А ведь ты прав.
>выбора-то всё равно нет
Есть.
>движок-то один
Как бы это сказать-то...
>на шарпе это было бы не сильно проще
Сильно проще, но не сразу. Ещё неизвестно, в какие дебри говнокода на GDScript это выльется. Взвоешь, а ведь мог бы делать игры.
Самый простой способ, как по мне, это подсмотреть каким образом делаются катсцены, внезапно, в RPGMaker'е. Вкратце, там есть набор базовых действий, типа "двигать персонажа/камеру x клеток вверх/вниз/влево/вправо", "начать диалог", "проиграть анимацию", "ждать", "затемнить/растемнить экран" и их можно располагать друг за другом. Что-то подобное нужно воспроизвести с помощью кода и какого-нибудь таймлайна.
В общем-то, ты полностью раскрыл мою идею того, как это сделать. Пока я занят реализацией всех этих "пройди туда" и "проиграть анимацию".
Таймлайн особо не нужен, ибо все функции и так будут друг за другом, выполняться будут последовательно, достаточно ввести ту же функцию простоя, когда ничего не происходит, чтобы был некоторый дэлей между действиями. Хотя, тут тоже еще как посмотреть. Если мне нужно будет сразу 2 и более действия сделать одновременно, например, два персонажа одновременно куда-то идут и куча подобных, то нужно будет придумать, как это сделать.
Так какой же выбор у меня есть?
tween.connect("tween_completed", my_node, "my_func")
(где my_func метод без аргументов)
И в итоге получаю ошибку, что expected 0, but called with 2 2 переменных из сигнала
Неужели нужно городить хуйню из оберток, чтобы не менять объявления методов?
Создал проект, никаких действий произвести не могу. Когда нажимаю, написано что на пике.
Скачал godоt только сегодня.
Попробую переустановить, на этот раз через стим
Хуй у тебя сырой, долбик ретроградный.
> Какой выбор?
Можешь закинуть свои сцены в SFM, сделать там кинцо и затем снятое кинцо проигрывать в игре медиаплеером.
Например, есть
enum Foo {Bar, Baz}
и я хочу Foo.Bar конвертировать в "Bar". Нужно для отладки. Самый последний вариант - заворачивать в match, но я не хочу.
Мне кажется, я где-то уже видел решение, но сейчас нагуглить не могу.
enum оказался простым Dictionary, итого
enum Foo {Bar, Baz}
print(Foo.keys()[Foo.Baz]) # печатает Baz
Можно, но я решил, что мне проще будет именно таким способом. Да и я уже практически закончил, осталось привести код в читаемый вид.
Как бы делал катсцены я (если бы я делал игры, ээх):
У меня был бы ИИ-сервер, управляющий всеми НПЦ в игре. Согласно процедурному алгоритму, либо согласно конфигам (если это квестовые НПЦ, например), каждому из них выдаётся распорядок дня, что они должны делать и куда ходить. Что и с кем говорить. Причём ИИ-сервер выдаёт задания с вариативностью, а НПЦ уже, получив список на текущий период игрового времени, кидает дайсы на то, чем он займётся из имеющегося в списке.
Далее. Во время игры игрок меняет ситуацию. Меняют сами НПЦ. Меняется погода. И т.п. Во время этих изменений ИИ-сервер интеллектуально обновляет списки действий. Например, очередь обновления списков строится радиально от места происшествия. Приоритеты событий выставляются адекватно происшедшему. Например, если за углом бомбануло, то с большой долей вероятности большинство НПЦ разбежится в ужосенах. И только парочка бесстрашных подойдут посмотреть что там бомбануло?
А теперь о катсценах
Согласно вышеописанной игровой логике, катсцена - это когда ИИ-сервер подменяет ежедневные списки действий НПЦ вокруг на линейный список, куда идти и что говорить и после кого. В том числе функционал НПЦ навешивается на твоего ПЦ, а тебе выдаётся фрикамера. Или даже не выдаётся, если я Кодзима дохуя и желаю срежиссировать каждую мелочь.
Ну, мир у меня довольно статичный, поэтому составление расписания мне не нужно, во всяком случае, пока.
Из кода это выглядит как-то так:
Есть gd-скрипт, который загружается, когда ты встаёшь на зону триггера скрипта. Все скрипты катсцен наследуются от CutscenePlayer, в котором прописаны основные функции, вроде получить участника катсцены и саму сцену закончить. Изменить нужно только функцию play(), прописав необходимые инструкции, пример как на пике и на вебмке то, что воспроизводится (да, новый таймер каждый раз, утечки памяти, знаю, переделаю).
На графику не обращайте внимание, на скорую руку рисовал, пока движок дрочил.
Я спиздил этот код таймера прямо с годотовской документации, насколько я понял, в таком виде таймер одноразовый, то есть после работы он как раз сборщиком мусора уничтожается. Но все равно мне не очень хочется что-то создавать в глобальном скрипте не из него самого, лучше таймер на сам скрипт навешу. Он все равно после срабатывания удаляется из дерева.
А в целом, это была чуть ли не последняя необходимая вещь, чтобы игру делать. Нужно еще будет придумать систему сюжетного появления катсцен соответственно прогрессу. А дальше остается всякая красота и полировка, чтобы выглядело не так сыро. Наконец-то можно и игрой занятся, а не ебаться с движком.
Двачую. Одно дело когда ты полный C#-скепсиса с подозрением смотришь на GDScript, но всё же решаешь попробовать и тут же отбрасываешь, а другое когда новичок вкатывается и видит GDScript, не зная ничего лучше и потом думает что везде так хуёво.
>>44180
>главное, что тебе самому нравится
Ну это да. Кому-то нравится ковырять говно, например, они осознают это и признаются в этом. К ним вопросов нет.
>учи годоскрипт
Чё там учить-то? Он составляет малую часть функционала нормального языка. Ещё и приправлен ублюдочным снэйккейсом. Хуже только гамак.
Говном?
Именно. GDScript на 10 голов выше по функционалу. Там нет даже встроенных классов, вроде Vector2 или Vector3, приходится вручную x=n y=n z=n присваивать, а имитируется это через такие костыли, что страшно становится! БТВ, всего остального тоже нет. Это даже не недоязык, это чистой воды мракобесие!
>Там нет даже встроенных классов, вроде Vector2 или Vector3, приходится вручную x=n y=n z=n присваивать, а имитируется это через такие костыли, что страшно становится!
Не подумайте, что я защищаю гмл (как и гдскрипт тоже, лол (только шарп! только хардкор! Следующий тред озаглавим шарповым, если не забуду)), но не вижу ничего страшного по быстрому склепать нужную сущность, например, вектор, и держать её в публичном/глобальном модуле. Со всеми нужными операциями. Это вопрос смекалочки.
функция Вектор3(икс: реал, игрек: реал, зет:реал) : массив(0,2);
Однако же следует понимать, что в 2к19 все велосипеды написаны и если продукт, продающийся в стиме, предлагает тебе велосипедить векторы, то это очевидное наебалово. Но как и везде есть нюансы. Годот, например, меняется кардинально от версии к версии. Выучил 2.1? Переучивайся на 3.0 с совершенно иными подходами к работе. Выучил 3.0? Правильно. переучивайся на 3.1. А гамак типа уважает своих олдфагов и не тревожит их новыми фишками.
С шарпом та же хуйня. Я познакомился с ним в нулевых. Блеванул и забыл о нём на долгие годы. А в прошлом году посмотрел на последние спецификации и охуел как его до ума довели!
Поэтому, возможно нам стоит немного подождать пока горшочек Хуана перестанет варить новые версии годота и продукт стабилизируется, чтобы не получилось так, что полгода велосипедишь костыли для работы с тайлмапами, а потом хуяк и Хуан выкатывает полноценный инструментарий, который уделывает твои костыли. А ты все эти полгода мог бы игоры делать, зная, что вскоре Хуан подгонит инструменты. Отложить картографирование на потом.
Кирилл - я!
>почти копия Python.
Суть не только в синтаксе, но еще и в доступном АПИ. ГДскрипту довольно многого не достает.
АПИ это не свойство языка.
У тебя есть pixel perfect camera.
А тут чувак обошёлся и без неё:
https://www.youtube.com/watch?v=QW53YIjhQsA
https://twitter.com/reduzio/status/1082315420735016962
Все жду, когда он спизженные у зенки и других движков наработки начнет внедрять.
Но не долго. Оказалось, что хоть код в гд скрипт и пишется в 3 раза быстрее, но выполняется он в 5 раз медленнее. В общем, я был в печали, уже подумывал обратно на шарп укатиться, НО тут я вспомним про многопоточность. И охуел от полного отсутствия документации по ней. Думаю, что если разделить выполнение кода по потокам, то можно получить достаточную для меня производительность.
Может кто примеров накидать по работе с потоками? Реально ли, например, цикл for i in range(array.size()) разбить на 4х потока и как?
var thread = array.size()/4
for i in range(0,thread)
//first thread
for i in range(thread,thread2)
//second thread
for i in range(thread2,thread3)
//third thread
for i in range(thread3,thread*4)
//fourth thread
>Изначально выбрал годот т.к. знаю шарп жирдяй
Нужно быть дауном, чтобы не выбрать в этом случае юнити.
>знаю шарп
>решил попробовать GDscript. Он мне понравился куда больше
Говноедская сущность взыграла.
Короче, укатывайся обратно на шарп, а лучше сразу на юнити. Либо жри говно хуана и не возникай.
покормил
Хуану определенно стоит сделать автоматический конвертер кода гдскрипт в С++ (как в UE4, да и GM вроде такое есть). Тогда все будет 10/10.
>>44396
Ты прям слишком подробно все описал, мог бы и лишь одну первую строчку оставить (сарказм). Но даже так видно, что у тебя код будет выполняться в разных потоках, но по очереди (пока первых цикл не закончится - следующий не начнется). Многопоточность уровня /gd.
Я свой говнокод почти написал, но там аргументы не передаются из threads.start в ForLoop (too many arguments). Да и хуй с ним, проблема больше не этих функциях, а ограничениях многопоточности.
>Нужно быть дауном, чтобы не выбрать в этом случае юнити.
Надо быть дауном, чтобы выбрать юнити. Причем в любом случае - для 3d есть божественный ue4, для 2d есть куча движков, в которых оно реализовано лучше. А уж от ценовой политики юнити с обрезанием функционала базовой версии совсем блевать тянет.
>>44417
Не понял, что ты в виду имеешь.
>конвертер кода гдскрипт в С++
А там разве не так? Всё хуже, чем я думал. Нахуя Хуан навелосипедил? Можно было просто питон закинуть.
>для 3d есть божественный ue4, для 2d есть куча движков
В принципе я согласен, что простое 2D лучше делать на C# годоте. Но УЕЧ слишком индустриально стандартен для прототипирования капсульной абстракционки. Юнити это золотая середина.
>от ценовой политики юнити с обрезанием функционала базовой версии совсем блевать тянет
Тут ты прав. Осталось применить смекалочку.
Dark Skin - этим всё сказано. Но это фиксится микропатчем.
https://store.unity.com/compare-plans
Конструктивная критика юнитибогов и надменные улюлюканья уечедаунов.
Хуан перестал проплачивать рекламу в треде?
То что для одного анальная жопоебля, для другого воркфлоу и тулчейн.
Вот на скрине буквальный порт First Person Shooter туториала с оф сайта.
Как можно заметить и экспорт в html5 сразу работает.
Из костылей только некоторое количество бойлерплейта, ну это и так понятно, плюсы же. API тот же самый по сути.
Ну можно еще назвать костылем то, что работа с проектом годота. Но тут опять же одни плюсы - компилирую актуальную версию из мастера, можно глядеть устройство под капотом. Перекомпиляция только когда обновляется версия, в остальных случаях только пересборка моего модуля + линковка.
Охуенно!
Именно так делала игоры старая школа: студия/команда получает исходники движка от издателя/разраба и ебошит на сях/крестах модули, глядя в исходники движка, как в документацию.
Сам стремлюсь к этому, но за годы бейсика мозги отсохли и кресты даются с трудом.
>Как это происходит в UE4
И че? А тут я просто создаю новый класс.
> снейк кейс
Божественно, да. Верблюжатина которая не может решить как правильно UI или Ui не нужна.
>можно ещё самому движок переписать с нуля.
Плох тот программист, кто не может написать хотя бы рендер в опенгл самостоятельно.
>Верблюжатина которая не может решить как правильно UI или Ui не нужна.
Может. Нашёл проблему, лол. Ну пляши дальше по шифту с минусом, и ищи точки в коде.
>Плох тот программист, кто не может написать хотя бы рендер в опенгл самостоятельно.
Нахуя ему тогда движок с редактором? Целевая/основная аудитория как раз геймдизы по большому счёту, которые пишут логику игры в лучшем случае.
>Нашёл проблему, лол
>Сам докапывается до несуществующих проблем с точками
Ясно.
>Нахуя ему тогда движок с редактором?
Не разводи демагогию.
>Не разводи демагогию.
>>Нашёл проблему, лол
>>Сам докапывается до несуществующих проблем с точками
>Ясно.
Ясно. Не разводи демагогию.
А с тобой ещё заранее.
Ах ты хуй!
Чего-нибудь более привычного типо сообщений нет?
Идеально бы было на серваке иметь только коллизии, а на клиенте держать только визуальщину.
Пока из официальной методички вижу только решения типа клиент-он-же-сервер и headless экспорт.
Никакие, мультиплеер в годоте ни на что не годен, кроме может быть простых пошаговых игр. У него нет полноценной репликации, как в уече, механизма компенсации лага, cliend-side предикшена.
Теоретически, мультиплеер запилить можно, но это будет неиграбельно, особенно если в твоей игре нужно будет регистрировать попадания из огнестрела.
Может он делает локальный мультиплеер с клиент-авторитативной системой. Но в целом ты прав. Это всё ковыряния в говне. Годоту нужно стороннее решение вроде Photon. Впрочем, другим движкам зачастую тоже.
Согласен. Кто способен, тот сам знает.
Две недели назад у Improbable пришлось отключить лицензионные ключи редактора Unity, так как компании не пришли к соглашению. «Это уникальный случай — и мы не относимся к нему легкомысленно, — но Improbable не оставила нам выбора. Это был единственный способ защитить целостность и ценность нашей технологии и разработчиков Unity», — утверждает Unity Technologies.
Вырвано из контекста, и всё равно не несёт смысловой нагрузки. Хоть бы ссылку на оригинальную статью оставил.
>Apparently, you didn’t understand what they were saying. You can still use Unity however you want as long as it’s for your own game. What they take issue with is if you are using a Unity-based server service that you intend to lease to other people for them to use in their games. That’s when your project stops being a game and becomes a platform, and that requires special permissions and partnerships with Unity. And that is what Improbable failed to do for two years, so Unity deactivated their licenses. It couldn’t be any simpler a concept, nor any more evident that Improbable is very clearly in the wrong over this whole situation.
Какой еще нужен контекст нахой? Порочна сама практика, сама идея, что Юнити может взять и отключить тех кто им не нравится. Кстати, то что ты процитировал, в духе барин разрешает пользоваться пользователям, не стоит и битого яйца - ведь в лицухе написано совсем другое.
Improbable намудрили свою платформу на базе сервиса Unity. Как правило, такая практика запрещена, но юнитеки решили опустить этот пункт (видимо, чтобы инди-разработчики таки-могли себе позволить разгуляться, или же наивно расчитывая на честность). В итоге юнитеки пытались аж два года договориться о сотрудничестве, как положено, но их послали, чем вынудили их внести этот пункт, на что они действительно имеют полное право, и порвать отношения. Считай, что ты поднял публичный сервер в майнкрафте на своей машине, мол, вот, можете пользоваться моей машиной (сервером) для своей игры, но забил на безопасность, а школьники не оценили великодушия и развернули на твоей машине свои сервера с блэкджеком и шлюхами. Ну это же их игры, хули. Надо быть последним омеганом, чтобы принять подобное с окейфейсом, вместо того чтобы повыпилить особо умных. "Ну что поделать, пусть я этого не подразумевал, пусть вы перефразировали, перетрактовали - ваша правда." Вот что ты называешь порочной практикой.
Нужно было предупреждать игроделов, что эта хуйня может в любой момент отвалиться.
Пиздос, еще и оправдывать сапог барина в жопе. Прям по понятиям, чтобы юнитеки не выглядели омеганами (ахуенная причина) они вертят как хотят уже заключенное соглашение. Причем делают это во время торгов с этой самой компанией, хаха, случайно совпало видимо, а не потому что жадность взыграла. Причем соглашение вертится так, что все кто пользуется этой поделкой тоже его автоматом нарушают, но добрый барин юнитек говорит, что ничего страшного, пользуйтесь, ну мало ли что там в соглашении у нас написано ))) подумаешь мы тут одну фирму пытаемся разорить ))) вас это завтра не коснется )))))
Кстати хз что там за поделие, но оно работает не только с юнити как ты утверждаешь (а судя по тексту, наверняка и не на инфраструктуре юнити, а на инфре амазона, так что юнитеке максимум перепродаваны), но и с УЕчем например.
С опенсорсом такой хуйни с барскими запретами в принципе быть не может. Пользуешься годотом - хоть Гитлера с его помощью воскрешай.
Опять напомнить юнитипидару, как он отсасывает у анриала с проглотом? Юнитипидарка хочет чаще слышать свое название, ну хорошо.
>>45724
Всяк кулик своё болото хвалит.
>>45761
Пошёл делать на юнити. Факт в том, что ни в УЕ4е, ни в Godotе мой прототип не развивался так быстро, как в юнити пробовал даже CE. И я не говорю, что годот плохой движок, просто в редакторе отсутствует плеймод с возможностью твикинга переменных на лету, сигнал при изменении значений в инспекторе. Так же экспортный тип NodePath слишком абстрактен и требует особого анального подхода, в т.ч. по причине отсутсвия вышеописанного сигнала. Исправят - будет приличный шанс, что перейду на годот, до обнаружения новых недоделок. Редактор УЕ4а же слишком нагружен, да и прототипировать в нём моветон.
Чья бы мычала, юнитипидар, говношкольники столько говна выкатили на ютиговне что уже зашкварно юнити пользоваться.
Поэтому все задаются вопросом, как превьюлого говнюньки убрать в бесплатной версии, потому что оно знак качества.
>Игры, созданные глобальными кириллами: https://godotengine.org/showcase или https://steamcommunity.com/app/404790/discussions/0/412448792354265655/
Вопрос - я все правильно понял, или все же можно как-то смотреть значения переменных в ноде с cs скриптом внутри годота на лету?
Ты прав. У них эта проблема уже год висит, сначала была в milestone 3.1, теперь вот в 3.2. https://github.com/godotengine/godot/issues/15832.
Пиздец, думал наконец нашел подходящий движок для себя, а тут такое.
Йобу забыл прифотошопить.
>3.1 (preliminary changelog)
>Optional static typing in GDScript.
>Warning system in GDScript.
>GDScript keyword class_name to register scripts as classes.
>Simple expression language independent from GDScript, used by inspector boxes that accept numeric values.
Вместо движка, пилят свой никому не нужный васянский гдскрипт. Найс.
Хуану донатят 10к$ в месяц чтобы он игрался в дизайнера языка программирования.
Думаю это можно накодить за день.
>За 3 года сделано НИХУЯ
Он за полтора года сделал рендер как в блендере, только там толпой пилят, а здесь один. В юнитиговне вообще никаких существенных улучшений.
>не пердите, юнитипидары.
То есть большая компания, честно ведущая бизнес, оплачивающая сотрудников и т.д. тебе не нравится, а сосать говно из жопы рыжего кидалы, за которого 90% кода пишут бесплатно контрибьюторы тебе норм.
Это какая особая форма куколдизма штоле?
>Он за полтора года спиздил готовые шейдеры
Ну охуеть теперь. Это ж надо уметь так.
В блендере этот eevee уже давным давно запилили, а пилят они 2.8 в котором новых фич столько, сколько Хуану за 2 жизни не осилить.
>Какие новые фичи готовы за 3 года кроме иви?
https://www.blender.org/2-8/
Популярно показано https://www.youtube.com/watch?v=lPVpg4_POww
О, сверхлюди подъехали, которые просто берут шейдер из одного продукта и просто добавляют в другой.
Какая ассоциация с выходом новой версии блендера? У меня только одна - опять все плагины которыми пользуюсь отвалятся.
>C# как был в жопе, так и ест
Так он просто нахуй никому не всрался, кроме пары опущенцев, которые не могут в нормальное программирование.
Я понимаю, что ты ничего не знаешь о редеринге и поэтому красивая картинка тебе кажется каким-то невероятным скиллом и магией. Но вообще-то рендеринг пайплайн это самая простая часть движка, тем более когда все алгоритмы разжеваны и обмусолены тысячи раз.
Нагугли opengl pbr и ты найдешь сотни туториалов.
Это НЕ СЛОЖНО сделать.
А вот сделать приятные с точки зрения UX редакторы контента очень сложно. Там тысячи мелочей, на которые ты тупо не обращаешь внимания, но которые сразу чувствуются, когда ты пользуешься, например, юнити, или запускаешь говнот.
>The Interface
Изменили интерфейс и теперь хуй что найдешь, вау! Дура, функции где новые за 3 года кроме иви, нахуй твой интерфейс.
Какая-то контора использует юнити-ориентированный сервис и используют имя юнити в рекламных целя, то есть, говоря по простому, зарабатывают на твоем продукте деньги, и не хотят делиться.
Естественно им дали по щщам.
Это нормальная практика.
Да пошел нахуй со своим юнити, долбоеб, хули ты с ним носишься.
>функции интерфейса это не функции РРЯЯЯ!!11
>>45937
>функции где новые
https://www.youtube.com/watch?v=SELl30jhMeQ
>не иви
>The Viewport
>новые функции
>заменили иконки кнопок и цвета панелек в интерфейсе за 3 года
Понятно, блендеропидар, твой обосрамс засчитан.
Во первых одного иви хватает, чтобы чтобы уже люто надрачивать на блендер. Полноценный редактор моделей с реалтайм таким-то графоном.
Во вторых там рили интерфейс удобнее чем в 2.7
И там у модификатоторов есть новые фичи. Новые ноды есть у суклеса.
>заменили иконки кнопок
Не позорился бы хоть своим незнанием. Там весь интерфейс переделан. Теперь у блендера топовый UI и у бедных хейтеров блендера не осталось аргументов лол.
grease pencil уникальная фича не имеющая аналогов
>а пилят они 2.8 в котором новых фич столько, сколько Хуану за 2 жизни не осилить.
>какие фичи кроме рендера который хуан тоже сделал
>да одного рендира хватит!
>кнопачки стали удобние!
Вся суть хуана хейтеров, что у юнити огромная команда, что у бленедра человек десять хуярят, а функций за 3года с гулькин хуй, менюшки туда сюда двигают, зато давайте других пообсираем.
Так и сделаю, если все же решу остаться на годоте. Очень нравится его система нод и еще ряд других, менее уникальных вещей. Но GDscript - самый тормозной язык их всех, которые я встречал, а чем больше я изучаю работу шарпа в годоте, тем больше охуеваю от костылей. Вот я, например, рассчитывал, что метод GetChildren() мне вернет массив класса Node, но нет. Он возвращает какую то ебалу.
Еще есть сильное подозрение, что за тормознутость годота отвечает не только GDscript, но и его API. Боюсь, что API станет бутылочным горлышком для шарпа. Но это еще предстоит проверить.
>>кнопачки стали удобние!
Если это все, что ты почерпнул из обновления, то либо: ты тролль; ты даун; ты никогда не пользовался блендером; ты никогда не запускал 2.8.
Это по сути НОВЫЙ блендер.
>Еще есть сильное подозрение, что за тормознутость годота отвечает не только GDscript, но и его API
this
Почитай в их блоге про архитектуру движка.
Мне до сих страшные сны снятся. Это клоака говнокода и тормозов.
>Вот я, например, рассчитывал, что метод GetChildren() мне вернет массив класса Node, но нет. Он возвращает какую то ебалу.
Помню эту ебалу. Либо мы в прошлых тредах это обсуждали, либо я где-то в доках такое видел.
>Это по сути НОВЫЙ блендер.
Да похуй, все то же самое с красивым интерфейсом, ты пердел про фичи, что за две жизни не написать, и конкретно ни одной не можешь привести, пиздливый бленедропидар.
>все то же самое с красивым интерфейсом
не все то же самое
>с красивым интерфейсом
красивый интерфейс - это когда новый скин вместо старого нарисовали. а в блендере у нового интерфейса новые фичи.
Хуан за 5 лет так и не осилил нормальный докинг панелей.
>никогда не запускал 2.8
Я запускал. В 2.8 кроме иви нихуя нового не добавили, кроме напроч отмороженного интерфеса и за каким то непонятным хуем измененных хоткеев. Плохо сделали короч, тупо.
Иивии - никому не упавшая свистоперделка без задач, а могли бы новых инструментов моделирования запилить, или хотябы улучшить обрезанное неполноценное говно, что есть сейчас.
>юнити-ориентированный сервис
Хуюнити хуюриентированный. Это просто сервис шардинга, и он работает и в УЕ4 и не только.
>используют имя юнити в рекламных целях
В юсашке не запрещено указывать, что твой продукт совместим и работает с хуйня нейм.
>естественно дали по щам
Естественно только для гопника.
>нормальная практика
А изначально ты говорил про честность, вот это маневры.
>Ты сам придумал хуйню про ждать
>Прикидываться, что не понимает, что даже на главной странице движка все усыпано шуточками про ожидание, ведь название образовано от пьесы в ожидании Годо
Прими таблетки, шизюнь. Блинер как был говном без задач, так им и остался. Тот же 2.7х, только в новой обертке
Блендер был просто одним из лучших 3д редакторов, а стал просто самым лучшим, без альтернатив.
Не :)
Ты упомянаешь это не к месту, долбоеб.
Тебя спрашивают назови несколько твоих мифических крутых фич добавленных за 3 года, а ты все какие-то ссанные ссылки, стрелочник ебаный.
>Viewport
>Multi-Object Editing
>Grease Pencil
>Principled Hair BSDF
>Principled Volume Shader
>Cryptomatte
>Random Walk Subsurface Scattering
>Subdivision and Displacement
>Workspaces
>Tools and Tool Settings
>Status Bar
>Properties Editor
>Pie Menus
>Toolbar
>Gizmos
>Collections
>Outliner
И не за 3 года, а за год.
Юнитипидар-блендерщик это в сто раз хуже просто юнитипидрилы. Ты просто червь-калоед, ты говно червя-калоеда.
> Но GDscript - самый тормозной язык их всех
Кто тебе сказал, где бенчмарки? Пока это беспруфный вскукарек маньки. С C# быстрее не будет, ибо производительность упирается в ядро движка, в том числе и скриптовое API.
Нужна скорость - никто не мешает тебе пилить на С++ через gdnative, но опять же, быстрее, чем работает ядро движка, его никак не разогнать.
Удачи провести следующие 10 лет для того, чтобы получить 10% от функционала версии блендера десятилетней давности.
Чем только аутисты не занимаются, чтобы игры не делать.
Нахуя тебе новые фичи, ты долбоеб? В каком-нибудь 3д максе новых фич уже нет лет как 10, просто потому, что уже нехуй придумывать, программа и так уже подходит для создания 3д арта любой сложности. То же самое и с блендером, это адовый комбайн, на котором можно запилить всё что угодно, какие новые фичи тебе еще всрались? Ты уже изучил все средства для моделирования, анимации, работы с материалами и тебе этого мало?
Так ты не Хуан.
Он до этого лет 10 профессионального программировал в геймдеве, работал на студию, зарелизил кучу игр. А ты простой хуй, смекаешь что к чему? И скриптовый язык это не rocker science, для опытного программера вполне посильная задача, книг на эту тему предостаточно.
>>45921
>а пилят они 2.8 в котором новых фич столько, сколько Хуану за 2 жизни не осилить.
>пиздеж блендеропидарки
>да, это пиздеж, но нахуя тебе новые фичи, господин?
Какая то шизофрения блендеродолбоебов. Вообще как-то странно, нахуя Хуан пилит, если есть уже юнитиговно, а нахуя блендеродауны пилят, если есть полно 3д редакторов? Ну я понимаю когда юнитпидар говорит что годот и вообще опенсорс говно, но когда блендеродаун хейтит годот и является юнитипидаром это действительно >>46054
>да, это пиздеж, но нахуя тебе новые фичи, господин?
Ты так и не ответил, каких тебе фич не хватает в блендере для стандартого в геймдеве workflow - скульптинг, ретопология, развертка UV, запекание текстур, риггинг, анимация? Я просто не пойму, что за новые фичи тебе всрались, когда в блендере и так уже все есть.
Так это у тебя маневры, мань. Тебе бесплатно дают рабочую программу, не какую-то бету или недоделку, а вполне полноценную среду для создания арта любой сложности, при этом её поддерживают и допиливают, доводят до совершенства, запилили вот новый современный реалтаймовый рендерер, которого нет даже в платном 3д софте, а ты начинаешь хрюкать, как пидораха, что слишком мало новых фич в релизе. Каких тебе фич не хватает - ты сам не можешь ответить, главное ЧТОБ БЫЛИ ФИЧИ, КАК У УНИТЕ, В КАЖДОЙ ВЕРСИИ ПО ДЕСЯТЬ ФИЧ!!1
Во-первых, я другой анон.
Во-вторых,
>не какую-то бету
>2.80
>не какую-то бету
В-третьих, маневры конкретно тут
>для геймдева
На блендере целые фильмы делают, если для тебя мамкиного индипрограммиста новой фичи не появилось, не значит что их там нет, не так ли?
>Хуан 10 профессионального программировал в геймдеве, работал на студию, зарелизил кучу игр.
О, а это интересно. Список есть? Нашел только 3 штуки, какой то ноунейм квест, футбол и лего кораблик. Причем там тонна программистов, непонятно какую часть он делать. И еще несколько игр, где он музыкантом записан.
>Тебе бесплатно дают рабочую программу, не какую-то бету или недоделку, а вполне полноценный движок годот, ну что тебе еще надо, юнитипидар?
Ничего!
А ты не думал, что люди выбирают блендер и юнити просто потому, что это лучшие из доступных продуктов в соответствующих категориях? А не из-за какой-то идеологии.
А вот зачем кто-то выбирает заведомо худший годот это для меня действительно загадка.
>лучшие из доступных продуктов
Не смешно, анриал лучше юньки, зебра, сабстенс, майя лучше блендера, все доступно, если ты конечно не даун-конч.
>анриал лучше юньки
лучше только графен из коробки, что совершенно не имеет значения для меня. все остальное, редактор, компоненты, c#, юзабилити в юнити лучше в разы, не надо тут. юнити намного дружественный движок к любителям.
к тому же уеч требует мощной печи и не является доступным любому движком. про платные редакторы вообще молчу
>майя лучше блендера
Чем? Тем, что надо заплатить денег и дать выебать себя в жопу лицензионным соглашением?
Если аргументов меньше 5, то все равно создаются объекты-пустышки и передаются в функцию.
Если аргументов больше 5, то остальные просто тупо отбрасываются.
Почему же гдскрипт такой медленный и кривой, да.
Двачую, нахуй вообще наворачивать всё это программирование мышкой, если оно медленнее и тебе всё равно надо будет подтыкать си через гдшные УдОбНыЕ биндинги.
>для меня
Ну а другие движки для других лучше, хули ты развонялся, юнитипидарка?
>>46119
Ну к примеру в майе есть ахуительный инструмент ретопологии. Да там много чего есть, зебра для скульптинга в сто раз лучше. Про сабстенс и речи нет, блендероговно не запекает пбр карты. Они сделают это, но нужно подождать.
Причём в треде абсолютно третьего движка срутся между собой пользователи других двух. Да ещё как обычно блендер приплели. Вот блендероёбы самые токсичные дауны нахуй.
Я бы тебе объяснил, в чем смысл данного кода, да что-то лень ссать тебе в рот. Вкратце - variant это алгебраический тип данных, типа юниона, только круче, он может хранить переменную скрипта любого типа, фиксированное кол-во параметров - чтобы набор данных всегда имел фиксированный размер, так оптимизатору проще положить его в линию кэша процессора для производительности.
Добавлю, что от внутрянки движка глупо ждать какой-то красоты и элегантности, чаще всего это уродливый и беспощадный код, выдроченный под производительность.
Попробуй пользоваться мозгом перед тем, как читать ответы, чтобы потом не пороть хуйню.
Расскажи нам еще про преимущества использования тред пула с его оверхедом для каждого вызова скриптовой функции
Какой у него оверхед, по сравнению с чем? Приводи в пример бенчмарки, чтобы было понятно, на сколько это медленнее предлагаемой тобой альтернативы. Ты лично профилировал время его работы, чтобы делать такие выводы?
То, что ты сейчас высрал - пустой и ничем не подкрепленный вскудахт.
1. Если в функции 0 аргументов, что быстрее и производительнее - вызвать эту функцию без аргументов, или вот эта портянка создания пустых объектов?
2. Что произойдет с движком в указанном коде при вызове функции с 8 параметрами?
Я не знаю как там сделано, но подозреваю что этот MessageQueue используется для синхронизации многопоточности, чтобы все сообщения обрабатывались из очереди по очереди без race conditionов всяких.
Для добавления сообщений в такую очередь нужна синхронизация и это довольно дорогая операция (учитывая скиллы Хуана там небось тупо на мутексах все), особенно для каждого скриптового вызова.
1. Ты заранее не знаешь, что будет лежать в params, там может быть 0 аргументов, а может быть все пять. Какую альтернативу ты предлагаешь? Сделать 5 функций, одна без параметров, вторая с одним параметров, третья с двумя, и так далее, и разруливать через ифы? Ассемблерная портянка с ветвлениями получится не меньше, плюс будет иметь место быть branch misprediction, если ты в курсе что это, а это может оказаться дороже создания нескольких пустых объектов на стеке.
2. Откуда там взяться восьми параметрам? Я не знаю, где ты конкретно откопал тот код, но видимо в том месте их нужно не более пяти, откуда там может высраться восемь?
Проигрываю что-то с додика, полез в исходники искать, почему тормозит gdscript, ассемблер скриншотит, как будто понимает что там происходит. Ты как мартышка, взявшая в руки том Достоевского, нахуй ты туда лезешь? Твой удел - таскать ассеты в юнити, чем и предлагаю тебе заняться.
1. Мань, у тебя c++ для написания движка! Это решается кучей способов - начиная от передачи nullptr или кол-ва аргументов, до использования хоть наследования, хоть шаблонов. Можно, к примеру, завести класс BaseFunc, в нем метод call, потом реализации FuncWith1Arg, FuncWith2Arg, и передавать конкретный экземпляр. Будет ноль оверхеда. И да, ты знаешь заранее, что будет лежать в params! Это известно в тот момент, когда колбэк добавляется в очередь, кретин!
2. Откуда угодно блджад, я так захотел! Это пользовательский колбек, который вызывается в момент завершения анимации. Но ты можешь доебаться, что мол пользовательская-хуельзовательская. Ты хочешь сказать, что в годоте нет встроенных функций с 6 аргументами, которые я мог бы хотеть вызвать?
Впрочем, это оказалось только началом пробития дна.
>Ты хочешь сказать, что в годоте нет встроенных функций с 6 аргументами, которые я мог бы хотеть вызвать?
Хочу, найди хоть одну в официальной документации.
>хочешь сказать что нет?
>хочу, кидай ссылку на документацию с примером хотя бы одной такой функции
>пук
Это позорнее тысячи пуков, мань.
Даунитос, это ПОЛЬЗОВАТЕЛЬСКИЙ колбэк. Я хочу вызвать функцию с 8 аргументами. Движок не может, там говнокод.
>Я хочу вызвать функцию с 8 аргументами
Тогда тебе лучше забыть о профессии программиста и пойти на завод.
Даже если у тебя 4-5 аргументов, то это уже повод задуматься, то ли ты делаешь, а 8 - это уже клиника.
>что в годоте нет встроенных функций с 6 аргументами
>ВСТРОЕННЫХ
>Даунитос, это ПОЛЬЗОВАТЕЛЬСКИЙ колбэк
Какой ловкий маневр, спешите видеть.
>вы просто не понимаете, это не говно, а гениальность хуана
Ясно.
>это не для вас написано, пользовательские колбэки не для пользовательских колбэков
Понятно.
>ясно
>понятно
Ну вот, манька слилась слишком быстро, наверное пошла тягать ассеты в unyti.
Никто и не говорит про гениальность, Хуан не Кармак, да и код не он один пишет. И да, это не говно, а вполне рабочий код, который имеет место быть, не идеальный, конечно, но дрочка на академически чистый и вылизанный код никогда и не была самоцелью разрабов годота.
В том же юнити с вероятностью 99% говнокодище еще похлеще этого, можешь не сомневаться, идеальный код существует только в маня-фантазиях не написавших ни строчки.
>РРЯЯ ЭТО САМЫЙ ОПТИМАЛЬНЫЙ КОД! ТАМ СЧИТАЮТСЯ КЭШ ПРОМАХИ! ТАК И НАДО ПЕРЕДАВАТЬ ПО 6 ПУСТЫХ ОБЪЕКТОВ!
>Не, ну это не идеальный, конечно, код, он вроде как работает, конечно, будет падать с ошибкой если больше 5 аргументов
Что ж, ты не безнадежен, прогресс заметен.
>будет падать с ошибкой если больше 5 аргументов
Пруф или не было. Ты делаешь вывод на основании того, что посмотрел в код, в котором нихуя не понимаешь. Почему ты так уверен, что он работает именно так, как тебе кажется?
Можем зайти с другой стороны - создай сцену в годоте, где ты вызываешь свою ебучую функцию с 8 аргументами в анимации, и посмотрим что будет.
>РРЯЯ ЭТО САМЫЙ ОПТИМАЛЬНЫЙ КОД
Пиздеж, не было ни слова про "самый оптимальный", я тебе просто пояснил почему решили сделать так, а не по-другому и почему это имеет право на жизнь, как и десяток других способов, у каждого из которых есть свои плюсы/минусы, и что в итоге окажется быстрее на доли процента покажет только бенчмарк, а не петушиное кукареканье РЯЯ ТУТ МЕДЛЕННО СДЕЛАЛИ, ГОВНОКОДЕРЫ, Я Б ЛУЧШЕ ЗДЕЛОЛ!!
А я бы не стал называть тебя хуесосом, но от истины никуда не денешься, к сожалению.
Пруфы чего, мань? Того, что по процитированному коду 6 аргумент никогда не будет передан в функцию?
Понятно, что чаще нужен 0-1-2. Но и говорить
> Даже если у тебя 4-5 аргументов, то это уже повод задуматься
Это бляполный пиздец. А то ж не бывает надо 5 аргументов зарядить. Бывает надо и 8, и 10. Редко, но бывает. Другой анон.
Но ведь я не хуесос. И годдот, получается, не движок. Прискорбно, но факт остается фактом.
В том то и дело. Что чаще всего нужно 0-1-2, а передается всегда 5 пустышек. О - оптимизация.
Больше 4-5 аргументов у функции - это признак того, что тебе нужна новая структура данных, либо функция слишком жирная и её надо рефакторить. Большое кол-во аргументов считается анти-паттерном во всем цивилизованном мире.
>>46242
Ты только что кудахтал, то движок будет "падать с ошибкой", а теперь уже кудахчешь про не будет вызван, сам уже запутался в своем пиздеже.
>процитированному коду
Ты не шаришь в кодовой базе движка, и вряд ли понимаешь, откуда высрал этот фрагмент и за что он отвечает. Если это не так, тогда кидай пруф.
Пруф - проект на годоте, с пустой анимацией, которая не делает ничего, кроме как вызывает этот пользовательский коллбэк с 8 аргументами и при этом крашит движок или теряет аргументы. Пока нет пруфа, всё высранное тобой - не более чем маня-фантазии, не имеющие отношения к реальности.
>>46218
>Хочу, найди хоть одну в официальной документации.
>>46223
>>46219
>огда тебе лучше забыть о профессии программиста и пойти на завод.
>Даже если у тебя 4-5 аргументов, то это уже повод задуматься, то ли ты делаешь, а 8 - это уже клиника.
Похоже, Хуану пора забыть о профессии программиста и пойти на завод.
Причем тут код движка?
Вроде бы в посте черным по белому написано, что проблема не в коде, а в тебе и в том, что ты не понимаешь, что это за фрагмент, откуда он вызывается и как работает.
> Понятно, что чаще нужен 0-1-2.
> Бывает надо и 8, и 10. Редко, но бывает
>>46246
> функция слишком жирная и её надо рефакторить
Ну конечно. Вместо 1-2-3 простых функций, которые в читабельном режиме тупыми ифами откидывают лишние аргументы (и перекидывают нужные дальше) мы завернем аргументы в структуру, а потом будем где ни попадя эту структуру разворачивать и чекать... теми же самыми ифами.
И, напомню, ключевые слова:
> чаще
> Редко
Как бы намекают, что это не "так и надо делать". Но ты решил завести лекцию об анти-паттернах. Аналогично, и "Хуан не Кармак" - налепил "пять аргументов хватит всем" и выдает его за движок.
>которые в читабельном режиме тупыми ифами откидывают лишние аргументы
Про цикломатическую сложность в вашем заборостроительном универе не рассказывали?
>структуру разворачивать и чекать
>теми же самыми ифами
Скажи честно, ты про программирование слышал только из картинок в программерских пабликах в вк?
>налепил "пять аргументов хватит всем" и выдает его за движок.
Пруфов как не было, так и нет до сих пор.
Ты пытаешься выдать экспертизу, не поняв сути. В твоем вузе за это отл ставили? Пруфы о пяти аргументах выше анон выкладывал.
> Причем тут код движка?
При том, что это код движка.
> проблема не в коде, а в тебе
Просто в голос.
> откуда он вызывается
Он вызывается, когда анимация доходит до отметки, которую пользователь указал в редакторе, и вызывает функцию, которую указал пользователь в редакторе. Кстати, ни в редакторе, ни в документации не указан лимит в 5 аргументов. Удачного дебага, мазафаки, как бы говорит нам Хуан.
>Пруфы о пяти аргументах выше анон выкладывал.
Скриншот 5 строк, высранных непонятно откуда и вывод на основе них от петуха, который видит кодовую базу проекта в сотни тысяч строк впервые в своей жизни - это не пруф, а вскукарек.
Пруфом будет как минимум проект, демонстрирующий эту проблему.
>Скриншот 5 строк, высранных непонятно откуда
Годот опенсорс. Ты можешь и сам посмотреть, где их высрал Хуан.
https://github.com/godotengine/godot/blob/master/scene/animation/animation_player.cpp#L540
> который видит кодовую базу проекта в сотни тысяч строк впервые в своей жизни
Ох уж эти проекции...
>Пруфом будет как минимум проект, демонстрирующий эту проблему.
Ты реально не умеешь читать код?
Во-первых, ты разговариваешь с несколькими анонами.
Во-вторых, я пишу код, который нужен мне, в ближайшие полчаса. Потом, если еще не буду спать, может и проект слеплю.
> нужна новая структура данных
https://github.com/godotengine/godot/blob/master/scene/animation/animation_player.cpp#L52
> if (name.begins_with("playback/play")) {
> } else if (name.begins_with("anims/")) {
Дело-то о файле в 1600 строк принимает скверный оборот.
Ну тут-то ничего удивительного нет, все движки в основном оперируют строками для всяких объектов, имен анимаций. И там вроде пометка про backward compatibility.
В контексте "нужна структура, не колхозим" звучит неубедительно.
>говорю всем, что пишу код, который нужен мне
>в это время ковыряюсь в движке годота, чтобы доказать себе, что он говно, ведь обсирая труд других, я чувствую себя намного лучше
8 аргументов работают, не знаю, откуда ты высрал тот фрагмент, но видимо ты сам не понял откуда.
>до сих пор рассусоливают GDScript
Акститесь!
И кстати очень легко увидеть, где ты спалился, пиздоболие.
Любой может запустить редактор годота и убедиться, что там не выставить значение выше 5. А значит, ты поменял дефайн.
> Походу он тупо код отредактировал чтобы 8 параметров схавало.
Вот же сучёнок! Годдотоёбы теперь не только дебилы, но еще и мошенники.
>учитывая скиллы Хуана
Читал на гитхабе всякое говно, постоянно когда вылазит хуйлушка с советами хуану тот обоссывает пидора вмиг четкой аргументацией и все аплодируют, и даже те кто были против вынуждены соглашаться и рукоплескать. Так и тебя обоссут если что, потому что Хуан суперпрофи, а ты манька-залупогрызка.
Обоссанный тут только Хуан. Спасибо за пруфы.
>обоссывает пидора вмиг четкой аргументацией
уровня аргументации "почему я сделал gdscript" из faq? да, смешное было чтиво.
Давай давай, я уже половину туториала по first person shooter прошел, переписывая на c++. Нарабатываю приемчики и идиомы, через неделю уже свои проекты начну.
В реальности будет как с gles
Умные люди: надо gles
Хуан с "аргументами": кококо gles ненадо, бла бла бла
Подсосы хуана: хуан святой!
Через полгода: бля посоны чет у нас движог гавно выходит, надо было делать gles
Еще полгода кое как попытки доделать gles
Итог и там и там работает хуево.
А сейчас на vulkan хотят все переделать. Движок - дырявое корыто, но нет, ведь пользователям нужен очередной новый рендер!
>Чет недалеко ушел, за 5 лет-то.
Заебись ушел, годный двиг. Мне не нравится только производительность, как-то хуево он сделал воксели, красиво конечно, но фпс пиздец. И вот это странно, потому что в крае налету строится сетка и расчитывается и такой же фпс, а здесь нужно заранее запекать и все равно тормозит.
>>46345
> ведь пользователям нужен очередной новый рендер!
Потому что этот не годится. Он хороший пбр, но сейчас уже везде окружение запекается, а в годоте лайтмапов считай нет, а воксели не тянет железо.
Ты случаем в ЕдРе не состоишь? Методы работы больно знакомые. Главное написать, что все хорошо, любой ценой, даже подделывая тесты.
>Потому что этот не годится
Никому не нужна фотореалистичная графика в годоте. Для этого уже есть УЕЧ, блджад.
Пидор рыжий, сделай ты нормальный стабильный движок с нормальным ворфлоу. Сделай нормальную базу движка, а потом прикручивай фичи. А не наоборот, кидала ты мразотная!
Рыжая мразь делает то, что легко сделать. А сложные, муторные вещи делать не хочет. Поэтому годот в вечной жопе.
Ты не вполне справидлив. Вот есть такой движок cocos2d-x. Ему лет 8 уже, там c++, он довольно приятный для программирования, на нем китайцы пишут сотни реальных игр, приносящих деньги (мобильные дрочильни). Но! Пару лет назад все эти китайцы признали, что они не могут сделать 3d редактор, вообще отказались от этих планов. Высрали какой-то кривой creator studio который вообще к c++ не приделать никак. И вот сравниваем с годотом, и понимаем, что в нем сделано не так уж и мало.
Решил я сравнить производительность C# и GDscript в годоте. Для этого сделал несколько простеньких тестов, где один и тот же код выполняется на двух языках, и почалося. От результатов я охеул.
Итак, первый тест - считаем матан. На пиках код и результат. Там, где шарп считает меньше секунды, ГДскрипт трахается 49 секунд. Разница более чем в 49 раз, Карл. А я еще напомню, что и сам шарп считается далеко не самым быстрым языком и быть в 49! раз медленнее его - это определенно достижение.
Ну и казалось бы - ну и хуй с гд скриптом, пользуйся шарпом и наслаждайся нормальной производительностью. Но не тут то было, у Хуана есть для тебя сюрприз. Ведь в следующем тесте отсосет уже шарп...
УЕЧ не опен сорс. Какие есть еще свободные движки, в которых есть фотореалистичная графика? инб4 блендер, уу сука, а ведь в блендере была какая-то уебищная прослойка, чтобы на питоне глючные игры писать
Не понял что на левом скрине. Тест занял 0 секунд? Ну это скорее всего означает, что там ошибка и он вообще не выполнялся.
> уу сука, а ведь в блендере была какая-то уебищная прослойка, чтобы на питоне глючные игры писать
Ну они сделали максимальное говно, и уже удалили. Сейчас еще планируют какую-то хуйню интерактивную сделать, тоже скорее всего получится хуета, но уже с топ графонием.
>>46352
>Пидор рыжий, сделай ты нормальный стабильный движок
Ты так пишешь, будто донатишь ему или код в двиг вносишь. Заткнись сука нах!
>>46355
Пайтон так же отсосет, я читал сравнение языков, он в некоторых тестах в 400 раз медленнее был плюсов или шарпа.
В констракте события в 20-30 раз медленнее гдскрипта
ОСОБЕННЫЙ СКРИПТОВЫЙ ЯЗЫК для ОСОБЕННОГО ДВИЖКА
Тест занял меньше секунды. Там для проверки, что тест прошел пишется значение d над табличкой.
Ссылка на проект, если кто сам проверить хочет https://nofile.io/f/Z2WT0PRkgcn/SharpSpeedTestMath.zip.
А еще я очень надеюсь, что я где-то обосрался, мне на это укажут, и не все так плохо на самом деле.
>А еще я очень надеюсь, что я где-то обосрался,
Ебанько, это же пайтоноподобный язык, чего ты от него ждал? Его написали, чтобы быстро логику писать.
Ясно, уже вижу по коду. А что за второй тест, который на шарпе медленнее? Или я не так понял твой пост.
>Пару лет назад все эти китайцы признали, что они не могут сделать 3d редактор, вообще отказались от этих планов
Они его не делают, потому что это никому не нужно и не выгодно.
Это Хуану донатят 10к$ в месяц, чтобы он делал редактор, а он API рендера раз в год переписывает, сука.
>Они его не делают, потому что это никому не нужно
Ты не прав, там сотни людей просили на форуме. И сначала были попытки. Но реально не смогли. Так что 3d редактор - это тоже важно.
Во-первых, Хуан говорил, что шарп ДО 4х раз быстрее GD скрипта в некоторых случаях. Не мог же он врать?
Во-вторых, так сильно даже питон не тормозит.
В-третьих, тут у поцанов треде >>46063 производительность упирается в ядро движка и GDскрипт на уровне С++ бегает.
>>46366
Если вкратце - то при вызовах API годота gd скрипт быстрее работает. Подробнее потом напишу.
> чтобы он делал редактор
Нахуя тебе делать редактор, ты долбоеб? В каком-нибудь юнити новых фич уже нет лет как 10, просто потому, что уже нехуй придумывать, программа и так уже подходит для создания игр. То же самое и с годотом
>ДО 4х раз быстрее GD скрипта в некоторых случаях
И что тебя в этой фразе смущает, пес? Вообще тупой спор, то что пайтон тормоз известно и для чего гдскрипт тоже известно, пережевываете говно, дауны, вместо реальных косяков. Хуан обосрался с рендером, он дропнул лайтмапы в пользу вокселей и хвалился, что у него теперь лучший рендер, но оказалось, что он не пригоден из-за производительности. И теперь выхода нет, лайтмапы он поделал и забил опять, с вокселами ничего не сделать, ставишь кубик, ставишь пробу, запекаешь, на gtx 1050ti 40fps. И теперь он грозится написать еще более лучший рендер. Выкатили исходники зенки откуда можно пиздить, он сказал спасибо в твиттере, гугл какую-то пбр хуйню открыл, и если он и в этих условиях даже спиздить не сможет, то тогда можно сказать, что хуан хуйло. А сейчас не сметь!
Да, я про то что эта тормозная хуйня довольно популярна и ругать гдскрипт странно, нужно принять.
>я про то что эта тормозная хуйня довольно популярна
Эта хуйня используется там, где на тормоза пофиг - скрипты, автоматизация, деплой и т.д.
Производительный код на питоне не пишут, естественно.
Вот хуан так и писал, нужно гаму спрогать, раз и быстренько спрогал, а для производительности плюсы там, вот это вот вся хуйня, разъебывайся как хош.
> ругать гдскрипт странно
А какой язык из этого списочка не принято обсирать при первой возможности? SQL? Ну еще про R редко слышу критику - значит параша настолько, что никому не нужна даже не смотря на рейтинг. Так что не переживай: гд-скрипт говно, унижать его нормально.
TODO на 2019 год
GGodot 4.0 список задач для 3D:
Оставить текущую модель рендеринга как основу;
Портирование на Vulkan;
Переместить флаги tile/filter/mipmaps из текстуры в шейдер и использовать для этого 8 предварительно привязанных сэмплеров, чтобы текстуры не были привязаны к контексту OpenGl (т.е стали bindless);
Добавить кэширование шейдеров;
33D:
Добавить векторы движения для размытия в движении и временного сглаживания, но только ограниченную реализацию в буфере отражения для решения проблем зеркального сглаживания и сглаживания SSR (Остальное хорошо обрабатывается MSAA);
Добавить отброс загороженной геометрии (Occlusion culling) при помощи CPU на основе временного препроецирования буферов глубины предыдущего кадра;
Добавить тайловый и кластерный режим освещения;
Добавить божественные лучи (god-rays) для направленного света;
Добавить объемность (volumetry) для точечного (Spot) и всенаправленного (Omni) света, как дополнительный пост-процесс;
См. раздел замена алгоритма SSAO на более современный;
Добавить трассировку конуса heighfield для глобального освещения в открытом мире;
Добавить текстуры проекции для точечного (Spot) и всенаправленного (Omni) света;
Добавить поддержку декалей (и оптимизировать их с помощью тайлового и кластерного режимов, если таковые имеются)
Добавить объемный туман, который работает с тайловым и кластерным режимом освещения;
Добавить создание многопоточного списка отрисовки (multithreaded render list)
Добавить пользовательскую поддержку рендеринга для отрисовки дополнительных данных;
Добавить поддержку трафарета (stencil), но сделать так, чтобы большинство применений трафарета (таких как маскирование объектов, плоские отражения и порталы) были просты в использовании;
Добавить поддержку шейдеров пост-обработки с доступом к нормалям, глубине, трафарету и пользовательским целям визуализации (custom render targets)
Переписать код запекания lightmap для использования полигонов вместо вокселей и потенциально оптимизировать (с помощью GPU и Al denoiser);
Вернуть аттракторы частиц и добавить 3D силовые поля;
Сделать исключение низкопробной матрицы из скелета и импорта анимаций опциональным. Новые пользователи не обнаружат, что действительно "кривые" модели, которые они загружают из интернета, не работают;
22D:
Сделать 2D работу освещения в один проход, для того чтобы увеличить производительность;
Добавить создание многопоточного списка отрисовки в серверную часть (back-end) Vulkan;
Добавить batching в серверную часть GLES2;
УУлучшение физики в Godot 4.0 (или 4. 1):
22D физика:
Оптимизация SAT-кода и использование более простых алгоритмов для некоторых примитивов;
«Теплый старт» с использованием именованных сегментов или точек вместо кэша близости;
Возможно, добавить quadtree или сбалансированные индексаторы на основе дерева;
Добавить плавучесть, чтобы объекты могли плавать в плоскостях;
Оптимизация выпуклых форм с помощью бинарного дерева для поддержки и проекции;
Сделать решатели (solvers) многопоточными (большая часть кода готова, просто она так и не была добавлена);
33D физика:
Оценить PhysX, учитывая, что его исходный код стал открытым. Возможно использование в качестве дополнительного бэк-энда или замены Bullet (зависит от того, могут ли быть реализованы все функции Godot);
Оценка фиксации и модернизации физики Годо;
— реализовать правильный код столкновения SAT, используя именованные примитивы для теплого запуска;
— оптимизировать выпуклые формы, используя бинарное дерево для поддержки и проекции;
— Поддержка цилиндра и использование EPA fallback для столкновения цилиндр-цилиндр;
— Добавить поддержку мягкого тела, как в Bullet;
— Сделать решатели (solvers) многопоточными (опять же, большинство кода уже существует);
Добавить поддержку плавучести над плоскостью;
TODO на 2019 год
GGodot 4.0 список задач для 3D:
Оставить текущую модель рендеринга как основу;
Портирование на Vulkan;
Переместить флаги tile/filter/mipmaps из текстуры в шейдер и использовать для этого 8 предварительно привязанных сэмплеров, чтобы текстуры не были привязаны к контексту OpenGl (т.е стали bindless);
Добавить кэширование шейдеров;
33D:
Добавить векторы движения для размытия в движении и временного сглаживания, но только ограниченную реализацию в буфере отражения для решения проблем зеркального сглаживания и сглаживания SSR (Остальное хорошо обрабатывается MSAA);
Добавить отброс загороженной геометрии (Occlusion culling) при помощи CPU на основе временного препроецирования буферов глубины предыдущего кадра;
Добавить тайловый и кластерный режим освещения;
Добавить божественные лучи (god-rays) для направленного света;
Добавить объемность (volumetry) для точечного (Spot) и всенаправленного (Omni) света, как дополнительный пост-процесс;
См. раздел замена алгоритма SSAO на более современный;
Добавить трассировку конуса heighfield для глобального освещения в открытом мире;
Добавить текстуры проекции для точечного (Spot) и всенаправленного (Omni) света;
Добавить поддержку декалей (и оптимизировать их с помощью тайлового и кластерного режимов, если таковые имеются)
Добавить объемный туман, который работает с тайловым и кластерным режимом освещения;
Добавить создание многопоточного списка отрисовки (multithreaded render list)
Добавить пользовательскую поддержку рендеринга для отрисовки дополнительных данных;
Добавить поддержку трафарета (stencil), но сделать так, чтобы большинство применений трафарета (таких как маскирование объектов, плоские отражения и порталы) были просты в использовании;
Добавить поддержку шейдеров пост-обработки с доступом к нормалям, глубине, трафарету и пользовательским целям визуализации (custom render targets)
Переписать код запекания lightmap для использования полигонов вместо вокселей и потенциально оптимизировать (с помощью GPU и Al denoiser);
Вернуть аттракторы частиц и добавить 3D силовые поля;
Сделать исключение низкопробной матрицы из скелета и импорта анимаций опциональным. Новые пользователи не обнаружат, что действительно "кривые" модели, которые они загружают из интернета, не работают;
22D:
Сделать 2D работу освещения в один проход, для того чтобы увеличить производительность;
Добавить создание многопоточного списка отрисовки в серверную часть (back-end) Vulkan;
Добавить batching в серверную часть GLES2;
УУлучшение физики в Godot 4.0 (или 4. 1):
22D физика:
Оптимизация SAT-кода и использование более простых алгоритмов для некоторых примитивов;
«Теплый старт» с использованием именованных сегментов или точек вместо кэша близости;
Возможно, добавить quadtree или сбалансированные индексаторы на основе дерева;
Добавить плавучесть, чтобы объекты могли плавать в плоскостях;
Оптимизация выпуклых форм с помощью бинарного дерева для поддержки и проекции;
Сделать решатели (solvers) многопоточными (большая часть кода готова, просто она так и не была добавлена);
33D физика:
Оценить PhysX, учитывая, что его исходный код стал открытым. Возможно использование в качестве дополнительного бэк-энда или замены Bullet (зависит от того, могут ли быть реализованы все функции Godot);
Оценка фиксации и модернизации физики Годо;
— реализовать правильный код столкновения SAT, используя именованные примитивы для теплого запуска;
— оптимизировать выпуклые формы, используя бинарное дерево для поддержки и проекции;
— Поддержка цилиндра и использование EPA fallback для столкновения цилиндр-цилиндр;
— Добавить поддержку мягкого тела, как в Bullet;
— Сделать решатели (solvers) многопоточными (опять же, большинство кода уже существует);
Добавить поддержку плавучести над плоскостью;
И ведь когда он писал этот, говеный рендер, наверняка "аргументировано обоссывал всех" что такой и надо было писать, и подсосы хором поддакивали.
> пережевываете говно, дауны, вместо реальных косяков
Еще тут кидали ссылку на статью, когда при 60фпс тормоза на изображении, вот в годоте эта хуйня во всей красе.
>>46387
Нет, он скрытно пилил, изредко балуя скринами в твиттере, и рендерт то красивый, но ощущение что производительность тоже раз в 40 ниже. То ли там ошибка какая-то, вот если запек эту пробу и издалека на нее смотреть еще нормально, но если камеру приблизить фпс падает в 3 раза.
>Рыжая мразь делает то, что легко сделать.
Это не так, это самое сложное, и он уже много раз пытался призвать на помощь людей для рендера, но никто не въезжает, мелкую хуйню пилят. Томас герцог уже расписывал как рендер устроен, тщетно, а самого его не проспонсировали.
На самом деле он УЖЕ.
>>46355
Продолжаем веселье.
Второй тест. На этот раз делаем дохуя вызовов к API. На пике код и результат.
Шарп примерно на четверть медленнее gd скрипта, которого он до этого обгонял в 49 раз. Вот и ебитесь с этим, как хотите. Думаете, что с шарпом получите лучшую производительность - ну в операциях с матаном определенно да, а вот если вы с нодами постоянно операции проводите, то нет.
Проект https://nofile.io/f/eXFgeqpj9MT/SharpSpeedTestApi.zip
Лооол, как можно пилить в опенсурсе что-то скрытно да еще и протащить мимо комьюнити?
Пилил пилил, залил.
Маршаллинг это всегда медленно. Будет перерыв на кофе, портану на c++ для теста.
Пока Хуан ебет шлюх и пьет смузи за счёт годотоманек, его верная армия куколдов чистит за ним говно
Для всех!
то, что можно за неделю сделать, Хуан будет год растягивать.
Потому что особенность патреона в том, что разработчику выгоднее затягивать разработку, тк оплачивается время, а не результат
Да не, там работы даже в нормальном темпе бесконечно, тем более он недавно выпрашивал спонсирование еще одно человека, просто это действительно много работы.
Не пизди. Самое сложное в разработке - это архитектура и дизайн программы, т.е. решение инженерных задач.
Все проблемы рендеринга давно решены и формализованы, расписаны, нужно просто писать по готовому алгоритму. Т.е. чисто техническая задача.
Кем расписаны, учеными хуями мочеными? Ну правильно, там и есть инженерные задачи, потому что то что они понаписали в своих паперах, в реальное железо не умещается.
Съеби кукарека-теоретик, иди пили свой платформер.
У всех умещается, а у Хуана не умещается.
В гугле полно статей и туториалов с пошаговыми инструкциями, на гитхабе сотни проектов с рендерингом, дохуя движков с открытым кодом = бери, копируй. Но нет, у Хуана все особенное, он же у нас особенный даун.
У тебя синдром хеллоу ворлда походу. Сам же себе противоречишь. Да, берешь один пример и он получается. А в движке надо совместить 100 разных примеров.
У анриала хороший рендер, почему Хуан не может просто взять и сделать так же, он что, дурак?
Я НЕ ДОЛБОЕБ!
Пусть рендер armory 3d хотя бы спиздит, даун рукожопый.
Почему-то один человек смог запилить отличный рендер, а у Хуана 5 лет ничего не получается. Может быть это Хуан - даун тупой, а не задача сложная?
Тупица, у армори еще хуже ситуация, лучше бы потестил, чем пердеть. У него во-первых хуево работает рендер, постоянно косяки, ни один релиз не работал нормально. И производительность еще хуже, там пример с шахматами элементарный на 30 фпсах идет, это при средних настройках.
Так это доска с шахматами, сейчас уже пиздец что в играх творится, как они это делают.
https://www.youtube.com/watch?v=ye3aF_eNtUQ
Еще протестировал. Вообщем за тормоза отвечают функции, которые перестраивают SceneTree. То есть, если избегать всяких .instanse/add_child/remove_child - то годот в принципе способен работать с адекватной скоростью при условии использования шарпа. Остальные функции вроде get_children, get_node, get_parent особых тормозов не вызывают.
Не совсем тебя понял. Но там проблема не в шарпе или гдскрипте, а в самом api. Просто с гд скриптом эта проблема не так актуальна, ибо на фоне его собственных тормозов - тормоза API не так заметны.
Что бы ты не сделал - в лучшем случае эти функции будут выполняться на шарпе с такой же скоростью, как и на гд скрипте, что все еще ОЧЕНЬ медленно.
Читаю
Для блендеропедерастов.
Да не, просто интеграцию обсудят. Ну и за одно Пабло попытается отсосать у Хуана и предложит в дупу, но Хуан только с медового месяца, ему и не охота ебаться, тем более Пабло, может слегка обоссыт, чтоб не обижался.
>так и не смогли нормально натянуть bullet на апи физики годота, так не смогли побороть связанные с этим глитчи
>вместо того, чтобы выкинуть этот апи и интегрировать bullet с нуля, без костылей, решили натянуть на этот же кривой апи physx, в надежде что это решит проблемы
Вот из-за такой хуйни как-то начинаю терять веру в годот. Теперь еще год ждать новую физику, которая в итоге скорее всего так и останется с кучей багов и глитчей, с проваливающимися на стыках коллайдеров мешами.
мимо-всегда-срался-в-тредах-на-стороне-годота
Вся фишка в том, что работа со сценами - основное преимущество годота перед другими движками, без сцен и их иерархии он нахуй не нужен, бесполезный оверхед поверх функционала, который можно накидать на голых плюсах.
Так это же хорошо, если им наконец-то дадут финансирование и заставят отчитываться о работе. Может наконец-то дофиксят баги, висящие со второй версии.
Причвм накидать сразу ECS.
Вообще, полноценный пайплайн с анимациями и pbr-текстурами для .blend файлов без промежуточного экспорта в dae/gltf был бы киллер-фичей для годота.
Лучший 3д редактор поглотит худший движок? Самому то не смешно?
Даже xenko и то более стабильный и функциональный движок
Ничего не будет, они просто обсудят как блендеру экспортить в годот, они задумывали экспорт во все движки.
Дурачок, зачем такое обсуждать в баре за кружечкой пива? Для такого есть слак и подобные мессенджеры.
Затем, что блендер в 90% используется для геймдева, разработчики игр на всех движках - основная ЦА блендера.
>эта боль фанатика дырявого вижка без игор, разработчик которого тем временем уже стал долларовым миллионером на донатах
> дырявого вижка
> дырявого вижка
> дырявого вижка
> дырявого вижка
> дырявого вижка
> дырявого вижка
Видать так сильно тряслись ручонки от зависти к донатам Хуана.
завидовать тупости фанатиков, дарящих деньги своему господину за сырой, забагованный, неработающий, дырявый движок? увольте.
>Now that we have a movement direction, we can update Player’s position and use clamp() to prevent it from leaving the screen by adding the following to the bottom of the _process function
Добавляю три последние строки кода и выдает ошибку. Вопрос: какого хуя?
Там не 4 должно быть, а два. В питоне такая же хуйня, да, поэтому нормальные люди на нем не пишут.
Достаточно и одного. А вообще, ты уже на первый подводный камень наткнулся, вот в C# такого нет, кхм...
Раньше думал что питоноподобные языки самые простые и быстрые.
Для старт тебе не нужна тулза общего назначения. Бери game maker и делай рпг. Или бери Ren'Py и делай ВН. Программача, кста, в современных движках чуть-чуть больше, чем в школьной информатике (хотя, редкие неприятные моменты будут случаться).
>Программача
Только если у тебя из механик только "ходить" и "тыкать". Стратегии, симуляторы и прочие нормальные игры требуют навыков кодинга.
Лучше сначала программирование подтянуть, независимо от движка. Я бы посоветовал найти какую-нибудь книгу "c# для довенов", поделать оттуда примеры и упражнения, потом скачать справочник C# in a nutshell авторства Албахари и книжку по паттернам авторства Фримана. В последней, правда, примеры на java, но это похуй, она отлично написана и там дохуя картинок, разберешься. Справочник можно почитывать для общего кругозора и нюансов.
И не следуй совету этого: >>46629 про внки, иначе так и застрянешь в этом болоте.
К примеру если нужно совсем чтото простое с кучей действительно годных туторилаов можно выбрать гейм мейкер
Если хочешь делать 3д игры иди 2д но на нормальном движке, юнити к твоим услугам
А что предлагает годот? Сейчас в ОП посте вижу кросплатформеность, но как я понял это про стандартное издание игр вместо того чтобы на мобилке или 3дс там чето пилить пока в метро едешь
>юнити к твоим услугам
Надо платить ежемесячную мзду, чтобы убрать зашкварный сплеш-скрин. Я конечно понимаю, что для юнити-куколдов это неважно, они готовы и хуй в жопе стерпеть, и чтобы им на лицо насрали, лишь бы продолжать пользоваться unyti. Но для нормальных людей это зашкварище.
Плюс открытая лицензия годота - это важный идеологический момент. Пока ты пользуешься unyti, ты полагаешься только на добрую волю барина, завтра они решат убрать какую-то фичу из free версии, и пропишут в EULA, что ты обязан два раза в день давать в жопу сотруднику unity, чтобы пользоваться этой фичей, и ты ничего с этим не поделаешь. Недавняя история с improbable хороший тому пример, вот только за improbable вступились epic games и у юнити-бояр не фартануло их разорить, пришлось под шумок выпускать пресс-релиз, что мол все нормально пацаны, ну пытались кидануть посонов на бабки, но вас это не коснется, спите спокойно.
>завтра они решат убрать какую-то фичу из free версии
И всем будет похуй, потому что ещё во времена, когда половина фич работала только на PRO оказалось, что во фри версии всё так же просто работает и никаких особых ограничений нет. Последние года происходило ровно наоборот вряд ли юнити развернётся на 180 и опять начнёт просить деньги за то, что было бесплатно. Тем более с ретроактивной-то лицензией, лол. Сплешскрин юнити это скорее плюс. Единственный недостаток это светлая тема, но опять же, есть способы включить тёмную, оставаясь на фри и при этом не нарушая еула.
>Недавняя история с improbable
>Пидоры реселлят юнити не идут на контакт
>Юнитеки виноваты
Вы ебанутые с этим импропадлом.
>Человек предпочитает работать в комфортной среде вместо того чтобы выеживаться и гемороиться с годотом
>Куколд который стерпит хуй в жопе и говно на лице
Я вообще пришел не для того чтобы сраться по поводу движков
Попробовал годот не понравилось что хуево поддерживает человеческие языки программирование не смотря на то что обещали десяток версий нащад и что сама система ну как то совсем по уебански построена, поэтому и спросил а какие собственно плюсы
Юнити не гейммейкер по еврейству, если надо то и заплатить не жалко, все равно когда саам издаешься надо много за что платить
А что плохого в лого движка? Тебе стыдно, что если ты сделал игру на движке, то все узнают что ты сделал игру на движке, а не написал движок с нуля, или что?
Какие-то школопроблемы.
У игр на уече тоже есть лого.
ЭТО ДРУГОЕ
>поэтому и спросил а какие собственно плюсы
Нет у него плюсов. Поэтому нам нет игр.
Заговор и притеснения хорошего движка только у годофанатиков в головах. Еще они любят говорить, что движок новый и просто не популярный. Ну да, если за 5 лет он оказался так никому и не нужен, может это все-таки движок никому не нужно говно, а не пользователи виноваты, а?
Ебёшься со справкой, не понимаешь, почему не получается. Находишь туторы с вызовами апи. Движок этих вызовов не знает. Ебёшься ещё. Движок падает. Ебёшься дальше. Справка устарела, всё апи перекроили. Движок падает. Сносишь к хуям уе4 и забываешь, как страшный сон. Зато тяжелее освоить, забись же.
А в Юнити 2д нет вообще, но охуенные 2д игры делать не мешает
>Кстати хз что там за поделие, но оно работает не только с юнити
Они развернули в облаке юнити и давали уёбышам делать игры на юнити. Фактически это перепродажа лицензии, что запрещено в любом софте. То, что юнити это позволила это пиздец широкий жест. Они теперь корпорация добра.
Они за 5 дней переписывали лицензию 5 раз, нет гарантий что они не внесут потом еще туда новых изменений мелким шрифтом.
>>46680
> Они развернули в облаке юнити
С чего ты взял? Там бэкенд для шардов ММО, какое отношение это вообще имеет к юнити?
> Фактически это перепродажа лицензии, что запрещено в любом софте.
> продажа лицензии
Вот поэтому в этом треде и выбирают открытый годот.
> То, что юнити это позволила это пиздец широкий жест.
Они позволили это потому что пытались хоть как то остановить щит шторм.
> Они теперь корпорация добра.
Они теперь обоссыши омеганы, которыми крутят как хотят. Залупнулись на рыбку, которая им не по зубам, и получили тут же шелчок по носу от Эпиков-УЕЧей
Откуда у годотодетей деньги на криптовалюту?
В годоте вообще есть интеграция с аппстором/гуглоплеем, чтобы зарабатывать то?
Вроде как можно, но поскольку никто ни разу игры на годоте не доделывал, проверять не получалось
Игровые сервера работают на инстансах юнити. Да-да, тот самый подход, за который всегда ссали в ебало.
>>46686
Если бы бэкенд не работал на юнити, к ним бы претензий и не было.
>получили тут же шелчок по носу от Эпиков-УЕЧей
Выглядит так, как будто в разговор двух взрослых пытается влезть мелкий пиздюк (Эпики), но всем на него похуй, даже импропадлам, которые не могут отказаться от работы с юнити. Йохим просто широкой души человек и позволяет многое, причём не из-за каких-то подзалупных эпиков, просто с ним на англофоруме общались в тредах, мол, мы юзали эту дрисню. Причём он успокаивал, как мол, похуй, юзайте, но импропадлы во всю истерили в твиттор.
Еще потестировал и понял, что мои предыдущие тесты были не совсем верны. Исправляю ошибки.
1. В тесте на матан >>46355 было слишком мало итераций в цикле. Если увеличить их количество, то становится понятно, что шарп не в 49 раз быстрее а намного больше. Например, если увеличить количество итераций в 10 раз, то то, что шарп считает 3 секунды - гд скрипт считает 8 минут.
2. Вывод >>46432 тоже не совсем верен. Функции, которые перестраивают SceneTree тормозят больше всех, но и всякие get_children тормозят тоже, только меньше.
У меня игра пошаговая, так что для себя решил, что годот буду использовать только для гуя и 2д графона, которые обновляются перед ходами (ну и для экспорта игры на разные платформы). Вся же игровая логика самих ходов будет крутиться на шарпе и вообще к апи годота не прикасаться.
Удаляй все пробелы нахуй и делай табуляцию. У тебя интерпретатор офигивает от того, что ты там напробелил. И скорее всего position выполняется только в случае else функции выше.
Да я уже разобрался, видимо, копи-паст сказался
Из-за того что разработчики больше заняты собиранием донатов и создаванием хипстерского хайпа?
Бляяяяяяяяяяяяя, ну серьезно, они обещали уже в 2.0 что всё будет заебись, а мы заканчиваем 3.х версии и вссё равно все слабо работоспособно
>Из-за того что разработчики больше заняты собиранием донатов и создаванием хипстерского хайпа?
this
непрозрачное финансирование разработки через patreon - идиотская идея.
patreon придумали, чтобы платить художникам за порнокартинки, а не для разработки опенсурс проектов, когда контрибутит все коммунити, а деньги за это платят Хуану. это демотивирует как энтузиастов помогать проекту, там и самого Хуана показывать какой-то результат.
очень жаль, что фанатики не понимают, что соря напрасно деньгами они только вредят проекту, а не помогают ему.
Если взять хотя бы тот же blender, так они запили для донатов специальный эвент 2.8 quest, где они подробно отчитывались, создали команду разработчиков и за год(!) реально выпустили продукт, который обещали сделать.
А у Хуана что? "Подайте бабло чтобы я переписал рендер с gles2 на gles3 потом на gles2 обратно потом на vulkan"
Охуенная разработка движка.
Но зато годот это как кухня, а пользователи повора которые могут творить свои шедевры
Когда собирался делать небольшую игрушку под ведро, благоразумно решил сначала проверить как будет себя вести рекламный модуль. Несколько дней подряд пытался скомпилировать эту дрянь, читая устаревшие статьи, ставя тонны каких-то костылей, в результате эта хрень сработала ровно один раз и сдохла. Это уже была последняя капля после фантомных тормозов, пришлось качать Юнити и уже там пердолиться с просветами между тайлами, на котором, внезапно, никаких тормозов нет, несмотря на дебильное 2д через 3д даже на слабом ведре, а рекламные модули подключаются простым перетаскиванием в папку. Однако, все равно быстро перегорел, а тут еще и сишарп этот, так все и забросил. Да и в любом случае ничего бы не вышло, без рекламы и пиара никому игры не нужны.
Ты слишком многого от хуана хочешь. В юнити не могут сделать нормальный рендер (чего только одна обработка растительности стоит) и 2д. Эпики все еще не могут убрать вылеты в редакторе, а уж о глючности sequencer можно легенды слагать (и тоже не могут в 2д). И это все у больших компаний с огромными ресурсами и большим временем разработки. А тут (сколько там основных разработчиков у годота 2, 3?) два с половиной программиста пилят движок за три с половиной копейки. И для двух с половиной программистов - у них очень хорошо получается.
Блендер - это вообще единичный случай. Если бы все свободное ПО было бы как блендер, то все несвободное вымерло бы как класс.
>В юнити не могут сделать нормальный рендер (чего только одна обработка растительности стоит
Охуенно шерсть и растительность обрабатывает, что тебе не нравится
>В юнити не могут сделать нормальный рендер (чего только одна обработка растительности стоит)
В юнити фокусируются на главном: на движке как платформе, юзабилити и контенте. А траву для успешного редактора тебе сделает коммюнити в десятках экземпляров и продаст в ассет сторе.
А Хуан дурачок пытается объять необъятое и делает движок с обратного конца!
Он скорее всего про тормоза с обработкой полупрозрачных поверхностей. Которые, к слову, тормозные вообще везде.
>дебильное 2д через 3д
А это потому что у юнити ноги растут из openGL.
Проблем в том, что юнити у всех ассоциируется с ассет-флипами по 15 рублей, поэтому все студии, которые юзают юнити, всеми силами стараются это скрыть, убрать сплеши/упоминания.
>DirectDraw is a deprecated API that used to be a part of Microsoft's DirectX API.
>закрытая хуйня, которая не работала нигде кроме винды
Земля тебе пухом.
А как рендерит Гейммейкер, интересно, что у него там? Тот же fusion как работает? РенПу и ПуГейм, что у них внутри?
>Будто бы игори есть где-то кроме винды.
Мобилкочерви, мак-пидоры и веб-червипидоры с тобой не согласятся.
+ Самые разные сосноли
+ Линукс, процент небольшой, но платежеспособный, пренебрегать им не стоит
Забавный парадокс, кстати, что большинство пиратов - именно пидорахи, сидящие на винде с торрентов, а пользователи линукса готовы платить за качественную версию игры/софта для их ОС.
Есть стори пикрил?
>А как рендерит Гейммейкер, интересно, что у него там?
Ответ разработв с их форума.
We use a variety of different graphics API's depending on the platform, and we are continually looking at what is best to use (we have recently taken a look at Vulkan and we are impressed with that), so we reserve the right to change the target graphics API so just beware.
We would like to support multiple renderers in the future for target platforms i.e. on Android use OpenGL on older devices and perhaps Vulkan on more modern devices, the game will not know until it starts which should be used, but that is for the future.
Interested in the announcement of MoltenVK being open source as that will make Vulkan more attractive (and mean we would not have to support Metal directly on iOS and Mac).
Russell
>Тот же fusion как работает? РенПу и ПуГейм, что у них внутри?
Про это влом гуглить, если кросс-платформа (в том числе мобилки, веб) - OpenGL, если шиндовс онли - directx.
А мне вообще похуй, как. Юнити пилилась изначально под опенГЛ, потому имеет некоторые фичи, присущие именно ему. Те же флипнутые оси. Было бы через директХ, было бы по-другому. Только и всего. Те же GDI и Direct2D.
>>46949
У всех движков под капотом всё, сейчас иначе нельзя. Ну, кроме годота, он особенный, OpenGL3 и опенгл ES - для встраиваемых систем (мобилкоговно).
Очевидно, что без опенгл в последнем шаге рендера никуда. Но так же очевидно что сам движок может хоть пиксели в текстуру блиттить и вообще от апи опенгл с его флоатами не зависеть.
Дефолтная настройка. Надо будет покурить доки.
>Это не так, это самое сложное, и он уже много раз пытался призвать на помощь людей для рендера, но никто не въезжает, мелкую хуйню пилят.
Вот опять, и опять никто не осилит, на это способен только гений хуан и еще несколько людей в мире.
https://twitter.com/reduzio/status/1086071779838242816
Зачем нужны существующие, надежные библиотеки абстракции рендера со всеми платформами сразу? Надо же осваивать донаты и запилить сырое, забагованное говно самому!
Таким долбоебам, которым процесс важнее результата, нужно вообще запретить что-либо делать на публику.
Придурок на каждом углу воняет про опен сурс, и не пользуется его главным преимуществом - реюзабельностью кода и разделением задач - вообще никак, на каждую задачу изобретая свое глючное, забагованное решение.
Типичный склад ума Васяна-проприетарщика.
Объясните его явные преимущества над юнити в плане разработки игр
опен сурс с точки зрения Хуана, это когда ЕМУ пишут код, а не когда используешь другие опенсурсные проекты для для решения общих проблем и пишешь код для них.
Барин из юнитека не скажет в один прекрасный момент, что твоя лицензия отозвана.
Хуан, залогинься.
Есть, например, проект с 5к звезд https://github.com/bkaradzic/bgfx
Хуан вообще когда-нибудь задумывался о том, чтобы взять эту библиотеку в качестве основы рендеринга, а если там что-то не подходит для годота, то умерить свое ЧСВ и контрибутить в этот проект, сделав его совместимым?
Пока что он только обсирает все остальные проекты, доказывая под овации фанатиком почему они плохие, и что непременно нужно запилить все с нуля!
По большей части он просто неюзабелен, без ре.
Пользуюсь всяким линуксговном по работе, горит пиздец. Тут не доделали, там слепили на отъебись. Говно говна.
Ага, вместо этого опенсорсохолоп скажет, что дропает поддержку, ебитесь дальше как хотите.
Опен сорс - единственное преимущество, серьезно. Движок моложе, ассетов почти нет.
>скажет, что дропает поддержку
Мы оба знаем что Хуан будет говорить что поддерживает и разрабатывает даже после нескольких лет без апдейтов вообще
Только в этом случае все что работало так и продолжит работать, а в случае с проприетарщиной тебе и ебаться запрещено.
Разве что язык похожий на питон немного приятнее, но язык программирования далеко не повод брать целый движок на вроде Godot или Defold.
Другое дело когда Defold берут ради компактности и возможности напитонить свои скрипты для управления редактором, так как там все это очень даже открыто.
Но ведь раб это ты.
А кажется уже популярно объяснил в этом треде, что у Хуана не опен сорс, а "напишите за меня код".
godot не следует принципам опен сурс разработки.
все баги годота - это баги годота, и никто кроме Хуана и его прихвостней их править не будут.
манямирок про "есть исходники, сам все исправлю и допилю чего не хватает" может не повторять - это не так работает.
В таком случае я лучше доверюсь профессионалам юнити в правке багов, чем на щедрость Васяна, который в свободное время пытается починить годот, пока Хуан нюхает купленный на донаты кокс с жоп аргентинских шлюх.
Ты уже не первый день одну и ту же хуйню пишешь, тебе делать нехуй? До конца жизни будешь хейтить хуана, ебанушка?
Он молодец
Представляешь что будет если действительно человек который хочет делать игры забредет в тред? Вы ему все мозги промоете своей хуйней, а то что годот багованное дерьмо полный ньфаг может и не понять, к примеру не иметь нормальную поддержку шарпа это вообще днище из днищ
Вывожу мошенника Хуана на чистую воду. Не люблю, когда наивную публику водят за нос.
2д
Система нод
Возможность кодить на легком питонообразном языке а, так же на куче других языков
Опен сорс
Активная разработка, постоянное внедрение новых фич
Не всратый гуй
>на легком питонообразном языке
На самом деле питон очень двоякий в этом смысле.
С одной стороны ты просто берешь и пишешь код, конечно. Но чтобы получился хороший код без ошибок надо иметь квалификацию выше, чем для аналогичного качества на любом языке со статической типизацией. И покрывать все тестами.
>2д
2д зачем-то сделано как отдельный режим. в юнити 2д проще и, что самое главное, функциональнее. можно легко совмещать 2д и 3д объекты.
>Система нод
в юнити все то же самое, только более лучшее и простое разделение поведений объекта на компоненты, вместо убожества с присоеденением одного скрипта к одной ноде.
трудно назвать это преимуществом
>gdscript
>преимущество
это шутка?
>Опен сорс
не преимущество, а недостаток. движок пилится отдельными энтузиастами в свободное время. никто не гарантирует тебе ни поддержку, ни исправление багов, ни стабильную работу движка. никакой техподдержки. энджой ер "as is".
баги в движке не фиксятся годами и всем похуй
>Активная разработка, постоянное внедрение новых фич
спасибо, поржал
>Не всратый гуй
АХАХА, что ты делаешь, прекрати!
>we are raising 14,000 € to create great tutorials
миллион рублей за несколько роликов на ютубе.
куй железо, пока горячо.
Можешь, но есть ряд ограничений. Шарп не работает (пока), кресты вроде тоже в вебе не работают. У меня еще randomize() не работал.
20 средних бразильских зарплат (откуда этот Остап Бендер родом)
Это хорошо, я на GDscript собирался делать, вполне приятный питоноподобный недоязычок. С ним они ничего пока не планируют делать, так и останется основным языком? Никакого депрекейтеда в обозримом будущем?
Этот пидар уже заебал, ему в прошлый раз 25к задонатили долбоебы, а он несколько говнороликов высрал и все.
Хуан всегда заявлял, что гдскрипт был и всегда будет, сейчас типизацию прикручивают, но можно будет и без типизации, а сишарпу сторонние кенты прикручивают.
Я разве про баги что-то говорил? Свобода не в багах.
Ты тредом ошибся, здесь всем поебать, как в юнити.
Ты думаешь какую-то забавную хуйню пишешь? Спамишь хуйней унылой, такие долбоебы и зашкварили юнитиговно. Все равно будут блендеру донатить, будут годоту донатить, хоть обосрись перед моником.
>Не надо сравнивать говнодот с блендером, пожалуйста.
Одно и тоже, блендер и годот - братья на век.
опенсурс опенсурсом, а денежки врозь
Донатишь ты конкретному Хуану и конкретному Натану, а код пишется за бесплатно совершенно другими людьми, которые не получают ни копейку.
Вся суть ПОПЕЦ СУРСА
Ну и пусть, мне вообще похуй кто что получает.
А проблема в чем, напомни? Если другие люди работают бесплатно, значит могут себе позволить.
Проблема в том, что Хуан приписывает чужую работу себе, вводя в заблуждение простодушных донатеров и совершая мошенничество.
>работают бесплатно
Да они не работают, а делают ради удовольствия, или для своих геймнужд, у этого юнитидодика навязчивый синдром.
>к примеру не иметь нормальную поддержку шарпа это вообще днище из днищ
Не вкатываюсь в unity только потому, что можно писать только на шишарпе. Днище из днищ - это не мочь ни во что, кроме шишарпа и поэтому не понимать, насколько неудобно программировать на нем.
А остальные - серуны-шизики. Астанавитес!
>2д зачем-то сделано как отдельный режим
Так это как раз преимущество, а не минус. Отдельный 2д-режим с пиксель-перфект рендерингом, без симуляции через 3д с нулевой z-координатой, как в unyti.
> можно легко совмещать 2д и 3д объекты.
В годоте тоже можно легко, 3д объекты рисуются в 2д вьюпортах.
При этом самое охуенное в том, что для чистого двадэ можно в настройках вообще выключить тридэ-подсистему движка и игра станет легче.
>без симуляции через 3д с нулевой z-координатой, как в unyti.
А ты думаешь в годоте как-то по другому сделано лол? То же самое, только с отдельным захардкоженным 2д видом, который скрывает это.
юнитивский подход гораздо лучше и гибче. у тебя один воркфлоу, который ты можешь настроить под себя. Надо pixel perfect? Ставишь pixel perfect package. Надо плавное 2д? Используешь просто спрайты. Надо использовать спрайты в зд сцене? Просто перетаскиваешь спрайты мышкой на сцену и все.
> Надо pixel perfect? Ставишь pixel perfect package.
>Надо плавное 2д? Ставишь plavnoe_2d package
>Надо X? Ставишь X package
Ну и днина же этот unyti
О, козырная карта в ход пошла! Манькин ТУЗ!
3D можно даже не через настройки отключить, а пересобрать движок с параметром disable_3d=yes и его вообще в исходниках не будет.
>unity
>программируешь движок
Хороший анекдот. Интересно как, через декомпиляцию C# и потом попытке собрать ilasm?
К твоему сведению, в unity можно даже запрограммировать rendering pipeline https://docs.unity3d.com/Manual/ScriptableRenderPipeline.html
Зачем что-то принимать на веру?
Открываем исходники годота и ищем любой 2д объект, по твоей унитирелигии можно предположить, что это будет объект, унаследованный от 3д-объекта, но с выключенным Z, так?
Смотрим node2d:
> class Node2D : public CanvasItem {
Смотрим CanvasItem:
> class CanvasItem : public Node {
Понимаем, что это совсем другая ветвь наследования от общего объекта Node, чем тридэ-объекты (у Node вообще координат и графического представления нет). Что это настоящее двадэ, а не эмуляция с отключенным Z.
Смотрим Spatial (главный предок всех тридэ-объектов)
> class Spatial : public Node {
Всё сходится, он тоже унаследован от общего класса и задаёт совершенно несовместимую с двадэ ветвь объектов.
Так пишешь, как будто unity-блядина знает, что такое наследование и может понимать определение класса на С++.
Ну а вдруг? Добрее надо быть. Как там говорят пониёбы: "и обретёшь ты друга, став ласковым с врагом"
ААА, что ты сделал, скотина! Ты заставил меня открыть код годота.
>Понимаем, что это совсем другая ветвь наследования от общего объекта Node
Какая разница? То, что в годоте навелосипедили отдельную абстракцию рендера для канваса с нуля не значит, что само 2д рендерится как-то иначе чем в юнити.
В юнити тоже есть абстракция канваса, и используется она для UI. Причем это сделано не запиливанием всего с нуля, а очень элегантно поверх существующей архитектуры с помощью компонентов. Можешь погуглить.
>>47268
>И вообще, первое, что меня восхитило в годо при его изучении
А ты любитель извращений, если этот говнокод тебя "восхищает"
>как будто unity-блядина знает, что такое наследование
Мы в unity треде в отличие от тебя знаем, что наследование - это анти-паттерн, и используем компоненты вместо наследования.
>наследование - это анти-паттерн
Взорнул. Все, что в юньке не работает - это антипаттерн, ясн. Каша из компонентов - норм архитектура, так и запишем.
> типа такой не знает разницы между z-осью и z-порядком канвы
Так толсто, что даже тупо.
Батя одобряет.
Мы в годотреде знаем, что само следование паттернам - это анти-паттерн.
Да, когда обоссали за тупость - самое время ебануть гринтекстом порашных мемцов.
>Eбанутые спорят о каком-то мифическом 2D в мире OpenGL, где 2D нет вовсе.
>>47290
Для "2D" не важно расстояние между плашками текстур, так что исключительно в целях экономии используется инт вместо флоата. Потому, кстати, народ частенько ебётся с параллаксом и пишет для него свои велосипеды. Но, опять же, можно нахуй послать всю экономию и включить GL_DEPTH_TEST. Но всё ваше 2D это 3D плашки в ортографической проекции.
>Неудобный пост, игнорируем
Что в нем неудобного, ебанько? Эту демку энтузиаст забесплатно сделал, какие ему предъявы?
>Eбанутые спорят о каком-то мифическом 2D в каком-то мифическом OpenGL в мире машинного кода, где вообще ничего нет, кроме машинного кода.
Обосрался - обтекай, маня.
Вот тут https://github.com/godotengine/tps-demo/
Но сначала надо поставить https://git-lfs.github.com/ чтобы выкачать большие файлы ресурсов.
А еще нужен свежий билд самого движка.
>собираешь такой $10.000 донатов в месяц на движок
>не делаешь движок
>вместо этого делаешь "забесплатно" демку
Шоб я так жил.
> делаешь "забесплатно" демку
Юнититупица, думаешь Хуан сидел концептил и моделил? Потом материалы подбирал, красил. Вот же ты юпитиебанько смешное.
Пилю систему диалогов для игры. Так как я долбоёб и ничего особо в голову не приходило, то остановился на пикрелейтед-словаре, где каждый диалог имеет свой ключ, ключу сопоставляется что-то вроде графа, где есть персонаж, который говорит реплику, id-шник реплики, которая берется из файла, спрайт ебальника и следующая реплика. Ну и дополнительно для выборов есть вариант, когда вместо имени персонажа будет question с вариантами и репликами, которые следуют за каждым ответом.
Правда, меня пугает то, что придется хранить все диалоги в одном словаре. Как бы не было слишком сильной нагрузки при поиске нужного. А еще мне не хватает в этой реализации возможности запомнить какой-то ответ, чтобы в будущем использовать. В общем-то, я и так могу использовать костыль по типу того же question, типа ввести еще какую-нибудь команду, вроде remember_answer и check_answer или что-нибудь такое, но мне кажется, что слишком костыльно.
Ну тогда расскажи же, кто это делал, если не Хуан. Не можешь? Вот и заткнись.
>>собираешь такой $10.000 донатов в месяц на движок
>>делаешь
но ведь Хуан ничего не делает. 600 коммитов за год, половина которых мержи, а другая половина изменение 3-4 строчек
Скорее под стол, в горшок сливает все
Ух ты! Вот тебя-то я и ждал! Уже месяц ищу, с кем бы обсудить, как запилить годную диалоговую систему.
Пилит по тихому
@
Заливает подставному контрибьютору
@
Тот создает пулл реквест
@
Мержит
Ай, Хуан гений!
Может использовать систему типа как в mass effect: если разговариваешь норм - становишься "хорошим", если негативно - "то плохим", исходя из этого доступен набор определенных реплик; сделать некий счетчик и "вес" для каждого ответа, который влияет на него.
1. Не надо хранить все диалоги в одном файле. Есть множество вариантов разделить их на отдельные. Например, классический вариант: каждый диалог прикреплён к каждому НПЦ и имеет одну или нескольких стартовых реплик. В одном файле хранится полный диалог, включая реплики НПЦ и реплики ПЦ (героя) Часть реплик привязаны к скрипту, который проверяет, выполнено ли условие для появления этой реплики. Такой вариант прекрасно подходит для инди-разработки не слишком сложного квеста. Реплики хранятся в отдельном файле, у каждой реплики есть ID, у всех реплик кроме стартовых есть ссылка на ID предыдущей реплики.
2. У меня есть задумка сделать более комплексную систему. Которая бы учитывала, что герои могут быть разные, могут меняться по ходу игры прямо на локации. Герои могут быть разного пола, расы, ориентации. НПЦ могут реагировать на погоду, боевые действия и этапы игры.
Для организации такой универсальной системы я пока что придумал такой вариант (пришедший из интерпрайза):
Есть база данных, в которой хранятся заранее написанные строки-реплики, у которых есть ряд полей, привязывающих строку к нескольким логическим категориям. К полу, к расе, к погоде, к квестам. Таким образом, о каждой записи в БД можно сказать, в какой ситуации неписю будет уместно сказать реплику из этой записи.
При загрузке локации, каждый НПЦ делает запрос в БД, посылая параметры, свой пол, расу, характер, погоду вокруг, боевую обстановку, дополнительно его запрос проходит через менеджер сцены, который добавляет параметры, типа, какйо квест сейчас у игрока. В ответ от БД приходит словарь с готовыми репликами как в п.1. Если на локации происходит смена обстановки, например, заспавнились демоны АДА и игрок пиздится с ними, менеджер сцены посылает широковещательное сообщение о смене ситуации, после чего все зарегистрированные слушатели посылают повторный запрос в БД о смене словаря с репликами.
>>47468
Ты тредом не ошибся, ассетофлипер?
Само собой, полей должно быть больше, это просто пример на скорую руку.
Суть токова: НПЦ производит выборку из БД и строит себе диалог со всеми разветвлениями, со своими репликами. Я выше написал, что он запрашивает словарь при смене, но очевидно, что это надо делать при начале диалога. Для того, чтобы определить параметры собеседника. Если диалог реалтаймовый, то перестраивать реплики, при изменении сцены.
- Привет, юзернейм!
- Привет, юзернейм!
- Как жизнь?
- Нормально. А у тебя?
- Прекрасно! Кстати, давно хотел у тебя спросить.
- Без проблем, юзернейм!
(и тут за углом что-то громко ебануло)
- Юзернейм, спасайся! Что-то ебануло!
- Аааа! Я так молод, чтобы умирать!
- Аааа!
(разбегаются в ужосенах)
Ну и скиллчеки, куда же без них? Точнее просто скриптчеки, включая чек скиллов, но поскольку система мыслится как глобальная, то будет возможность просто привязать скрипт, который что-то чекает и возвращает бульву.
Добавил матрицу отношения к собеседнику. Система универсальна, поэтому именно матрица, где ось х - дружеское отношение, у - любовное. Таким образом, прямо в ходе диалога отношения между собеседниками могут меняться, и при этом будет перестраиваться диалог. Если ГГ удачно соблазнил НПЦ, то появляются новые реплики "милый, любимый" и т.п. Если удачно подружился, то появляются реплики "братишка, чувак" и т.п. И наоборот, если поссорился или начал вызывать отвращение, то соответствующие фразы.
Да хули мелочиться? Вместо пола тоже гендер ебанём со значением-матрицей.
Тоже не понял. Давай выйдем?
>>47491
Да хули? Гулять так гулять! Раса тоже будет вектором, пространством, где х - это баланс между человеком и арахнидом, у - баланс между эльфом и орком, а z - баланс между гномом(полуросликом) и дварфом ("гномом" в неправильных переводах).
Например, человек-полуэльф - это (1,-1,0), чистый эльф (0, -1, 0), орк (0,1,0), эльф-полуорк с примесью арахнидских кровей (-0.25, -0.5, 0), полудварфка-человек (1,0,1)
Таким образом, ноль по оси = отсутствие крови, любое значение от 0,01 до 1 в любую сторону это процент соответствующей крови в родословной.
Итак, погоду я удалил из таблицы. Это сложная сущность, состоящая из множества параметров, которую лучше чекать скриптом. Например, сделать скрипт, возвращающий бульву, идёт ли дождь? и если да, то реплика становится доступна в пуле реплик. Время суток сделал матрицей, символизирующий период суток, в который реплика появляется в пуле реплик.
Пул реплик, напомню, это результат запроса НПЦ в БД по репликам.
Падажжи, это ведь скрипты, написанные на движке, будут обрабатывать всё это, события, флаги, триггеры. И в свете последних событий, GDscript такое не потянет? Представляю, как ты отвечаешь на диалог и ждешь минуту-две, лол
Я не рассматриваю гдскрипт, как средство для описания ядра игровой логики. Тут по любому си: либо плюсы, либо шарп. На гдскрипте только простейшие вещи делать. Типа, запуска анимаций или таймеров каких-то. Плеер анимаций - это внутренний объект движка, ему похуй, каким языком он вызван на исполнение. И таймер тоже.
Этот прав.
>>47501
Короче, смотрите, накидал еще логики.
Суть вот в чём. Будет поле для скрипта-условия и скрипта-результата. Скрипт-условие возвращает значение (не только булево, можно вернуть какую-то строку и подставить в реплику через стандартную подстановку). Скрипт-результат значения не возвращает, просто выполняет нужное действие в игре (например, инициирует бой).
И вот еще, самое главное забыл! Приоритеты реплик. У каждой реплики в БД будет приоритет. Сейчас в данном примере у всех реплик нулевой приоритет, самый низкий.
Чем выше приоритет, тем вероятнее, что НПЦ скажет именно эту реплику. Квестовые диалоги будут написаны с повышенным приоритетом, кроме того, если в интерфейсе игрока есть несколько взятых квестов, и пара из них обращены к одному НПЦ, то, чтобы диалог шёл в правильном русле, будет применена хитрость. В интерфейсе игрока будет возможность выбрать текущий квест (типичная геймплейная фича), при выборе квеста, приоритеты реплик, относящихся к нему будут домножены на модификатор таким образом, чтобы у них стал гарантированно самый больший приоритет.
В БД диалоги следует писать организованно, например, квест начинается с ID 1000 и заканчивается на ID 2500, затем идёт следующий квест. Все квесты основной кампании заканчиваются на ID 100500, затем идёт диапазон под ДЛЦ и моды, скажем до 500000, следовательно, домножая айдишники выбранного квеста на 500001 мы гарантированно будем беседовать только о квестовых вопросах.
Блять, какую хуйню я щас написал.
Я же наоборот приоритетами от учёта айдишников хотел избавиться.
Значит фикс:
0 - общие диалоги, когда ничего не происходит и всё нормально
1-9 - приоритеты плохой погоды, где 1 немного хуёво 9 - шторм, вьюга или ещё какой пиздец. Подробности пиздеца уточняются скриптом-условием.
Далее можно комбинировать регистры и на десятки повесить что-то, что комбинируется с вышенаписанными приоритетами, например:
10-90 - приоритеты опасных локаций, где 10 - могут выгнать, 90 - могут убить
Потом два-три регистра выделяются на квесты, таким образом, приоритет 1024 будет означать "квест №10, на локации с весьма отвратительной погодой, где могут оштрафовать на крупную сумму при обнаружении".
Соответственно, максимальный приоритет, при данном раскладе 9999, если у нас запланированно 99 квестов достаточно домножить реплики 1000..1099 на 10000, чтобы квест №10 гарантированно был в приоритете. Если у игрока в журнале взяты квесты 7, 10, 22.
Но вообще, это тоже хуёвая идея. Внезапно захочется увеличить количество условий и что? Всю БД диалогов обновлять? Так. Думаем, годаны.
Я имею отношение к годоту. Законом не запрещено - пишу диздоки где хочу!
>Проще говоря, гдскрипт пригоден для скриптов, в которых нет функций _process в любом виде.
В большинстве игор не надо ничего считать, двигаешь объекты, проигрываешь анимации, партиклы запускаешь. Вы специально придумываете себе сложносчитаемое говно, потому что вы говно и не можете в геймдизайн.
Этот дело говорит. Разрабатываете какую то хуету, а делали бы визуальные новеллы, как он - не надо было бы ничего считать. Заодно и сразу бы оказались на вершине гемдизайна. Посмотрите правде в глаза - никто не будет помнить лет через 20 эти все ваши гномьи крепости, римворлды, x3, парадоксодрочильни итп, а вот Бесконечное Лето останется в истории игропрома навсегда. Наши правнуки будут учиться геймдизайну по примерам оттуда.
Зависит от того, что ты хочешь иметь под годной диалоговой системой. Есть система как в том же масс эффекте, где сам персонаж становится злее/добрее, и от этого зависит доступность реплик. Можно сделать просто как в каком-нибудь андертейле, где твои поступки запоминают. Вариантов много, что хочешь ты? Или тебе интересна техническая часть?
У меня же будет второй вариант. Игра запоминает твой выбор в диалогах, а в той релизации как на скрине достаточно использовать какую-нибудь инструкцию уровня "check_choice", и от её исхода будет определено, в какое следующее состояние-реплику перейдёт игра.
>>47471
В общем-то, система у меня и напоминает то, что ты в первом пункте описал. Проблема не в том, чтобы хранить всё в одном файле, это всё равно делается в синглтоне, загрузка файла будет лишь один раз при запуске игры, и много проблем она не доставляет. Мне интересно, насколько тяжело обрабатываются словари, и действительно ли может быть вариант, когда каждый диалог по две минуты загружается.
>Мне интересно, насколько тяжело обрабатываются словари, и действительно ли может быть вариант, когда каждый диалог по две минуты загружается.
У тебя есть 3 варианта:
1. Правильный: протестируй обработку словарей и выложи результаты в тред, заодно и анонам поможешь.
2. Ультимативный: пусть словари в шрпе обрабатываются. Там все точно будет быстро.
3. Похуистичный: ничего не делай, надейся что и так прокатит, а если не прокатит - там уже будешь думать.
Ну вот взять например шутер какой-нибудь, что там обсчитывать? Слешер? Платформеры всякие. Гномьи крепости в очко себе засунь, гном проткнутый.
>шутер какой-нибудь, что там обсчитывать
ИИ, физику, баллистику. Если все это обсчитывать нормально и если в бою больше 20 человек, то даже если бы ты кодишь на крестах, а запускаешь на i7 8700k, то производительности все равно не хватит для стабильных 60 фпс, как, например, в арме.
https://www.youtube.com/watch?v=jOZ_EucwDMs&feature=youtu.be
Но о чем это я. Там дилетанты, которые просто не могут в геймдизайн. Дали бы тебе это делать - ты бы использовал божественный гд скрипт вместо жалких крестов, приправил бы геймдизайнерскими решениями из визуальных новелл - и вуаля, арма летает на любой кофемолке.
Самое главное, определиться с балансом между постоянными и изменчивыми данными, и хранить постоянные данные в файлах, а изменчивые данные чекать скриптами при выводе строк диалога.
Например, раса персонажей - величина постоянная, элайнмент (если купил лицензию на ДнД) или карма - нет, может меняться по ходу игры, причем прямо в диалоге. Погода - непостоянная, но меняется медленно. Экшон - тоже непостоянная и может очень резко меняться (в локацию телепортнулся скамп, стражники его убили и опять тишина) - и это с одной стороны должно влиять на диалог, а с другой стороны игрока будет раздражать, что посреди процесса обольщения, внезапно тяночка прерывает диалог и убегает, хотя скампа уже давно пришибли, а у неё ИИ ещё не обновил поведение.
Поэтому в определенных случаях в файлах можно хранить так же и изменчивые данные, но только те, которые изменяются медленно, даже если они начинаются резко, они должны длиться долго. Иначе убираем такие факторы из файла и чекаем скриптом.
Но много полей со ссылками на имена скриптов - тоже вредно. Будет тормозить. Короче, золотая середина нужна.
Ну и вариант 1 отсюда >>47553 двачую.
> что ты хочешь иметь под годной диалоговой системой
Система, в которой общая база реплик для всех персонажей. Реплики будут иметь гибкую систему ограничения своей применимости. Будут реплики, доступные всем, будут реплики доступные в отдельных локациях, реплики, доступные в отдельных ситуациях и реплики, жёстко закреплённые за определенными персонажами.
Любой персонаж через универсальный механизм делает запрос в БД и получает список, что он может сказать сейчас. Список отсортирован по внутренним рейтингам и персонаж просто берёт самый рейтинговый вариант, либо кидает дайс д3 на три варианта сверху. Кроме игрока. Игрок, очевидно, будет выбирать из реплик у себя в ЮИ.
> элайнмент (если купил лицензию на ДнД)
Отмечу, что для элаймента не надо покупать лицензию, так как он описан в SRD под лицензией OGL, а она - опенсорс в мире настольных игр.
Зато опен сурс. Это же плюс движка, верно?
Можно повесить фотку Хуана рядом со Столлманом и дрочить на них... ну и все, других преимуществ опен сорса нету
А может ты?
это делается не в пидорском годоте
годотопидор-распидор, не бомби )
Tearoom
Признаю, забавно
Господи, какая же милая девочка, как же хочется её обнять!
и что мешает?
Сделай лучше хуле ты ждешь?
Рендерер свой занимает 250-500 строк кода
https://habr.com/ru/post/436790/comments/
Всякая математика типа sprite.move, rotate еще столько же
https://habr.com/ru/post/131931/
Что там останется то? Загрузку ресурсов написать, ввод мыши/клавы/джоя, гуй. Анимацию. Звук.
Каждый день юзаешь годот, юнитипидар?
вот уеч сила
а годот понос для быдла
Погоди, но ведь для быдла делают лучшие вещи в мире. Выходит, ты похвалил годот.
У меня так горит пердак оттого, что вы оскорбляете годо, лучший в мире движок, что я третий день не могу капчу угадать!
у тебя ж пасскод, распидарас
>какое же годот говно для пидаров это просто пиздец
>вот уеч сила
>а годот понос для быдла
Юнитипидар, вылезай из под обоссанного куста, тебя видно.
https://github.com/godotengine/godot/issues/24952
>не работает GLES2 на самом ходовом андроиде (Xiaomi Redmi)
>не работает GLES3 на Google Nexus
>не работает GLES2/3 на встройке
https://github.com/godotengine/godot/issues/24994
>3D редактор подвисает на 1,5 минуты. Полторы минуты, Карл.
>GLES2 на винде вообще не работает
Хуан уже начал собирать донаты чтобы нанять специалиста с авито и починить
Чинят, юнитипидрилка, чинят, не переживай так за годот.
со стимОС
Где-то год назад его в вебе запиливали, хуан ссылку давал, но там редактор только работал, кто-то ради забавы сделал.
так и есть
если б не распидор со своими гомотворениями, на годоте вообще бы никто не писал
а так есть один очень верный гомофанат
>Только вот зачем?
Ну что ты как маленький
Пока едешь на работу/с работы в метро нахлынула идея, ты взял зашел и изменил
В юнити к примеру есть ремоут для этого, уебищно но хоть чтото
Сам себе подсасываешь, юнитичмо.
Нет, нельзя. Я же погуглил до того как отвечать. Плагины редактора не соберутся, редактор не заведется.
https://github.com/godotengine/godot/issues/17385
Сам такой!
Эти дауны опять накидали крысе денег, ебануться, это на пять месяцев можно было еще одного кента нанять для разработки.
Охуенно!
Анону таких денег вообще на всю жизнь хватило бы. За що.
Почему ты такой токсичный, юнитипидар? Чего тебе печет ежеминтуно? Ты прямо несчастен глубоко, осознаешь свое ничтожество и тупость.
Зачем ты ему отвечаешь? Просто репорти.
распидор и есть годотопидор азазаза
https://www.youtube.com/watch?v=mMhjn_JrnF8
Ну здорово, может к 2087 году на годоте выйдет играбельная игруля
Подожди, ну чего ты.
>выжал максимум из движка
Эх, сейчас бы выжать всю кровь из твоего мерзкого тела...
https://www.youtube.com/watch?v=R6HD1L4dqMg
>программировать с пс4?
Через дополнительный платный сервис: http://www.lonewolftechnology.com
В рандомные моменты зависает редактор вешая систему(графику, в консольке попердолиться можно без проблем)
причм даже если убить процесс, то так же остаётся висеть редактор на рабочем столе и никак не реагировать(и само окружение тоже, не только редактор)
Debian testing, XFCE, Godot 3.1 beta2 и 3.0.6 из репозитария, ведут себя одинаково
inb4 : А мог бы не пердолиться, а в юньке игори делать
> Debian testing
Каждый раз в голос. Да, вроде попадалось, посмотри в ишьюях за месяц на гитхабе.
Чувак, это линукс. Там графику ломает и вешает каждый чих. Не знаю что там с XFCE, думаю такое же глючное говно, как и KDE.
А если у тебя с английским не очень, нахуя ты на тестинке сидишь? Нахуя вообще ты на тестинке занимаешься девелопом. Тебе слово тестинк ни о чём вообще не говорит?
я не только про с++ спрашивал.
https://www.youtube.com/watch?v=1T9WqxsJtog
Я уже тысячи комбинаций лайтинга и оклюда сделал, но стены через стены всё равно просвечиваются.
у меня в игре дохуя объектов должны стоять поверх других и чё, на каждый делать тайлмап?
Тайлмапы это фон. Если у тебя стак предметов на клетке, это делает не через тайлмап, конечно.
Если условно говоря ты убиваешь волка из него выпадают когти х 5, шкуры х 10, то просто добавляешь спрайты как child, потом когда игрок их коснется, они подберутся при коллижне.
Если же ты делаешь что-то совсем замороченное, хз, можно попробовать думать в таком ключе - тайлмап это двухмерный массив, можно завести еще один двухмерный массив такого же размера, где каждая ячейка на самом деле список предметов, которые в ней находятся.
Если же ты просто делаешь хитроумный фон, то и твой подход может быть норм - типа, один тайлмап для земли, один для лесенок поверх него, один для камней или гор и т.д.
http://lua-users.org/lists/lua-l/2010-02/msg00334.html
>PyPy/C is comparable with gcc -O2, and faster (6x) than LuaJIT 2.
>PyPy/JIT is faster (25x) than LuaJIT 2.
Как-то довелось по работе пересечься. Уже не помню что там, но даже банальные конструкции типа доступа к массиву рабоали неинтуитивно.
А речь про интерпретируемые. Поэтому для игр связка с++ и Lua.
>>Date: Thu, 11 Feb 2010 00:51:08 +0100
а вот и победитель по актуальным тестам, как там в прошлом веке-то
Сырое недоделанное говно. Презираю его всей душой и ненавижу.
дрочить вслепую?
Ну в такую шизофрению ясное дело никто играть не будет.
Почему этот пиздец еще не выпилили из стима? Там есть возможность пожаловаться, чтобы это говно убрали из маркета?
>0 all-time peak
Либо распидор даже на заходил в своё васяноподелие, либо Стим его даже за человека не считает.
Но ведь такое говно как раз для стимопараши.
https://youtu.be/LXnW6WL7cSE
Что то это все напоминает дрочево кубов в рисоваче. А игр так и нет.
А я ведь выше писал об этом уже. Только в моем случае он даже заработал, но только один раз, на этом все и закончилось. Очевидно, что для таких вещей нужно брать Юнити, где рекламный модуль, как я понял, подключается в один клик.
Мобилкопидоры должны страдать.
Просто пойми, что ты рак индустрии, убивший все годные игры, и выпились.
Это же прекрасно. Минус одна игра, где будет всплывать мигающий баннер на весь экран. Спасибо, Годот.
>игра сделана
Так нихуя не было сделано, какой-то отсталый скачал движок, не осилил, пукнул под себя и пошел дальше смотреть ржаку на ютубе.
Так говоришь, как будто бы он взял и захуячил достойную игру в одно рыло, если бы у него всё собралось.
https://youtu.be/lPngD4uzWVc
Плохие отзывы об этом GI, то глючит, то не работает, то тормозит. Подожду пока.
Так до этого на юнити была сделана, там все просто в этом плане. Даже не нужно движок компилировать, все сразу для людей. Я просто хотел что то новое попробовать, откуда было знать что годот еще сырой для игростроения.
>>51372
Я просто хочу денег, почему вам так горит с этого достойного, определяющего человека в социальной иерархии, факта :C
Это обучалка, дебс. И да, не везде можно легко делать процедурные лабиринты из кубов.
Суть такова (может мне вообще все по другому надо сделать?): Я подхожу к объекту и рейтрейсом проверяю могу-ли я с ним взаимодействовать. Луч падает на interaction_area, по этому скрипт туда и вешаю (можно было бы повесть на рут, так проблем с ссылками нет, но не совсем понимаю как взаимодействовать с скриптом). Мне нужно чтобы при взаимодействии открывался какой-то простой гуи с парой кнопок, так что если взаимодействие происходит я его открываю (.visible = true)
>361 ошибка
Еще вот эта параша появилась после того как добавил модельку со скелетной анимацией: 0:00:07:0466 - Condition ' is_rotation() == false ' is true. returned: euler
----------
Type:Error
Description:
Time: 0:00:07:0466
C Error: Condition ' is_rotation() == false ' is true. returned: euler
C Source: core/math/matrix3.cpp:462
C Function: get_euler_yxz
Не, я серьёзно
Вообще не понятно зачем кто-то в нем работает когда существует куча более удобных альтернатив
Такое ощущение что его хвалят только люди которые вообще нихуя не делают
Но к сожалению годот с самого начала создавался чтобы срубить как можно больше денег при этом делая как можно меньше
>годот с самого начала создавался чтобы срубить как можно больше денег
> MIT лицензия
> Открытый код
Эксперты в треде.
Вот теперь пазлы сошлись в одну картину - Хуан мошенник.
Не вижу что-то альтернатив.
Лично я рекомендую делать весь UI, в том числе HUD как синглтоны (через автозагрузку в параметрах проекта).
Тогда тебе не нужно будет мучительно получать ссылку на визуальный интерфейс, пробираясь через дерево нод и сцен. У тебя будет переменная в любом скрипте. И ты будешь без задней мысли писать: HUD.Enable() или MainMenu.Show("Settings")
Соответственно, в твоей задаче, после того как ты областью определил, что предмет рядом с игроком, а лучом определил, что игрок смотрит на предмет, ты даёшь команду синглтону, например: HUD.ShowLootMenu(ContainerID)
Само собой, ты все эти команды должен сам описать.
Синглтон - антипаттерн, но в случае UI его использование оправдано.
Чому? Это же геймдев. А геймдев тяготеет к рассылке событий, компонентным системам.
Сегодня всё утро допиливал велосипед с глобальным менеджером сообщений, по этой ссылке: https://godotengine.org/qa/10650/best-way-to-create-events-between-two-nodes
Исправил некоторые ошибки. Всё работает, но есть неудобства. Нужно вручную отменять подписку на сообщения при уничтожении объекта. В крупном проекте это может оказаться хлопотным и трудноотслеживаемым делом.
Но в целом мне понравилось. Можно полностью переписать код получателя сообщений (подписчика), совершенно не затрагивая код "сообщателя". И наоборот.
>>51624 (Del)
Охлади трахание.
Хм если бы это были плюсы, повесил бы в деструктор. Может отписываться при получении события leave tree или как то так.
Да. Туда и пихал (_exit_tree). Проблема в том, что пихать приходится вручную.
Спасибо, я гляну синглтоны, но моя проблема пока решилась через get_node("../../HUD") хотя в документации такого нет. Пока что у меня и так у объектов, с которыми можно взаимодействовать, есть функция interaction(), а дальше утиная типизация object.has_method(interaction)
>тяготеет к рассылке событий, компонентным системам
>HUD.ShowLootMenu(ContainerID)
Так у тебя нет никаких событий
Как нет? Объект который получает есть (HUD), событие ShowLootMenu, айди вызвавшего событие передается.
Чтобы не писать ../.. (ну вдруг у тебя нода переедет в глубину по дереву, тогда придется путь менять) можно воспользоваться
get_tree().get_root() - это корневая нода сцены.
Так не работает, потому что скрипт и hud в свой отдельной локальной сцене. Возможно я что-то не так делаю.
Если кому-то лень это слушать, то тезисно:
1. Юнете сложна! Сложна, нипанятна!!! Много кнопак!
2. Опенсорс кококо!
3. Разраб годота лайкнул мой пост в твитторе.
По-моему, очень весомые аргументы, чтобы выбрать движок для игры мечты.
Много кнопок вполне себе аргумент. Местным Кириллам никогда не понадобится больше половины свистелок, которые есть в юнити и уече, но они занимают место и время.
inb4 не надо - не используй. Только вот засоренный интерфейс и растерянность начинающих Кармаков так и останется.
>Много кнопок вполне себе аргумент.
Да это вообще пиздец, они заебали. Уже сделали отдельно рендер типо все настроено, все равно миллион галочек нужно нажать, одни эффекты на камере, другие отдельным объектом, третьи где-то в жопе, в одной из жоп и в дргих еще полно. Нужно не отдельно рендер, а версию движка где профи уже настроили на максимум, юнитидебил все равно лучше их не сможет.
Может это пародия на видосы юнитидебилов, которые не понимают как пользоваться годотом?
При запущенном проекте посмотри удаленное дерево сцен. Оно очень многое проясняет при внимательном изучении. Сразу видишь, как все что ты напроектировал собрано в одно дерево.
> Или может это мнение человека, который хочет быть особенным, и пытается за уши притянуть хоть какие-то аргументы, почему годот лучше?
Тогда это точно пародия. Потому что в видосах "критики" юнитидауны именно высасывали из пальца хуйню типа хоткей добавления ноды не такой как в их редакторе.
Чё то в голос
Не могу найти в хистори что-то, может у кого сохронилось. Там какой-то юнити пидар поставил 3.0 альфу, открыл демо 3d платформер и такой давай обсираться: чет не могу выделить монетки мышкой, а, надо было выбирать сцену в списке нод, хоткей не работает а в юнити работал, пытается добавить еще монетку, перетаскивая ее картинку из ассетов. И потом в конце говорит не ну это не готово.
>поставил годот вместо юнити
>на следующий день проснулся как белый человек, а не от того, что тебя насилуют в задницу
>не, ну это не готово, вернусь на unyti
Ты в нем работаешь или просто свои чиркаши сюда приносишь?
Когда мне надо быстро отправить обрезаный скриншот, или что-то затереть на картинке или ещё что-нибудь простое, то лично я всегда использую пеинт, потому что пока фш загружается, в пеинте я уже все сделаю.
Прототипирование вполне себе задача. Алсо ты думаешь тут на ГД всё ААА прожекты пилят? Никто не отрицает что для больших проектов юнити или уеч хорошо подходят, что какгбэ доказано наличием больших игр на этих движках. Но тебе надо понимать свои возможности, чтобы ставить чёткие задачи. Тебе же чтобы дома забить гвоздь не нужен Magic© Гидравлический молоток со стабилизатором из титаниума, ручкой из красного дерева и системы противовесов и рычагов? Когда у тебя спросят зачем тебе такое и ты ответишь чтобы забить гвоздь, то ты будешь выглядеть так же нелепо как когда тебя спрашивают зачем тебе юнити,а ты отвечаешь что ты делаешь свой майнкрафт где можно грабить корованы.
>Получается, что анриал нужен для того, чтобы делать игры, а годот - для того, чтобы по-быстрому сделать демку, а юнитиговно непонятно зачем вообще существует, профи всегда возьмет анриал, а юнитиговно для неучей. Ясно-понятно.
Шизику неприятно и он начал спорить с собственными фантазиями.
>>51877
Зачем осваивать инструмент, который изначально не подходит для выполнения серьезной работы? Можно потратить то же самое время (и гораздо меньше нервов, документация-то есть), изучая юнити или уеч, став в итоге востребованным специалистом, вместо того, чтобы тратить время на заведомо мертвую технологию.
>Сегодня всё утро допиливал велосипед с глобальным менеджером сообщений, по этой ссылке
Короче, запилил.
Мои опасения оказались напрасны. В большинстве случаев слушателей не очень много и они постоянны, не составит труда пихануть каждому в _exit_tree функции разрегистрации.
А вот эмиттеры сообщений вообще никакого дополнительного кода не требуют. Просто пишешь без задней мысли: evman.raise("user_message", "Moving: " + String(axes)) и всё, слушатель - экранная консолька, которая выводит сообщения на экран.
Годот Круто!
>>51886
Скажи "Годот Круто!" И извинись.
>>51561
>рубрика "вредные советы"
А вот теперь можно и внести поправки к посту:
>>51550
UI и HUD всё ещё следует пихать в автозагрузку (пикрелейтед 1), но синглтоном отмечать только ивент-менеджер (пикрелейтед 2). Всё взаимодействие с автозагруженными нодами вести через него.
Вместо HUD.Enable() писать evman.raise("SwitchHUD") например. И т.д. При этом автозагруженная нода HUD при входе в дерево подписывается на прослушивание "SwitchHUD" и т.п., при выходе, соответственно, отписывается.
>инструмент, который изначально не подходит для выполнения серьезной работы?
Смотря что для тебя серьезная работа. Может я даже не хочу связывать свою жизнь с геймдевом и идти в индустрию, меня может устраивает моя работа, а разработка это просто хобби. К хобби тоже можно относится серьезно.
>тратить время на заведомо мертвую технологию.
Ещё один эксперт? Тот же блендер уже не первый год хоронят, вот только 2.8 даст за щёку большинству подобных прог, и лично я вообще не жалею что перешёл с с4д на него 3 года назад.
>Изучая юнити или уеч.
Ну вот я свою прошлую игру сделал на уече. Отличный движок, хорошо его изучил. А текущую делаю на годоте. Знаешь, почему? Потому что игры разные и задачи разные. Для текущей игры уеч - оверкилл с кучей ненужных функций, да и нормальной поддержки 2д не имеет, которая теперь нужна.
Заметьте - уечеры не лезут в этот тред и не срут сообщениями в духе АЗАЗА УЕЧ СИЛА, ГОДОТ МОГИЛА. Потому что там адекватное комьюнити, которое понимает, что годот и уеч не конкуренты - они для разных задач предназначены. И только юнитипетухи со своим движком без задач (ведь уеч делает лучше почти все) пытаются кукарекать на годот. Но и тут их обоссывают. Понятно же, что на поле 3д доминирует уеч, по сравнению с которым что 3д юнити, что 3д годота - говно. Но для 3д годот никто и не использует, а вот в плане 2д доминирует уже годот. И именно этим он и ценен.
Ну и еще тем, что это лучший открытый движок - никаких тебе зондов в жопу, никаких логинов в аккаунты и никаких с тебя отчислений.
Я понял, кого напоминают эти юничидебилы. Это как вскукареки даунов, которые удивляются, что байкалы и эльбрусы медленнее интелов в которые уже вбуханы тысячи человеколет и миллиарды долларов. Алло, очнись, ты серишь! В годоте 3д всего год, а он уже сравним с юнити и уечем. Через год-два он их догонит, а потом перегонит. При этом его фишка в открытой лицензии. А значит, как раз таки сейчас и то и надо его задрачивать, потому что через пару лет это будет охуенно востребованная технология. Почему? Да потому что студии будут переходить на него, чтобы не башлять роялити юнитекам, и не бояться что у них отзовут лицензию. Тупо практично.
>пытаются кукарекать про годот
>обсуждение видоса "Почему я выбрал годот вместо юнити"
>в шапке до недавнего времени висело "ряя годот лудше юнити"
Отличный самообман, бро.
>Понятно же, что
Нет, не понятно. Аргументируй.
Слава богу, что распидора таки смогли загнать в загон годота и его жирные лапы не притронуться к няшным уе и юнити :3
Хуану слава!
>который изначально не подходит для выполнения серьезной работы?
С чего ты вдруг удумал, что серьезная работа - это таскать по сценке ассеты, созданные другими людьми? Серьезная работа - это например смоделить десяток персонажей, сделать для них текстуры, потом создать кучу анимации. Или полный жизненный цикл создания локации, от идеи и концептов до конечного результата. Придумать сюжет, написать музыку - вот это серьёзная работа. Глянь титры любой "серьезной" игры, там будет десяток программистов и сотни создателей контента - дизайнеров, художников, аниматоров и прочих.
И я бы на твоём месте осваивал что-то из этого, хотя бы частично, вместо того, чтобы дрочить на инструменты. Потому, что мастер одного движка, который не в состоянии сам создавать контент, никогда не создаст игру. Ну, речь о нормальных играх с душой, конечно, если для тебя "серьёзная работа" - быть рабом у дяди и клепать на юнити по одному "три в ряд" в неделю, то хуй знает.
И "серьезность" проекта в конечном итоге определяет именно контент, если взять один и тот же качественно сделанный контент и запихнуть в годот, unyti и уе - большинство юзеров, не имеющих отношения к разработке, а обычных игроков, просто не заметят разницы. Ну, на годоте, конечно, помедленнее будет работать, но это опять же зависит от контента - можно делать качественное лоу-поли с хорошими текстурами, и при этом рендериться будет на всех движках.
А контент создается не в движках, а в стороннем софте. Ты в unyti не нарисуешь текстуру и не создашь анимацию для рига.
Поэтому если хочешь создать хоть что-то в своей жизни, то переставай дрочить на движки и учись создавать контент.
Ну либо продолжай дрочить и участвовать в бесконечных срачах на дваче, доказывая всем, что юнити лучший движок и на нем можно сделать все, что угодно, а на годоте нельзя.
>"серьезность" проекта в конечном итоге определяет именно контент
Какой жыр. Прости нас Кармак, мы все проебали.
>Ты в unyti не нарисуешь текстуру и не создашь анимацию для рига.
))) Ну ты и правда не нарисуешь потому что можешь только трясти своей порванной сракой в тредах)
Ну уж извини, что пошатнул твой маня-мирок, такая вот сейчас эпоха выдалась. Это раньше каждая крупная игра двигала прогресс вперед, представляла новые крутые алгоритмы и на порядок превосходила игры прошедших лет, но уже давно это не так. Сейчас все устаканилось, новых прорывных технологий не было со врёмен тех самых крузисов, игры продолжают развиваться только в плане контента.
Я бы и сам хотел жить в 90ые, когда на движке, написанным в одно рыло, можно было создать игру мирового уровня, но сейчас каждый ебаный школьник может скачать уе и получить в свое распоряжение все передовые наработки в области геймдева за последние 20 лет.
Вот это манямир. Сейчас гораздо проще создать в одно рыло игру мирового уровня так как для этого есть огромный выбор инструментов и интернет с гигантскими объемами информации. Бери и делай игру без ебли. Ты б в 90 только клей нюхал, это максимум способностей судя по твоим постам.
>сейчас каждый ебаный школьник может скачать уе и получить в свое распоряжение все передовые наработки в области геймдева за последние 20 лет.
Ух бля школьники во всем виноваты, запретить, нипущать школоте качать передовые наработки. Ебать даун, ты перечитай свои посты и вдумайся какую хуйню ты пишешь.
> Сейчас гораздо проще создать в одно рыло игру мирового уровня
Так иди и сделай, ты заебал срать на дваче.
Контент это вообще ничто. Почти любая макака может рисовать персонажей (пользуясь твоей же логикой, в каком то готовом генераторе типа makehuman). А уж сочинять графоманские сюжеты так и вообще любой школьник. Однако же игру делают алгоритмы.
>Ух бля школьники во всем виноваты
Ты ебанулся? Где хоть слово о том, что это плохо?
Это тебе надо перечитать пост, перед тем как нести хуйню.
Смысл поста в том, что движки сейчас не играют такой роли, как раньше, а роль играет создание контента, чему и надо обучаться вместо дрочки на движки. А технологии за последние годы устаканились, сейчас нет гонки как раньше, когда каждая контора стремилась сделать на порядок круче, чем у конкурентов, и все ждали, когда же ID выпустит новую игру с немыслимым ранее графоном, и чем потом valve им ответит.
Сейчас каждый движок предлагает примерно одно и то же в разной обертке, и решает то, каким контентом ты его заполнишь.
>Почти любая макака может рисовать персонажей
В твоём маня-мирке охуенно живется.
Ты попробуй ради эксперимента хотя бы разок, взять тот же makehuman, высрать из него дефолтную модельку персонажа, импортнуть в блендер, сделать риг и хотя бы одну анимацию ходьбы, и потом импортнуть в любой движок на твой выбор (как я понял, это будет unyti)
Ты охуеешь от того, сколько жопочасов это займет и какое говно получится в итоге.
Уверен на 100%, что ты ни разу этого не делал, иначе не нес бы такой хуйни.
>А уж сочинять графоманские сюжеты так и вообще любой школьник.
Но люди не хотят играть в игры с графоманскими сюжетами, написанными школьниками.
Напишет ли школьник сюжет для условного ведьмака, даже с учетом готового сеттинга и персонажей? Со всеми его сайд-квестами, мифологией и политическими интригами?
Ты пишешь будто с сожалением, значит для тебя это плохо. Прогресса нет в твоем узком сознании, когда сегодня по сравнению с вчерашним днем ты не увидел прогресса. Советую почитать старые игровые журналы чтоб видеть реакцию на твои прорывные игры. У пиздюков не видевших игр мозг может и взрывался от невиданного графона, у игроков со стажем графон не вызывал катарсиса так как развитие было как раз постепенным, уж не знаю где там была "гонка" в плане технологий, все играли не в технологии а в игры. Че там за гонки игропрома, Q3 против UT? Для геймеров там была не гонка технологий, а то какая игра интересней. Гонка была разве что среди производителей 3д ускорителей, ты явно не о ней расписываешь, а о движках каких то.
>и все ждали, когда же ID выпустит новую игру с немыслимым ранее графоном
Как романтично вылупившийся при путине пиздюк расписывает мир который он никогда не видел, кек.
У меня это заняло 3 часа, с момента установки мейкхуман. Не знаю о чем ты.
Да где ты в современных играх видишь сюжет лучше школьного? В масс эффекте или рдр2? А вот майнкрафт взлетел без всякого сюжета. Только на алгоритмах - алгоритме чанков, алгоритме генерации, алгоритме взаимодейтсвия материалов, алгоритме редстона, алгоритме рендера вокселей в конце концов.
Вот только школьникам еще больше срать на твои "сюжеты" и "персонажей", а вот без алгоритмов майнкрафта бы тупо не бы ло.
> будто с сожаление
Ты высрал целый пост, полный жопной боли, на основании того, что тебе что-то там показалось. К врачу не думал сходить?
>при путине пиздюк расписывает мир который он никогда не видел, кек.
Опять мимо, дохуя чего видел, начиная от спектрума, денди и сеги. Помню, какой эффект производил первый дум, когда до него ты видел только 2д игры.
Помню квейк, который передавали из рук в руки на пачке дискет. Помню, как все спорили, что круче - готика или морровинд, а потом много лет ждали обливион, и охуевали от его трейлеров, которые шли на дисках в довесок к игромании - интернетов тогда еще не было в нашей провинции. А потом когда он вышел, почти ни у кого комп не мог его потянуть - отображался только белый экран, была нужна мощная и дорогая на то время видеокарта. Такая нашлась только у одного мажора, которому ходили толпами по двое-трое, чтобы поиграть в обливион, и все охуевали, насколько же шагнул прогресс по сравнению с морровиндом в плане графона/физона, но одновременно с этим игра стала не такой глубокой в плане проработки и деталей. Мне так-то много чего есть вспомнить и по чему ностальгировать.
>уж не знаю где там была "гонка" в плане технологий, все играли не в технологии а в игры.
Ты видимо в каком-то особом маня-мирке жил (а может сам еще просто не родился тогда)
Все с нетерпением ждали выхода того же дума 3, чтобы охуеть от реалтаймового освещения и теней, которого не было еще ни в одном движке, а сейчас это норма для любой игры. Халф-лайф 2 задал планку по той же физике, это была первая игра, которая вызывала вау-эффект физикой окружения, а сейчас любой школьник сделает это в два клика на юнити. До крузиса никто не слышал про SSAO, крайтек первые, кто придумал и использовал его, а сейчас это даже в годоте есть. Это и есть гонка технологий, когда все крупные конторы стремились сделать технологический рывок, то, что до них еще никто не делал. А сейчас такого уже давно нет, последние годы игры выпускают как по накатанной, такого качественного рывка как раньше уже давно никто не делал.
> будто с сожаление
Ты высрал целый пост, полный жопной боли, на основании того, что тебе что-то там показалось. К врачу не думал сходить?
>при путине пиздюк расписывает мир который он никогда не видел, кек.
Опять мимо, дохуя чего видел, начиная от спектрума, денди и сеги. Помню, какой эффект производил первый дум, когда до него ты видел только 2д игры.
Помню квейк, который передавали из рук в руки на пачке дискет. Помню, как все спорили, что круче - готика или морровинд, а потом много лет ждали обливион, и охуевали от его трейлеров, которые шли на дисках в довесок к игромании - интернетов тогда еще не было в нашей провинции. А потом когда он вышел, почти ни у кого комп не мог его потянуть - отображался только белый экран, была нужна мощная и дорогая на то время видеокарта. Такая нашлась только у одного мажора, которому ходили толпами по двое-трое, чтобы поиграть в обливион, и все охуевали, насколько же шагнул прогресс по сравнению с морровиндом в плане графона/физона, но одновременно с этим игра стала не такой глубокой в плане проработки и деталей. Мне так-то много чего есть вспомнить и по чему ностальгировать.
>уж не знаю где там была "гонка" в плане технологий, все играли не в технологии а в игры.
Ты видимо в каком-то особом маня-мирке жил (а может сам еще просто не родился тогда)
Все с нетерпением ждали выхода того же дума 3, чтобы охуеть от реалтаймового освещения и теней, которого не было еще ни в одном движке, а сейчас это норма для любой игры. Халф-лайф 2 задал планку по той же физике, это была первая игра, которая вызывала вау-эффект физикой окружения, а сейчас любой школьник сделает это в два клика на юнити. До крузиса никто не слышал про SSAO, крайтек первые, кто придумал и использовал его, а сейчас это даже в годоте есть. Это и есть гонка технологий, когда все крупные конторы стремились сделать технологический рывок, то, что до них еще никто не делал. А сейчас такого уже давно нет, последние годы игры выпускают как по накатанной, такого качественного рывка как раньше уже давно никто не делал.
Есть, есть. Вот например научный paper о том, как в бф1 рендерятся физикали-бейзед облака, вода.
>Ты высрал целый пост, полный жопной боли
Очень смешно слышать это от свиньи, которая уже несколько дней трясет разорванным сракотаном во всех тредах)
Дальше идет пиздецовый высер какого-то деревенского долбоеба которому батя привозил привозил диски с играми раз в несколько лет, не читал.
Да останови ты свои пожары, хватит, всё. Всем похуй на меня, похуй, только не рвись больше.
И как эта простыня опровергает тот простой факт, что Unity > Godot?
Рискну предположить, что никак.
А насчет сторонних програм ты прав, конечно. Сижу осваиваю блендер, благо запросы на модельки у меня более чем скромные.
Сделал туторы по лоу-поли и хай-поли, сейчас вот буду UV резать.
Пока что выглядит максимум несложно, после кодинга хороший отдых для головы.
Если только в твоем манямирке.
Уеч - это движок 3д экшн блокбастеров.
Нет, конечно можно уече сделать flappy bird, только зачем?
У этих движков разная целевая аудитория и разные задачи.
>Юнитиговно только для 2дговна как flappy bird
Юнитипидар сам обоссывает юнитиговно, спешите видеть
Абстрактный пример:
var flag = false
...
If flag:
-> x = a + b
-> flag = false
...
If need_x_update:
-> flag = true
Лол, даже я лучшего мнения о юнитиговне чем этот юнитикопрофил.
Юнити это говноиндидвижок на уровне годота.
Ну допустим.
UE4 > Unity > Godot. Как это опровергает то, что изучение годота - пустая трата времени?
>да и нормальной поддержки 2д не имеет, которая теперь нужна.
Так её и в годоте нет, лол
А на уи вон октопата забабахали, а что на годоте из ламповой двухмерной годноты? Нихуя
Можно не избавляться, просто называть вменяемо (is_need_ship_pos_update)
Можно вызывать в этом месте функцию
if need_x_update:
update_x(a+b)
Можно событиями или сигналами.
Тогда изучение всех движков, кроме анриала пустая трата времени. Но ведь это не так, юнитипидар? Ну подумай, порассуждай своей даунской башкой.
Стоят. Только добром и вежливостью мы сможем наставить юнитипидоров на путь годогетеросексуализма.
Через год-два годот будет в такой форме, что юнитикал будет нинужен. Фирмы будут выбирать бесплатный движок чтобы не платить роялти, ибо капитализм. Все вакансии будут под годот. И только юнитидурачки, не умеющие копаться в кишочках движков, а только ассетбашащие, будут грызть локти.
Я просто задал вопрос
Вот хотел переехать с юнити на годот, но столкнулся с полным неадекватом в ответах типа он бесплатный и опенсоурс как перимущества
Это пиздец, просто пиздец
Назуя в нем работать вообще не понятно и мне кажется даже те кто пытаются не могут себе это объяснить
Можешь еще посмотреть сетгеты, как тут называют проперти
https://docs.godotengine.org/en/3.0/getting_started/scripting/gdscript/gdscript_basics.html#setters-getters
Это функции, которые дергаются, когда значение меняется извне (другим классом)
Но с ними надо аккуратнее, не закладывать в них много побочных эффектов.
Хороший пример использования:
var diameter
var circumference setget circ_set, circ_get
func circ_set(value):
diameter = value * PI
func
return diameter / PI
Плохой пример использования:
var xpos setget set_x, get_x
func set_x:
load_hundred_scenes()
load_million_textures()
Тоньше пробуй, тоньше.
>func circ_set(value):
> diameter = value / PI
>func circ_get(value):
> return diameter PI
самофикс, не проснулся еще*
Я вроде бы проснулся, но не понимаю, как сеттеры-геттеры помогут мне избавиться от флагов?
Приведу конкретный пример. В процессе обрабатывается ввод с клавиатуры. Движение персонажа считывается непрерывно, а посылать сообщение об изменении направления нужно только один раз. Таким образом я делаю флаг "stored_x", в котором хранится значение по оси икс. И если перс меняет направление, то один раз посылается сообщение о новом направлении и флаг обновляется.
Как сделать то же самое без флага?
>Так её и в годоте нет, лол
Схуяли? Чего тебе в годоте не хватает для 2д? Как раз для этого там есть всё, что нужно.
>Отхуярили одну ось, причём криво
>Намного лучше 2д чем уи где отхуярили одну ось но прямыми руками
Ты какой то дурачок
>Вот хотел переехать с юнити на годот
Да всем поебать, съеби уже в свой юнити-загон обратно. Нахуй ты сюда пришел и срешь тут?
Если ты не видишь преимуществ, то движок не для тебя, очевидно же, продолжай жрать кал.
Если это для тебя не аргументы, так же как и mit лицензия, то годот не для тебя, ищи дальше. Вот и всё. Зачем на пол треда говно размазывать - не понятно. Может это не только та постарался, но тут шиза с обеих сторон началось, можно представить во что это выльется, если срач продолжится.
Это такой тонкий троллинг? Как раз таки в юнити отхуяченная ось.
Ты годот запускал вообще? Там отдельный pixel-perfect рендерер под 2д и своё дерево классов для 2д нод, не пересекающееся с 3д нодами.
Немного не понял, зачем тебе тут вообще флаг. Ты делал простые туториалы? Там вроде такое обычно и показывается. У тебя какой-нибудь персонаж, у него есть позиция x. Заводишь ему скорость vel_x. В каждом шаге process или physics_process делаешь x = x + vel_x. Все, вообще никаких флагов, а вот уже vel_x задаешь в обработчике кнопок.
Следующий этап - ускорение. Там заводится еще accel_x, и сначала делается vel_x = vel_x + accel_x, а потом x = x + vel_x.
А, может быть тебя смущает проверка направления? Ну тут обычно все просто - vel_x < 0 - влево, vel_x > 0 - вправо.
>но зачем
Вся суть отрицателей. Такие наверное и во время Wolfenstein3D/Doom/Quake говорили - 3d конечно можно но зачем.
>точно было можно, а может и нет, пруфоф не будет, я просто пизжу, не обращайте внимания
Пофиксил.
>Пользователь годота даже не знает как его 2д собственно работает
Ну конечно, юнити-псине виднее, как там что работает, она ведь эксперт в движках и рендеринге.
Я не очень понимаю, что такое изменение направления и кому ты его посылаешь.
Ну как вариант, говорю - вместо флага сравнивай знак скорости.
Условно говоря
if (vel_x < 0 && new_vel_x > 0) || (vel_x > 0 && new_vel_x < 0)
>Я просто задал вопрос
Где можно увидеть твой конкретный вопрос? Что именно у тебя не получилось в годоте? Выделить ноды? Добавить монетки?
Еще толще, блядь!
Ну вот я объясняю, как я вижу это без флагов. На псевдокоде:
func input()
if(key == LEFT):
new_vel_x = -5.0
if(key == RIGHT):
new_vel_x = 5.0
func process()
if (vel_x < 0 && new_vel_x > 0) || (vel_x > 0 && new_vel_x < 0): # <- вместо флага
tell_someone_dir_changed()
vel_x = new_vel_x
x = x + vel_x
Не вижу конкретного вопроса. Рассказывай, что именно у тебя не получилось сделать в редакторе.
Придется ответить картинкой, макаба нашла в посте какое-то слово из спам листа.
Да он и не запускал его ни разу, просто посрать сюда пришел.
Наверное правильнее как то так
func input()
if(key == LEFT):
new_vel_x = -5.0
elif(key == RIGHT):
new_vel_x = 5.0
elif
new_vel_x = 0.0
>Куча блоков
Уровень годота программирования
Нет чтобы захуярить несколько обработчиков на много объектов, не давайте для всего отдельный скрипт напишем а потом будет жаловаться на просадки фпс и слабый процессор
Ты сам-то понял, что спизданул?
Для чего "всего" отдельный скрипт? Написано же, каждый обработчик - отдельный метод в ноде, ты про ООП вообще слышал, или у юнити-макак это не принято?
У меня без ифов:
func input()
new_vel_x = int(key == RIGHT) - int(key == LEFT)
Охуенная штука, которую изобрёл лично я! Я! Ооо, моё ЧСВ!
>почему заведен new_vel
Потому что мне не нравится, когда логика обрабатывается в Input. Десятилетний опыт геймдева говорит, что это приводит к спагетти с фаршем. И для персонажа хранение new_vel много не съест. Ты же сам говоришь, что скриптов будет еще много. В том же туториале будет потом ускорение. Поэтому код поменяется на что-то типа такого
func input()
if(key == LEFT)
accel.x = -1.0
elif(key == RIGHT)
accel.x = +1.0
else
if(accel.x > 0)
accel.x = accel.x - DEACCEL_SPEED
func process()
var new_vel = vel + accel
if(new_vel.x > 0 && vel.x < 0 ...
tell_someone_dir_changed
vel = new_vel
position = position + vel
>почему _x
Потому что писал псевдокод, как пользоваться вектором есть в туториале.
https://docs.godotengine.org/en/3.0/getting_started/step_by_step/your_first_game.html
Ну такое работает пока у тебя вариантов управления немного, да. Можно еще домножить на константу скорости.
Это не конкретный вопрос, это вода и общие пространные обсуждения. Так что у тебя не получилось сделать в редакторе годота?
Ты-то тут причем тогда?
>ведь new_vel это тоже флаг! Ты не избавился от флага.
Не совсем так.
В чем проблема флагов, почему ты изначально хотел от него избавиться?
Потому что логика "размазана".
input()
flag = чето там
some_func()
flag = хз что
process()
flag = может то, а может это
Очень просто пропустить при редактировании когда где-то точку, где он поменялся, или забыл поменять.
В варианте с new_vel
input()
new_vel = raw_data - все, мы загоняем сырые данные и больше о них не думаем, они нас не волнуют.
process()
сравниваем new_vel и vel - все, у нас единичная точка обработки логики смены направления, к ней мы уже получили все данные.
Мужика себе заведи.
Тебе ответили, в частности как что в годоте работает, но ты зачем-то споришь, типа ты лучше знаешь. Если ты все знаешь, то зачем спрашиваешь? И если тебя не устраивает то, что предлагает годот, то если бы ты был адекватный, то давно бы уже перекатился в на другой движок. Да-да, мы тут все поехавшие позеры, которые ничего не понимают в н а с т о я щ и х движках, а ты, друже, просто иди уже отсюда.
Ты же споришь о том, чего вообще не знаешь, даун. Речь не профессиональный/не профессиональный, а о том, какие КОМПОНЕНТЫ есть у движка.
У уеча есть следующие компоненты:
уеч всегда был и является движком unreal tournatment, поэтому если твою игру можно описать как мод для unreal tournament, то на уече ее легко сделать и продать. в уече просто нет компонентов, чтобы делать другие игры.
у уеча есть кнопка "сделать пиздато".
у уеча все хорошо с оптимизацией и работой на консолях
в уече есть встроенная сетевая игра.
Уеч лучше юнити? Ну если ты делаешь mass battlefield of duty 33 на xbox one, то уеч для твоей задачи может быть и лучше.
Но если ты делаешь hollow knight, или cuphead, или любую другую инди игру, то юнити это твой единственный выбор.
Я как раз отлично понимаю о чем говорю.
>РРРЯ ЮНИТИ ЛУЧЖИЙ ДВИГ!
>Ну вот смотри, уе4 лучше.
>РРРЯ ДЕЙСТВИТЕЛЬНО УЕ4 ЛУЧШЕ ДЛЯ Х, У, НО ЮНИТИ ВСЕ РАВНО ЛУЧЖИЙ ДВИГ!
Видишь, вуаля, ты в своем сознании уже подвинул юнити, освободил место для уе4а, но как бы исключаешь его из рассмотрения уже. Береги голову, ведь то же самое у тебя может произойти и с годотом.
Ради интереса глянул, какие игры сделаны на "движке для модов unreal tournament".
Думаю, это все, что нужно знать об этом ЭКСПЕРДЕ
ты там со своим манямирком споришь
юнити лучше для простого кирилла, да, потому что его не волнует ААА-разработка шутеров. а для создания разных игр в юнити тупо больше компонентов, чем во всех остальных движках.
именно поэтому юнити выбор большинства небольших контор и разработчиков.
что касается годота, то это просто худшая версия юнити. годот не предлагает ничего нового, не специализируется на какой-то задаче (как уеч, или тот-же game maker заточенный под простое 2д), это просто огрызок юнити для бедных
Не для бедных, а для особенных.
Мань, ты не можешь получить хорошую игру, просто накидав ассетов. Компонентов у движка, который новее, по определению меньше. Это вовсе не аргумент о том, что их не надо для него делать. Бесплатность это ахеренный плюс, иметь бесплатный и свободный даже "худший вариант юнити" это замечательно, учитывая что кроме твоих вскукареков о "худшести" ты никаких пруфов не привел, годот на данный момент для новичка ничем не хуже юнити, а по рендеру картинки годот стоит выше.
https://oxygine.org/
>тред про годот
>обсуждают юнити, уеч, аллаха, но только не годот
В вашем говне совсем фич нет, раз вам поговорить больше не о чем?
Да надо просто репортить юнитидаунов и все.
В видосе чел говорит почему лично он перешёл на годот. Даун рвется, от того, что кто-то посмел подумать, что годот лучше.
С каждым постом ты пробиваешь новое дно. Остановись продолжай, поржем всей доской
>то юнити это твой единственный выбор.
Нет, это ТВОЙ единственный выбор. Ты сам признал, что единственный для тебя способ создания игр - таскание по сцене ассетов, сделанных другими людьми. Но не все же такие дегенераты, как ты.
>куд кудах, ассеты, ррррряяяяяяя!
Что характерно, эти взвизги слышны только от пользователей мертвых движков без коммьюнити. Если бы у годота был ассет стор, чушки выставляли бы это как плюс. В итоге единственный плюс говнодота, по словам его же пользователей - то, что это НЕ ЮНЕТЕ. Опять же, большинство таких дебилов просто круглосуточно срет на анонимных имиджбордах, изредка выбирая новый движок для срачей, но создать что-то стоящее на каком-либо из этих движков не в состоянии. Может стоит выпиздить их в /rf/? Менталитет чмошников абсолютно такой же.
Это копия, сохраненная 11 апреля 2020 года.
Скачать тред: только с превью, с превью и прикрепленными файлами.
Второй вариант может долго скачиваться. Файлы будут только в живых или недавно утонувших тредах. Подробнее
Если вам полезен архив М.Двача, пожертвуйте на оплату сервера.