Godot #64 1022039 В конец треда | Веб
Добро пожаловать в тред любви, взаимопомощи, палитр, ресурсов и релизов!
Шапка: https://hipolink.me/godothread
Предыдущий: >>1017767 (OP)
Архивный: >>1014044 (OP)
2 1022044
>>1022037 →

>Тебе неудобно - не используй.


Факт, но хотел попробовать. Никто так и не смог объяснить, нах они нужны. Какая-то бесполезная прослойка. Решил попробовать. Не вкатило

>Тебе никто не запрещает нахуярить сцен, настроить их индивидуально, а после этого использовать ссылки на сцены в ресурсах!


Зачем мне в таком случае вообще ресурсы, если у меня уже все настройки в сценах, и их можно просто добавлять в сцену уровня? Так и так это делать, что готовые, что с вложенными ресурсами
image.png9 Кб, 431x159
3 1022051
Поясните, насколько кривой подход организации сцен как на пике? ControlView самый большой и главный, ловит инпут и передаёт всем заинтересованным, а так же стейтмашина текущего состояния игры. PlayerMenu и MainMenu - меню инвентаря и прочего и главное меню, хайдятся когда не нужны. Game - туда подгружаются все нужные игровые ноды.
4 1022059
>>2044

> Зачем мне в таком случае вообще ресурсы, если у меня уже


Я тебе писал в прошлых тредах неоднократно, но ты не хочешь слушать, не хочешь понимать.

Вот есть нода MeshInstance3D и у неё есть меш-ресурс, который нужно загрузить.

Теперь просто ответь сам себе на вопрос: зачем Хуану в таком случае вообще понадобился тип ресурс в этом месте? Почему там не нода? Почему этот тип вообще называется "ресурс"?

Теперь еще раз. Если ты не понял зачем тебе ресурсы - не используй ресурсы. Сделай всё на нодах.
5 1022060
>>2051
Нормальный подход. Если тебе нравится - делай так.
6 1022069
>>2051
У меня похоже (сама идея что вся игра и ее меню в одной корневой сцене), но детали отличается.
Зачем WIndow корнем? В годоте и так есть автоматическое окно и корневой вьюпорт. Так что это можно сделать просто Node2D.
Дальше. Зачем перехватывать ввод и перенаправлять? Это и так движок умеет делать. Кроме hide() вызывай set_process_input(false).
Гуй обычно у меня сделан так - CanvasLayer, в нем корневой просто Control на fullscreen у которого события mouse - ignore. Но тут я не помню, работает ли это если несколько подсцен со своими канвас лейерами.
Не уверен, что стал бы помещать всю игровую сцену внутрь зеленого контрола. С одной стороны, я и так это делаю с наэкранными кнопками-джойстиками, с другой, не уверен что не будет проблем (например с антиалиасингом) если вся пиксельная графика скалируется гуй-контролом.
7 1022085
>>2069

> Зачем WIndow корнем?


Он тебе и показывает рантаймовое дерево.
8 1022088
Хочу с нуля вкатить в разработку игр на Годо.
Есть шансы? Полный ноль в программировании. Или уже всё? ИИ завтра будет делать игры, а мне лучше на заводе ебашить?
И вообще сколько времени займет ,чтобы разобраться как с аткими вводными змейку хотя бы сделать на Годо?
9 1022089
Хочу с нуля вкатить в разработку игр на Годо.
Есть шансы? Полный ноль в программировании. Или уже всё? ИИ завтра будет делать игры, а мне лучше на заводе ебашить?
И вообще сколько времени займет ,чтобы разобраться как с аткими вводными змейку хотя бы сделать на Годо?
10 1022091
>>2088
Есть, конечно. Ебашь. Начни с официального 2д туториала - он даже проще змейки, или на ютубе что-нибудь простенькое найди если ты по видосам. Спрашивай итт если что.
https://docs.godotengine.org/ru/4.x/getting_started/first_2d_game/

Про ИИ не парься, сам он ничего не делает, это просто инструмент которым можешь руководить и ты, но понимать код, который он выдает - гораздо лучше чем не понимать.
11 1022094
>>2091
Я просто боюсь еще краха видеоигровой индустрии на манер как в 1983 году, когда полки наводнили низкокачественные поделки и всех это остоебенило ,что перестали покупать игры.
Так и сейчас с развитием ИИ, каждый идиот или компания идиотов начнут тонны высирать низкокачественного кала, что все цифровые магазины утонут в нем и людям надоедят игры как таковые? Копаться среди тонны кала, чтобы найти хоть что-то нормальное.
Если я начну сейчас усиленно изучать годо и пытаться выпустить что-то сносное уйдет минимум лет пять у меня. Не умрет ли индустрия от ИИ к тому времени?
12 1022095
>>2094
Годот не про индустрию.
13 1022096
>>2094
Отмазки всегда придумаются. Я боюсь что мне на голову прилетит, и что гугл-плей обнаружит что я санкции обошел. Больше делай, меньше загоняйся. Лучше что-то делать и уметь, чем не.
14 1022097
>>2088
Я тут смотрел один стрим три года назад, и там чатаны ехидно говорили стримеру, ну всё, на завод теперь пойдёшь. А он им в ответ говорит, мы стримеры максимум в пятёрочку на кассу, потому что стримеры - это бестолочи, а на завод берут толковых ребят.

Так вот, двачеры еще хуже стримеров, ты даже стримы не ведёшь. Какой тебе завод? Что ты на заводе делать будешь? Как ты вкатишься в управление ЧПУ станком, если ты даже гдскрипт простейший освоить не способен? И я такой же.
15 1022125
>>2094
Не сравнивай индустрию до обзорщиков/твичпроходимцев + алгоритмов рекомендаций и индустрию текущую. Да, тесновато, но пока ещё нормально.
16 1022136
>>2096
Сбежал монстра из гг.
17 1022139
>>2097
Согипмфчьмвдсяд.
18 1022146
>>2094

> Не умрет ли индустрия от ИИ к тому времени?


Так вариантов нет в любом случае. Умрёт индустрия, будем адаптироваться. Хрен знает, какие тренды будут в будущем. Ломать голову над этим сейчас и бездействовать - просидеть у разбитого корыта. А когда представится шанс, не будет ни скилов, ни опыта.
19 1022152
Учитесь юзать AnimationPlayer, сынки

https://www.youtube.com/watch?v=GMyw3eHDw7s
20 1022170
>>2152
Перешел с анимашнплеера на твины и процедурную анимацию, не жалею, все сквишится, прыгает, отскакивает, пердит, реагирует на окружение и игрока. Охуенно. Еще и напрямую в коде все записано - легче комментариев навалить и понять что происходит.
21 1022176
>>2170
двачую
наебался с ебучим аним плеером и сделал так же
22 1022182
>>2170
Тричую, анимплеер нужен для совместимости с блендером и аналогами, чтобы модельки с готовыми анимациями удобно импортировать. Для мелких работ кодом прекрасно подходят твины.
23 1022193
Штош, харкач теперь лайфач.
24 1022198
>>2193
Сусач/Сучан вообще-то.
25 1022200
>>2198
су в любой момент может полететь в пизду вслед .io, абулик как всегда меняет шило на мыло.
# OP 26 1022201
Переезжаем с куками на новый домен.
# OP 27 1022202
Ля, сработало.
image.png416 Кб, 637x358
28 1022203
29 1022204
>>2170
Двачую твины
30 1022206
>>2203
Вот бы юшки в куклоскрипте перенести. Но лень ковыряться.
31 1022215
Сцена с уровнем весит 2.6мб - норм или пора разбивать? Вот ты, анон, какая самая жирная сцена в твоем проекте?
32 1022216
>>2215
Забыл сохранить меши в бинарном виде?
33 1022218
>>2216
Прост уровень большой.
34 1022220
>>2216
Хотя ты прав, до меня сразу не дошло о чем ты. В меш-ресурсах еще свои surface были загружены, которые мне не нужны - я использую материалы на меш-нодах, а не на меш-ресурсах. Выкинул их и посохронял меш-ресурсы в бинарные .mesh, стало лучше. Спасибо.

Еще могу сам уровень пересохранить из tscn в бинарный scn - сразу с 2.6мб до 200кб падает. Имеет смысл?
35 1022221
>>2206

> Но лень ковыряться.


Зачем там ковыряться? Там вкладка с импортом экспортом/настроек.
36 1022222
>>2220

> Имеет смысл?


При экспорта все текстовики пересохраняются в бинарный формат. Так что с точки зрения экспорта смысла нет.
37 1022223
>>2221
Угу только там все не так просто, экспорт только для текущего сайта, а на хк уже не зайти. Я попробовал поднять сервер и прописать в hosts, а лиса на него не заходит даже если всякие dns over https отключить. Так что дальше только менять сорцы куклы и надеяться что в фф нет какой то еще защиты что расширению не покажут бд для другого домена. Или разбираться как залезть в sql. Это и я и называю ковыряться.
38 1022225
>>2220
Ну я предпочитаю оставить текстовым, вдруг надо будет что то поправить быстро в блокноте. Иногда даже генерировал какие то данные на питоне и копипастил в PoolArray.
Собственно ты можешь открыть в блокноте или другом текстовом редакторе, пойти попить чайку и увидеть что там не упаковалось. Как то давно я редактировал террейн и там была опция авторасстановки деревьев/кустов/травы, и сцена стала тормозить при сохранении в редакторе. Оказалось что их координаты хранились текстом (а я думал там просто "границы" областей хранились), но там было в разы больше данных чем надо, как будто глюкануло или аддон хранил все предыдущие расставленные до undo. Пришлось как то вычищать.

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

Еще у меня есть 3д "гта в ссср" условно. Там много ассетфлипов, а tscn целых 364кб.
Да, там пролезли некоторые меши

В Хоппе есть сцена для съемки кинематиков. Я туда тупо модельку с анимациями закинул. Аж 7 мегабайтов, включая портянки строк описывающих кости по одной, вершины модельки и анимации. Это конечно можно все скинуть в бинарное, но пофиг так как в экспорте сцена не используется, только для рендера ролика какого нибудь или выставления позы.
39 1022248
>>2223
Во-первых, хк уже вернулся.
Во вторых, файл экспорта - банальный жсон. Проходишься по нему реплейсом в любом твоём текстовом редакторе и радуешься. Это на будущее.
image.png23 Кб, 397x240
40 1022250
>>2248
Читай внимательнее - этот жсон неоткуда было взять.
Предлагаемый экспорт выглядит так, .hk в нем не присутствует когда ты сидишь на .life а .hk не грузился.
41 1022252
>>2250

> неоткуда было взять


Можно было прописать айпишник в свои локальные хосты под именем 2ch.hk, и пробившись через 33 предупреждения браузера открыть сайт, и забрать настройки.
Ну да ладно. работает и ладно. Сделай бэкап сейчас. Я сделал.
42 1022258
>>2252
Ты сделал мне грустно, не читав на что отвечаешь.
43 1022273
>>1022011 →
>>1022046 →
Спасибо

>>1022045 →

>Выглядит так, что они слишком мелкие, и просто успевают набрать большую скорость чтобы пробить коллайдер


Потестил - действительно, через CSGBox3D проваливаются мелкие коллайдеры, например цилиндр высотой 0.201 и радиусом 0.031. Но стоит увеличить радиус в 2 раза, как проблема пропадает. Ну или заменить CSGBox3D на StaticBody3D.
Короче, АБСОЛЮТНО, неочевидная какая-то хрень
Благодарю
image.png10 Кб, 428x495
44 1022276
Разница между листингами в гугл-плее. Сверху - дефолтый, не позволяющий добавлять ключевые слова. Снизу - кастомный, куда я навалил кучу ключевых слов релевантных к игре. СЕО оптимизация нулевых годов еще жива, ух бля.
45 1022287
почитал последние тройку тредиков ваших за исключением калокубов вы все такие няшки тут , очень приятная атмосфера , спасибо вам :3
image.png508 Кб, 700x420
46 1022288
Почувствовал себя знаменитым писателем.
47 1022291
>>2273

>0.031 увеличить в 2 раза


Это мало, еще увеличивай, говорю стандартные размеры должны быть в районе 1, в крайнем случае 0.1. Если у тебя игра про людей, делай им 1-2 метра как в реале. Если игра про микрообъекты то им лучше задать искусственно завышенные размеры, вместо 1мм или 1см тоже 1м.
Может оказаться что у тебя уже работает, а на более медленных компах нет. Не уверен, но вроде это получится проверить, поставив более низкий physics tics per second

Это нелогично если не знать, но когда знаешь это логично.
Во-первых, как происходят упрощенно говоря рассчеты физики? Вот у тебя тело набрало какую то скорость от гравитации и подлетает к тонкому полу. В какой то шаг оно до него, а в следующий за ним, и физика такое не может отследить. Если бы скорость тела была меньше, или размеры больше, то оно бы столкнулось и было отмотано до точки где может стоять. Либо. как я писал надо включать галочку CI, тогда оно будет как то детально проверять путь по которому летит, но это может быть неоптимально тем более если игра не про физику например если игра RTS, то можно вообще без физик обойтись, тебе скорее навигация нужна
Во-вторых на это намекает свойство Margin у CollisionShape. Margin - это погрешность которая добавлена вокруг всех объектов чтобы определять столкновения раньше и быстрее. Так у тебя радиус объекта уже меньше этой погрешности! А уменьшать его сильно ближе к 0 не советуется.
48 1022295
>>2291

>Если у тебя игра про людей, делай им 1-2 метра как в реале


Да, про людей. Но есть, условно, относительно мелкий объект, типа "бутылка". Ну ее никак до 1 метра не увеличить. Ну только если скейлить все объекты и игрока в 2-3 раза

В общем, в целом идея понятна. Буду тестить и править при необходимости

>Это нелогично если не знать, но когда знаешь это логично.


Ну это да
49 1022307
Стандартный видеоигровой юнит традиционно приравнен к метру.
А что если юнит годота мысленно приравнивать не к метру, а к сантиметру, например. При импорте всё масштабировать в 10 раз. Получится много работы, но зато с лимитами имеющейся физики получим точнейшую симуляцию. Кто готов попробовать?
50 1022308
>>2291
>>2295
>>2307
Вроде можно еще физикс фпс увеличить, повысит надежность в тонких случаях.
51 1022316
>>2308
Увеличивать то можно, только тогда тостеры и браузеры перестанут вывозить.
>>2307
Я это и имел в виду:

>им лучше задать искусственно завышенные размеры, вместо 1мм или 1см тоже 1м.


Но важно именно соотношение размеров. Надо посмотреть какой у тебя самый маленький значимый объект и какой большой. Если ты все в 100 раз увеличишь, то и большие увеличаться, а это тоже может стать проблемой. Грубо говоря, если у тебя игра РТС и минимальный юнит это человек целиком, который ходит по авианосцу, то ок. Если у тебя иммерсив сим и человек взаимодействует с бутылками, то увеличиваешь масштаб и тоже все ок. Проблемы будут если ты попытаешься сделать взаимодействие бутылки и целой плаенты, или атома и авианосца, какие то такие разницы в размерах. Там уже надо большие объекты резать на более подходящие.
images.jpeg5 Кб, 260x194
52 1022327
Хотите шутку охуенную?

Неткод на годоте.
53 1022343
>>2327
А шутка в чем? Публичный аддон был лет 5 назад еще.
54 1022380
>>2327
А где смеяться? На том что в хуюнити до сих пор не NET Core и сокеты не обладают свойством не гадить в память? А в годоте 4.5 будет 9 неткор)
55 1022383
>>2327
https://store.steampowered.com/app/3146520/WEBFISHING/
https://store.steampowered.com/app/2211170/Unrailed_2_Back_on_Track/

Держи. По первой все зумеры/альферы угорают, тянет до 200 игроков с модами. Вторая вообще с Юньки убежала. Обе с НЕТКОДОМ.

Бля, вебфишинг настолько популярен стал что я в ирл у школоты значок на портфеле видел.
56 1022425
Неплохо залетному зеленому хуев за щеку накидали
57 1022444
>>2383
лол
пока тут некоторые трясутся над графоном и шейдерами, васяны выпускают такое, лутают деньги и поднимают демографию
58 1022447
>>2444
Вам давно про это говорили. Ваш идеальный код, выверенная мультиплеерно-кнопочная архитектура и отсутствие синглтонов никому не нужны. А игры нужны.
59 1022448
>>2444
Так вот что Коджем спиздил на последнем ТВГ
Алсо, СтимДБ не детектит эту игру, а она была бы в топ 10.
А она точно на годоте.
А представляете сколько еще хидден гемов может там оказаться.
60 1022452
>>2447
У меня больше десятка игр, и никому они не нужны. Это лотерея, что выстрелит. Поэтому лучше я буду дальше вылизывать идеальный код, потому что это дает потенциал делать фичи, которых у других нет, и за счет этого получить повышенный шанс игре оказаться замеченной.
И это не говоря о том, что в посте речь о том что "графон не нужен". Есть примеры игр с хорошим графоном, но плохим кодом, из за багов получающего негативные отзывы, например титановая гончая.
1681336539332.png254 Кб, 1733x886
61 1022455
Через месяц выложат доклад чела с GodotCon Boston он там как раз расскажет насколько сложно ему было добавить мультиплеер к сингл игре на 10к строк кода. Спорим, что он упомянет там как вычищал синглтоны?
62 1022463
>>2452
Успех делается не годами вычищений кода а годами итераций релизнутых идей. Идея может быть хороша, но с хуевой реализаций, или наоборот. Или идея может зайти лично тебе и никому другому. Или ты выкатишь идею не ее целевой аудитории, не с тем уровнем сложности, или не на той платформе. Или идея работает в паре с другой идеей, которой у тебя нет.

Это как ощупывать слона - чем больше щупаешь, тем ближе ты к пониманию слона. А вылизывать ему один-единственный анус годами не приведет тебя к пониманию того, что это слон. Только говна поешь.
image.png417 Кб, 1280x720
63 1022486
>>2444
Кстати чет текстур маловато, ПО-ДЕТСКИ!
64 1022487
>>2452
Что ты вообще ждешь от геймдева? Впечатлить с игроков своими игровыми идеями? Или денег заработать? Или что-то еще?
Есть намерение в том что ты делаешь? Или просто плывешь куда течение понесет?
65 1022500
>>2455
На что спорим?
66 1022504
>>2500
на жопу хоппы.
67 1022516
>>2504
Принято, хоть я так и не понял кто эта ваша Хоппа. Доклад сам смотреть будешь, потом отрепоришь итт.
68 1022518
>>2463
Блин, это не может быть дежавю, я точно такой же пост уже видел где-то...
17324448963392.png11 Кб, 666x386
69 1022571
Аноны, направьте меня на правильный путь. Короче, собираюсь сделать прототип, суть такова... 3д игра, от 3-го лица, управляем человечком, когда нажимаем shift, то человечек рисует след. Мы можем "следом" рисовать разные фигуры, допустим круг, он наносит урон врагам. В чём суть, я не знаю, как сделать этот след. Обычный след я могу сделать частицами или декалями, но чтобы godot понимал, что я рисую что-то... это слишком сложно для меня.
70 1022577
>>2571

> направьте меня на правильный путь


Например, это https://docs.godotengine.org/en/latest/classes/class_curve3d.html#class-curve3d
С некоторой периодичностью добавляешь текущее местоположение в кривую (если перс движется).
Затем с кривой можешь делать всё что захочешь.
71 1022578
>>2516

> кто эта ваша Хоппа


Старшая дочь Ганса-Германа Хоппа. Является ключевым акционером фирмы ASML. В /b/ битарды одно время наяривали на неё, после чего их всех в /fag/ выперли.
73 1022580
>>2571
Подробный ответ сейчас написать не успеваю, есть разные способы рисовать на текстуре
-Декали (встроенные в 4-ку, аддонами в 3-ке), проекция 2д на 3д
https://docs.godotengine.org/en/stable/tutorials/3d/using_decals.html
https://godotengine.org/asset-library/asset/670
-Сплат мапы
-Vertex Painting
Не помню в чем отличие этих способов
https://github.com/alfredbaudisch/GodotRuntimeTextureSplatMapPainting/tree/master
https://github.com/alfredbaudisch/GodotInGameVertexPaintingDirtEffect
http://erikamoya.com/paint-in-3d-in-godot-4-1/
Также посмотри
-Объемные следы в снегу, песке (емнип рендер всего во вьюпорт и потом использование текстуры как модификатора геометрии)
https://godotshaders.com/shader/car-tracks-on-snow-or-sand-using-viewport-textures-and-particles/
-SDF эффекты
https://godotshaders.com/shader/sdf-range-rings-3d/
Вот какой то туториал
https://www.youtube.com/watch?v=4DFpLnEnKFk
74 1022581
>>2580
+ фишка с Overlay Material
75 1022582
>>2577
>>2579
>>2580
Благодарю
76 1022586
Добавляете звуки - используйте рандомизацию питча. Иначе пиздец по ушам ездит.
77 1022648
>>2578

>Старшая дочь Ганса-Германа Хоппа


как зовут
78 1022662
>>2648
Дмитрий Сергееевич.
79 1022671
>>2577
Анон, а не подскажешь, как быть определением нарисованных фигур? Как определить, что игрок нарисовал круг, а не хуй или квадрат?
80 1022679
>>2671
Я бы не заморачивался с хитрыми алгоритмами и сделал бы OCR на любой готовой популярной библиотеке, или вообще через локальную llm. Заодно сможешь не только круги-квадраты а, например, рукописный ввод или хуи.
1619621789554.gif22 Кб, 449x455
81 1022683
82 1022751
Некоторые аддоны это прямо движок в движке https://godotengine.org/asset-library/asset/3228
83 1022752
Допендрил до рабочей генерации морфинговой анимации.
Обязательно перед генерацией надо один раз имена предоставить. И сколько у тебя имен для морфов, - столько и морфов должно быть в КАЖДОМ сарфейсе(поверхности). Хотя в оригинале сохраняются только те части морфа, которые подвержены изменениям. А в годоте нужно целые копии мешов хранить, да еще и для всех поверхностей, и ровного количества. При многих морфингах, наверное может иметь смысл отделять части мешей подверженные морфингу в отдельные мешы, чтобы не плодить пустые дубликаты.

Вот он пример.
func _ready():
․ ․ var mesh_instance = MeshInstance3D.new()
․ ․ add_child(mesh_instance)
․ ․
․ ․ var mesh = ArrayMesh.new()
․ ․ var arrays = []
․ ․ arrays.resize(Mesh.ARRAY_MAX)
․ ․ arrays[Mesh.ARRAY_VERTEX] = PackedVector3Array([Vector3(1,0,0), Vector3(0,0,0), Vector3(0,1,0)])
․ ․ var arrays1 = []
․ ․ arrays1.resize(Mesh.ARRAY_MAX)
․ ․ arrays1[Mesh.ARRAY_VERTEX] = PackedVector3Array([Vector3(-1,0,0), Vector3(0,0,0), Vector3(0,-1,0)])
․ ․
․ ․ var blend_shape_arrays = []
․ ․ blend_shape_arrays.resize(Mesh.ARRAY_MAX)
․ ․ blend_shape_arrays[Mesh.ARRAY_VERTEX] = PackedVector3Array([
․ ․ ․ ․ Vector3(1, 0.5, 0),
․ ․ ․ ․ Vector3(0, 0.5, 0),
․ ․ ․ ․ Vector3(0, 1.5, 0)])
․ ․ ․ ․
․ ․ var blend_shape_arrays1 = []
․ ․ blend_shape_arrays1.resize(Mesh.ARRAY_MAX)
․ ․ blend_shape_arrays1[Mesh.ARRAY_VERTEX] = PackedVector3Array([
․ ․ ․ ․ Vector3(1, -0.5, 0),
․ ․ ․ ․ Vector3(0, -0.5, 0),
․ ․ ․ ․ Vector3(0, -1.5, 0),])
․ ․
․ ․ mesh.add_blend_shape('bs')
․ ․ mesh.add_blend_shape('bs1')
․ ․ #mesh.add_blend_shape('bs2')
․ ․
․ ․ mesh.add_surface_from_arrays(Mesh.PRIMITIVE_TRIANGLE_STRIP, arrays, [blend_shape_arrays,blend_shape_arrays1])
․ ․
․ ․
․ ․ #mesh.add_blend_shape('bs2')
․ ․ #mesh.add_blend_shape('bs3')
․ ․ mesh.add_surface_from_arrays(Mesh.PRIMITIVE_TRIANGLE_STRIP, arrays1, [blend_shape_arrays,blend_shape_arrays1])
․ ․ mesh_instance.mesh = mesh
․ ․ mesh_instance.set("blend_shapes/bs", .5)
․ ․ print(mesh.get_blend_shape_count())
83 1022752
Допендрил до рабочей генерации морфинговой анимации.
Обязательно перед генерацией надо один раз имена предоставить. И сколько у тебя имен для морфов, - столько и морфов должно быть в КАЖДОМ сарфейсе(поверхности). Хотя в оригинале сохраняются только те части морфа, которые подвержены изменениям. А в годоте нужно целые копии мешов хранить, да еще и для всех поверхностей, и ровного количества. При многих морфингах, наверное может иметь смысл отделять части мешей подверженные морфингу в отдельные мешы, чтобы не плодить пустые дубликаты.

Вот он пример.
func _ready():
․ ․ var mesh_instance = MeshInstance3D.new()
․ ․ add_child(mesh_instance)
․ ․
․ ․ var mesh = ArrayMesh.new()
․ ․ var arrays = []
․ ․ arrays.resize(Mesh.ARRAY_MAX)
․ ․ arrays[Mesh.ARRAY_VERTEX] = PackedVector3Array([Vector3(1,0,0), Vector3(0,0,0), Vector3(0,1,0)])
․ ․ var arrays1 = []
․ ․ arrays1.resize(Mesh.ARRAY_MAX)
․ ․ arrays1[Mesh.ARRAY_VERTEX] = PackedVector3Array([Vector3(-1,0,0), Vector3(0,0,0), Vector3(0,-1,0)])
․ ․
․ ․ var blend_shape_arrays = []
․ ․ blend_shape_arrays.resize(Mesh.ARRAY_MAX)
․ ․ blend_shape_arrays[Mesh.ARRAY_VERTEX] = PackedVector3Array([
․ ․ ․ ․ Vector3(1, 0.5, 0),
․ ․ ․ ․ Vector3(0, 0.5, 0),
․ ․ ․ ․ Vector3(0, 1.5, 0)])
․ ․ ․ ․
․ ․ var blend_shape_arrays1 = []
․ ․ blend_shape_arrays1.resize(Mesh.ARRAY_MAX)
․ ․ blend_shape_arrays1[Mesh.ARRAY_VERTEX] = PackedVector3Array([
․ ․ ․ ․ Vector3(1, -0.5, 0),
․ ․ ․ ․ Vector3(0, -0.5, 0),
․ ․ ․ ․ Vector3(0, -1.5, 0),])
․ ․
․ ․ mesh.add_blend_shape('bs')
․ ․ mesh.add_blend_shape('bs1')
․ ․ #mesh.add_blend_shape('bs2')
․ ․
․ ․ mesh.add_surface_from_arrays(Mesh.PRIMITIVE_TRIANGLE_STRIP, arrays, [blend_shape_arrays,blend_shape_arrays1])
․ ․
․ ․
․ ․ #mesh.add_blend_shape('bs2')
․ ․ #mesh.add_blend_shape('bs3')
․ ․ mesh.add_surface_from_arrays(Mesh.PRIMITIVE_TRIANGLE_STRIP, arrays1, [blend_shape_arrays,blend_shape_arrays1])
․ ․ mesh_instance.mesh = mesh
․ ․ mesh_instance.set("blend_shapes/bs", .5)
․ ․ print(mesh.get_blend_shape_count())
84 1022755
>>2752
Код лучше выкладывать куда-то, а сюда ссылку.

Или скриншотом.
85 1022782
>>2755
Чтобы радовать глаза раскрашенным синтаксисом?
Куда именно выкладывать?

Начал искать куда выкладывать и нашел нейронки специально заточенные чтобы генерировать гдскрипт:

https://workik.com/godot-code-generator
https://theresanaiforthat.com/@markwryte/gdscript-generator/
https://github.com/Xrayez/gdgen
https://godotplayground.com/

и еще что-то, видимо то самое:
https://gdscript.com/
https://gd.tumeo.space/
86 1022799
>>2782

> Чтобы радовать глаза раскрашенным синтаксисом?


Не знаю насчёт радости, но я не могу воспринять портянку кода длиннее 3 строк, тупо wipe symbols для меня. Лучше уже скрин, чтобы прочитать о проблеме отдельно, а код посмотреть отдельно.
image.png37 Кб, 395x119
87 1022805
>>2782
Ебать чувак дизайнер.

>специально заточенные чтобы генерировать гдскрипт


Сомневаюсь что они заточены лучше чем свежие клод/гемини.
Screenshot20250524095045.jpg515 Кб, 1910x1080
88 1022812
Пытаюсь разобраться с перформансом годота. Почему рандомные фреймы генерируются в два раза дольше в Processing Time, чем другие фреймы если на экране нихуя нового не происходит и в скриптах никакие функции не вызываются? Тестовая сцена делает то же самое, что делала несколько милисекунд назад, но перформанс в два раза хуже. Почему?
89 1022815
>>2812
Думаю это фрейм, в котором запускается garbage collector.
90 1022816
Открываю нейронки с новых ракурсов. В duck.ai gpt-o3, спросил как в гта стримится геометрия. Оно говорит что не знает но рассказывает какие виды стриминга бывают вообще. Особенно мое детское воображение поразили окта-деревья, и квадро-деревья. Просто звучит круто. Я иду в исходный код гта и нахожу streaming.h и streaming.cpp. У меня от вьезжания в большие стены с кодом начинается сильное буксование мозга. А оказалось в текстоприемник нейронки до 16000 символов помещается. Я скармливаю не вникая целые функции, а она выдает довольно занимательное чтиво, после которого кажется что ты что-то понял.

Я такой:
- Компьютер! Выдай мне полный анализ по приведенной функции! Есть ли там окто-деревья?
А нейронка такая:
- Вот исчерпывающая информация по этому коду... Но окто-деревья не обнаружены. Вместо них, обнаружены
следы того, что использовано разбитие на секторы.
- Компьютер! Разбитие на секторы?
Дальше она начинает обьяснять специфику и приемущества и недостатки по сравнению с октодеревьями...

Но радость от анализа кусков кода была немного омрачнена невиданной доселе ошибкой, - вы исчерпали ваши промты на сегодня, приходите завтра. Я и не знал что есть такое ограничение, видимо есть ограниченное количество баллов, которые тратятся быстрее если текста для анализа много.
91 1022820
>>2816
Ну иди грок с дипсиком теперь напрягай, они не такие жадные.
92 1022822
>>2820
Лишь бы игры не делать)))
image.png493 Кб, 600x461
93 1022823
>>2816

>- Компьютер! Выдай мне полный анализ по приведенной функции! Есть ли там окто-деревья?


>- Компьютер! Разбитие на секторы?


КОМПЬЮТЕР: Новая информация. Капитан больше не на борту "Энтерпрайза".
94 1022825
>>2823
Вся фантастика 60х это фантастика, потому что к ней невозможно прийти - команда стартрека не может существовать, потому что идиократия наступит раньше, чем полетят. Всё фантастика. Кроме Дюны. Ибо БЖ.
95 1022834
>>2820
Спасибо, капитан.
Крок более головастый. Прям ссылки может кушать.

>Forget octrees. analize this https://github.com/Cai1Hsu/re3/blob/miami/src/core/Streaming.cpp



Выдал общий анализ. После чего попросил подождать всего 1час 47минут. Хотя бы не сутки. Короче с болшими возможностями появляется большая ответственность. Надо продумывать свои вопросы и чотко их выражать.

Надеюсь грок поможет с одной фантазией. У меня есть мечта сделать function detouring для пары игр, и переписать функционал в некоторых местах. Да знаю, это маленькая мечта для маленького человека. Пойду годот потрогаю...
96 1022841
>>2834
Самый головастый на данный момент это claude.ai. Без денюжки 4 запроса раз в 3 часа. Если умеешь ставить задачи в одном запросе - самая охуенная бесплатная нейронка на данный момент. Не надо кормить нейронку ссылками или любой другой лишней информацией, ты ей перегружаешь контекстное окно лишней хуетой из-за чего получишь на выходе больше галюцинаций. Ты же при запросе в гугл не указываешь сегодняшнюю дату и скорость ветра? Тут то же самое. Все нейронки на данный момент - это аналог человеческой памяти без той части мозгов которая отвечает за анализ и логическую обработку информации извлеченной из памяти, а значит чтобы меньше говна получить - нужно меньше говна дать. Не ссы, копируй нужный файлик из гитхаба и хуярь его в поле ввода прямо так как он есть, я бы еще лишнее поотрезал типа обьявлений и прочих include, но можешь не париться по этому поводу, обычно сойдет и так. Тогда уж возможно ты из нее вытянешь что-то более осмысленное. Дач именно такова спицифика работы с нейронками если хочешь чтобы они стали помощником, а не таймкиллером.
97 1022843
>>2841
Спасибо.
Насчет прямого текста вместо ссылки, Grok наоборот сказал что использовал функционал гитхаба чтобы понимать как символы и функции из файла взаимосвязанны вообще с движком. Так что не так однозначно. Теперь надо натравить его на исходники эмулятора cxbx, чтобы помочь мне сделать тоже что сделали авторы, они подменили прокладку взаимодействующую с системой и желнзом х-бокса на свою, я хочу тоже самое но на внутриигровом уровне, чтобы подменять менюшки на свои.

Извини тред за оффтоп. Надо было дискутировать это в другом треде.
98 1022844
>>2843
Господи, "грок сказал")))) Ты с ебаным бредогенератором говоришь, ты можешь его заставить сказать что черное это белое при должном упорстве. "Правильно заданный вопрос - половина ответа" - это просто сейм всех нейронок. Все их измышлизмы - лесом, их предел - трансформация входных данных в выходные с погрешностью, а то что он тебе сгенерировал про функционал гитхаба - только означает что движок скормил ему полный хтмл со всей лишней парашей, и ссылками-референсамич которые дополнительно забили контекстное окно.
99 1022845
>>2844
Понятно, что термин ИИ в контексте больших языковых моделей — маркетинг ебаный, но кодить с ними все же легче.
100 1022849
Лучшее, что я вынес после ебли с левел дизайном - добавлять асимметрию, вертикальность, пересечения и странность. И сразу рождаются не коробка за коробкой, а нечто интересное и играбельное.

У меня все.
101 1022851
>>2849
Правда.
Вообще, один из лучших левел дизайнов у первой half-life. В ней огромное кол-во интересных мест и геймплейных ситуаций, которые работают на нескольких базовых механиках. И до сих пор играется свежо, особенно если black mesa обновленную попробовать.
Просто как учебник можно брать, играть и изучать.
102 1022855
>>2849

>Лучшее, что я вынес после ебли с левел дизайном - добавлять асимметрию, вертикальность, пересечения и странность.


И зачем это нужно если в твою игру все равно никто играть не станет?
103 1022884
>>2855

>И зачем это нужно если в твою игру все равно никто играть не станет?


Не надо все свои шизы класть в одну корзину. Отделяй работу над игрой от желания стать властителем мира и оплодотворить всех самок. Проведи грань. Создание игры это вещь в себе.
104 1022886
>>2855
И зачем ты это высрал?
105 1022896
>>2844

>с ебаным бредогенератором говоришь


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

https://www.youtube.com/watch?v=jCTvblRXnzg
106 1022899
>>2886
Ты не понимаешь, потому что тебе кажется что все делают игры чтобы захватить игровую индустрию. Потому что это единственный понятный тебе параметр который можно измерить. А молотку всё гвозди, ты проецируешь свои ценности на других, обвиняя их в том что у них не правильная система ценностей. Но самые финансово успешные стратегии для привлечения пользователей это тенцент и тикток. Абсолютный мусор, рассчитанный не на сознание а на вегетативную нервную систему, воспитывающий из людей овощей. Как будто они и сами с этим не справляются.

Имхо. Искусство это левацкое ремесло. Ты делаешь игры чтобы удивлять. А уже потом если захотят притащат тебе свои рубли.
107 1022902
>>2899
Я делаю игры потому что мне это нравится, и делюсь итт потому что мне это нравится, а твой пост я дропнул после первого предложения - только время на хуйню тратить.
108 1022980
>>2899
ты ебанат? леваки политизируют искусство, праваки эстетизируют политику. завали ебало кароч, иксперд
109 1022982
>>2980
Школьник, угомонись. Наслушались своих блохеров и дуреют
110 1022984
Аноны, такая проблема. При быстром движение камерой появляются глитчи, не серьёзные, но заметные. Ограничиваю фпс на 60 - всё норм. Мейби кто сталкивался с таким.
111 1022986
>>2984
Версию хоть напиши
112 1022987
>>2986
4.4 и на 4.3 было тоже самое
113 1022989
>>2984
Может интерполяция какая нужна, там в настойках проекта/камеры что-то было. Без видоса не поймешь чего там глитчит.
114 1022990
Придумал охуенную игру, которую я никогда не сделаю, но идею никому не могу отдать.

мимо ничего не знаю о гейдеве
115 1022991
>>2990
Идеи ничего не стоят.
116 1022994
>>2991
Так я её и не собираюсь продавать. Либо выучу годот, либо она уйдёт со мной в могилу.
117 1022995
>>2984
Что за глитчи?
118 1022996
>>2994
Тогда второе, потому что выучить годот тебе будет недостаточно.
119 1022998
>>2996
Почему?
120 1023002
>>2998
Выучи 3д, научись в пиксель арт или 2д рисование, научись в анимации, текстурирование и освещение, научись работать со звуком, освой UI/UX, вспомни векторную математику, освой шейдеры, научись в левел дизайн, научись в хотя бы минимальную архитектуру, научись в маркетинг и нетворкинг, выучи английский чтобы читать документацию и пиариться, научись обходить санкции, научись ...
121 1023003
>>3002

>3д, научись в пиксель арт или 2д рисование, научись в анимации, текстурирование


Да пока он будет учиться, всё это научится генерировать ИИ. Точнее он уже научился, но пока не в идеальном исполнении и с контекстом есть проблемы. Хотя Юпити вроде выкатил ИИ-генератор с контекстом, прямо в редакторе.
122 1023007
>>3003

>Хотя Юпити вроде выкатил ИИ-генератор с контекстом, прямо в редакторе.


Вангую годот никогда не добавит ИИ прямо в редактор потому что опенсорс руководствуется мнением разработчиков лично, а девелоперы обычно ретарты и КАК ЖИ ТАК НАШИ ДЕНЬГИ ОТНИМАЮТ. Такие решения должны исходить от менеджеров, которые недольным додикам хуев в рот напихивают. А с годотом так не будет к сожалению, придётся копипастить до конца веков.
123 1023008
>>3007

>Такие решения должны исходить от менеджеров, которые недольным додикам хуев в рот напихивают



>Менеджеры напихивают в рот недовольным разработчикам


>99% разработчиков увольняют


>Менеджерам больше некого менеджерить


>Увольняют 99% менеджеров


> А НАС ЗА ЩООО??!

124 1023011
>>3007
А что мешает пойти и сделать плагин к редактору, который добавляет ИИ функционал? А форкнуть весь годот? Правильно, ничего, потому что опенсорс, а у тебя менеджеры головного мозга и разрешения-запреты от больших дядек. Выкидывай эту хуйню из своей головы, не актуально.
125 1023020
>>3007
Годот не добавит ии в кор, потому что он придерживается принципов опенсорса, а ии во многом обучены на не опенсорсе, а тупо скрапинге статей в вебе, так что невозможно гарантировать что пользователю не создадут подставу Но нмкто не мешает тебе поставить аддон. Хотя я слышал, что редактор стоит рефакторить для более легкой интеграции (это полезно в принципе, например для языковых серверов для подсветки синтаксиса)
126 1023022
Кто-то делал рогалик на годоте? Есть годные гайды?
127 1023025
>>3007
Безрукий что ли? Сам плагин напиши, тем более уже есть готовый плагин под совместное программирование по сети в одном редакторе, осталось подтянуть апи Клода/дипсика/прочих и готово. А в целом и похуй, копипаста кода за глаза хватает
128 1023026
>>3022
Дедлуп тоже рогалик, только его годот скорее всего не вывезет. Ты стилистику конкретизируй, форму представления. Пиксели хуиксели, платформа, вид сверху, изометрия, 3д
129 1023027
>>3026
Стандартный рогалик, хуле тут пояснять - грид-бейзд, топ даун, одновременно-пошаговый тайминг. Первое и третье самое важное, мне надо чтобы игра НИХУЯ не делала пока я не хожу, как в стандартных рогаликах. Можно просто бросить игру во время боя как на паузе.
130 1023030
>>3027
Целевая платформа какая? Могилки/веб/стим/все сразу? Подводные следующие: годот 3 gles2 стабилен везде, но нужно вырезать из движка gles3 функционал (да, ручками), иначе есть риск падать на некоторых МТК устройствах, потому что инит графики под мобилу писали криволапые уебки. Годот4 - пока что только пк, веб и мобилка имеют проблемы на некотором железе. У годота нет нормального функционала для обработки спрайтшитов и формирования из них анимационных блоков, есть только atlas texture где тебе будет предложено вручную раскидывать каждый кадр из спрайтшита в отдельный атлас-ресурс и как-то блять их компоновать. Короче, нужен кастомный ресурс на такое. Рейкастить в годот 3 нужно создавая рейкастноду, перемещая её, задавая параметры и вызывая её функцию рейкаста, в 4 годоте - по максимуму использовать raycastquery, вплоть до сбора всех рейкастов в пул и их выполнение в конце кадра. Почему - гднатив срет в штаны слишком жирными аллокациями. Интерфейс как в юнити, более чем хватит. Больше подводных нет, как движок годот сам по себе хорошо подходит.
131 1023031
>>3022
Делал, туториалов десятки.
>>3026

>Дедлуп


Детально не смотрел, но буквально Human Diaspora, сделанная лет 6 назад.
132 1023032
>>3030

> У годота нет нормального функционала для обработки спрайтшитов и формирования из них анимационных блоков


Чекай аддоны, хз что конкретно ты имеешь в виду, но по слову sprite там пара десятков. Либо написать свой тул скрипт, который раскидает по таймлайну.
133 1023034
>>3032
Если коротко - у меня есть спрайтшит и мне надо его нарезать на спрайтатласы автоматом. Это если совсем коротко. Если чуть длиннее - я автоматически его нарезаю на спрайтатласы, и согласно данным в кастомном ресурсе который его нарезает - нарезаю эти нарезанные спрайтатласы по массивам в словарь с анимациями, ключ - название анимации - значение - массив. И вот уже это - можно раскидывать по таймлайнам, но я на них забил хуй и написал свой аниматор, потому что люблю свои велосипеды. Анимаций очень много, вычленять их долго, алгоритм их извлечения учитывает не только прозрачность а и линию на которой они находятся (прыжки, приседания). В целом - я супер доволен, кастомные ресурсы это тема, но как в юнити функционала под такое нет, может конечно какие-то плагины и умеют нарезать, тут хз.
134 1023097
>>2752
Продолжаю гнать на годот.
Реализация бленд шейпов в нем конечно своеобразная.

Модели из игры которые я пытаюсь импортировать, порезаны на части. Руки и ноги из трех сегментов, и жопа - торс - голова. Бленд шейпы на ладони, глаза+рот для головы, и сиськи у женских персонажей. Но у годота бленд дшейпы идут на весь меш. То есть не только та часть меша которая деформируется, и даже не весь сарфейс, а вообще весь меш... Для головы это будет не только лицо, а и волосы и головной убор и аксесуары. А я хотел на волосы еще физику импортировать. А для сисек это будет и одежда и рюкзаки и все что на нем. Хз почему так сделали. А если бы персонаж не был разделен на части то пришлось под каждый блендшейп повторять всю модель персонажа под каждую анимацию где у персонажа глаз дернулся. Сиськи - три морф-таргета, плюс 9 + 9 на каждую ладонь, плюс глаза 13, плюс рот 17. почти 40 полных мешей.

Если я сейчас выебусь и вырежу части подверженные морфингу в отдельные меши, то это может привести к дополнительным сложностям в будущем. Думаю сейчас лучше забросить, или сделать по тупому переключатель в случае если будет конфликт между блендмешами и физикой, чтобы можно было выбрать одно или другое.

Из процесса где я потихоньку пилю импортер, получился процесс где я потихоньку ною. Но ничего, думаю прорвемся.
135 1023102
>>3097
Больше похоже на то, что ты не разобрался. Сколько раз импортировал gltf из блендера и никаких 40 дополнительных мешей не появлялось. Кури vertex groups. Либо, есть вероятность что в гдскрипте не весь апи из с++, раз ты можешь оперировать только целиком моделью.
Пооще всего тебе взять готовую модель или сделать самому в блендере, в которой еапример блендшейп это только рот, и посмотреть что реально импортируется, перечислить из гдскрипта все проперти и массивы меша.
136 1023109
>>3102

>Больше похоже на то, что ты не разобрался


Не знаю если больше, но есть такая вероятность.

>никаких 40 дополнительных мешей не появлялось


не проверишь размер блендшейпов, - не узнаешь.

>посмотреть что реально импортируется


Этот импортер я практически копирую с блендер импортера который делал давно. Так что спасибо за подсказку. Надо будет действительно проверить. Тем более что там у меня все части сшиваются в один большой меш. Выгружу в годот, прошвырнусь по блендмешам поспрашиваю size().

https://pastebin.com/zJqLYiVp
Вот сам можешь поглядеть на приведенный выше скрипт. Для N блендшейпов, сначала N раз надо разные имена предоставить. Потом при каждой генерации сарфейса, обязательный массив из N бленд шейпов. Блендшейп это деформированный дубликат основного меша, но с меньшим количеством слоев данных, для меня это вертексы и нормали.
137 1023114
Короч нашёл другой движок (Defold) перекатываюсь туда, алибидерчи
138 1023120
>>3102
gltf загрузил через блендер

get_surface_count выдает 182

surface_get_blend_shape_arrays(surface_index) для любой из поверхностей возвращает array из 46 блендшейпов, как я и предположил, даже у поверхностей у которых нету блендшейпов, они появились в полном составе. Ну и в каждом блендшейпе, уже по три array, вертексов и нормалей такого же количества что и в сарфейсе, и также тангент которых в четыре раза больше и их наверное уже сам блендер добавил.

оригинальный файл - менее двух мегабайт. glb - 8 мегабайт. tscn - 18 мегабайт. И это даже не вся информация из оригинального файла. Я еще не выдрал оттуда физику для одежды, волос и прочего.

Но я никаких претензий ни к кому не имею. Все есть так как есть. Просто данность.
139 1023123
>>3120
Эм, ты сравнил размер бинарного glb и текстового tscn
140 1023125
>>3114
Ну и катись колбаской
141 1023134
>>3123
Такой вот уровень движкосрачеров, а чего ты ожидал. У него буквально в каждой фразе сквозит непонимание. "Просто данность".
142 1023135
>>3125
Я передумал, сори, остаюсь здесь. Не выгоняйте пожалуйсто..
143 1023148
Всем привет, годаны. Вот вам мой небольшой лайфхак.
Если у вас есть нода-обёртка над классом-референсом, и у них дублируются сигналы, и вы не знали как передать коннекты из обёртки внутрь референса, то вот так:

> for item in obiortka.signal1.get_connections():


> > refclass.signal1.connect(item.callable, item.flags)

.mp4430 Кб, mp4,
720x720, 0:07
144 1023150
>>3148

>obiortka

145 1023152
>>3150
Не ори. Не дома. И дома не ори.
mqdefault.jpg5 Кб, 320x180
146 1023155
>>3148

>obiortka.signal1.get_connections():

tumblrmycr03lbps1tnrn2do11280.png714 Кб, 800x576
147 1023156
Теперь это тред охуительных советов
Сегодня узнал, что можно принтить из _процесса и не переполнять аутпут, используя:
if Engine.get_frames_drawn() % 60 == 0:
print("Zoom: ", current_zoom)
Будет один принт в секунду
Круто же!
Ранее какую-то хуйню велосипедил для этого
148 1023159
>>3148

>Если у вас есть нода-обёртка над классом-референсом


У меня ее нет, ибо если понадобилась нода, то зачем вообще референс? Я все в ноду и помещу.
149 1023162
>>3159
Чтобы любители всё делать кодом делали предлагаемый функционал через код, и не требовалось создавать ноды, которые не будут добавлены в дерево, потому что "создал - сделал - высвободил". Для этого будет рефкласс. Для любителей же настроить ноды в инспекторе будут ноды-обёртки, которые красиво расставляются в сцене, имеют свои иконки и прочие свистоперделки.
150 1023164
>>3156
Нихуя не велосипедил, просто запускал годот с консоли и видел весь принт нормально
151 1023176
>>3148
Неплохо.
FY3BoSTX0AE8ny9.jpg628 Кб, 2048x1552
152 1023179
Посоны, я тут как-то задумался над тем, как хэндлить инпут, и теперь нихуя не могу раздуматься.
Вот смотрите, обычный способ:

func _input(event: InputEvent) -> void:
if Input.is_action_just_pressed("toggle_tab"):
truba_shatat()

Выглядит нормально, но, НО, здесь используется синглтон Input и не используется event! Сингтон Input по идее предназначен для вызова из _процесс или еще откуда, но не для вызова из _input. То есть, если по уму, то внутри _input надо работать с event и делать все вот это вот:
func _input(event: InputEvent) -> void:
if event is InputEventKey and event.pressed and not event.is_echo():
if event.keycode == KEY_TAB:
truba_shatat()
Но чет как-то так себе это все выглядит
Короче, объясните, как православно обрабатывать инпут
5aeca32dd3e0b15fb1ac16e5d39086df.jpg13 Кб, 300x238
153 1023180
>>3179

>синглтон


Что значит этот зумерский высер?
154 1023183
>>3179
Перво-наперво тебе надо вычистить годот от синглтонов. Как рекомендовал синьор-помидор выше в треде. А то ишь, чего удумали: Обработчик инпута загружается с движком и существует всегда как синглтон? Нужно срочно переделать. А то понимаешь, понадобится тебе хотсит с мышками, а синглтон!

Такшта вливайся в команду редот. Форкай. Чисти.
155 1023184
Ебать шутники набежали. Это серьезный блядь вопрос.
156 1023185
>>3134

>У него буквально в каждой фразе сквозит непонимание


Да ну? И ты конечно же просто так это ляпнешь, и не поведаешь что с не так с моими фразами, чтобы не опуститься до уровня движкосрача.

>>3123
импоритировал с блендшейпами tscn 18 мегабайт
импортировал без блендшейпов tscn 1 мегабайт

Не понимаю что за сопротивление такое. Я же еще 4 поста назад расписал что за байда с этими блендшейпами в годоте. Все равно, факты не факты, и вообще посты сквозят. Пиздец какой-то.
1737990647862.png49 Кб, 979x652
157 1023192
>>3179
Есть такая конструкция
mouseEvent := event as InputEventMouseButton
if mouseEvent and mouseEvent.pressed: ...
В данном случае если каст не прошел, то переменная будет null
Еще есть конструкция
match event.get_class():
_ "InputEventMouseButton": ...
(Не помню, возможно в 4ке можно и через &"Input..." для оптимизации - меньше сравнений со строками)
На пике более расширенная версия
Дальше уже наверное если только на наследовании что то мутить, а так гдскрипт это скриптовый язык, он и не подразумевает каких то аццких конструкций, а скорее что ручками if - elif - elif напишешь.
158 1023196
>>3183
Загружается еще и ресурсы жрет, ай-яй-яй.
159 1023197
>>3179
А чем тебе не угодил такой вариант:
if event.is_action_pressed("ya_tvoi", false, true):
_ truba_shatat()
17478229269250.png116 Кб, 982x619
160 1023198
Напоминаю базу
161 1023199
>>3192
А я на хую видал идею того что я должен дробить игровую логику только потому что ипнут блять видите ли обрабатывается только в функции инпута их обосраными ивентами. И написал аналог Input из юнити, где я откуда угодно могу запросить статус мыши и её кнопок/клавиши/последнего жеста на тачскрине (нажата, отпущена, стала нажатой, удерживается n времени) и передаю свой пламенный привет дебилу решившему что инпут функция заебись. Но да, это по факту инпут синглтон и для сплитскрина и двух гейпадов соответственно придётся что-то сочинять внутри этого синглтона.
162 1023201
Не кормите залетного движкосрачера.
1748282964059.png31 Кб, 591x212
163 1023202
>>3179
Эм, чеел, тебе нажатая клавиша (нажатый экшен) аргументом прилетает. Просто используй аргумент.
164 1023203
>>3201
Ты прав. Походу он заметил что мы туда давно не заглядываем и пришел байтить тут.
165 1023205
>>3199

> для сплитскрина и двух гейпадов


https://godotengine.org/asset-library/asset/3503
Всё уже написано.
166 1023221
>>3218 (Del)
нерелейтед, репорт
167 1023234
>>3218 (Del)
Хуйню он строчит. Просто хороший халявный аналог копилота, а эти его генерации нахуй никому не всрались, грок и дипсик кратно лучше
image.png347 Кб, 1280x747
168 1023237
2 месяца назад начал делать игори на годоте. Освоил процедурную генерацию мешей, высрал 3Д рогалик, ещё пару поделок, сейчас с корешем собираемся делать кое чего, что уже пойдет на итч, и дай б-г в стим. Я просто залетел поздороваться. ПРИВЕТ.
169 1023238
>>3237
Привет! Малаца. Всех благ.
170 1023243
>>3237

>с корешем


Да у вас там сразу студия. Все индюки завидуют.

Инди: "Я начал разрабатывать игры"
Ты с корешем: "Мы основали свою студию"
171 1023244
>>3243
Студия это просто квартира без стен. Хватит уже доёбываться до нищебро, словно ты сам не нищебро. Попустись уже.
172 1023249
>>3238
Спасибо

>>3243

>Ты с корешем: "Мы основали свою студию"


Студию АналКарнавал, разве что.
Он в Ирландии чилится, я в ВСЖ.

Может кто имеет опыт разработки в паре накинет мне советов как распределять роли грамотно?
Вроде он музло пишет, я модельки ваяю. А ПОГРОМИРВОНЕ? Все умеют погромировать, а вместе погромировать как-то неудобно, наверное. Или кто-то должен отвечать за интерфейс, например, а другой за поведение мобов, или чо-то в этом духе?
173 1023253
>>3234

>грок и дипсик


Перетолстил.
174 1023256
>>3237
Привет! уважуха... !!!
175 1023258
>>3249
Сейчас многие официально оформленные инди-студии без офиса работают, по удаленке, так что все ок. В эпоху ковида так и ААА работали.

>Может кто имеет опыт разработки в паре накинет мне советов как распределять роли грамотно?


Разбивайте по областям так, чтобы они не пересекались. Если хотите код вместе писать то там уже куча детальных обсуждений каждой подсистемы-фичи-функции, гит и ревью кода друг друга, чтобы вы понимали куда едете.
Screenrecorder-2025-05-27-11-48-14-124.mp48,9 Мб, mp4,
2712x1220, 0:21
176 1023264
>>3253
Шейх, ты?
177 1023278
>>3249

>Может кто имеет опыт разработки в паре накинет мне советов как распределять роли грамотно?


Опыта не имею. Во первых вам нужен Git.
Во вторых, имхо, вы оба равны, но один из вас должен быть ответственным в рамках одного проекта. Можете чередоваться. Суть ответственности в том что принятые решения должны соответствовать определенному уровню качества. Чтобы не спихивали ответственность с одного на другого, и некоторые решения от этого страдали.
178 1023281
>>3264
Бесплатно же, даже про модели.
179 1023282
>>3249

> А ПОГРОМИРВОНЕ? Все умеют погромировать, а вместе погромировать как-то неудобно, наверное. Или кто-то должен отвечать за интерфейс, например, а другой за поведение мобов, или чо-то в этом духе?


Можно кодить в компонентном стиле. Например: Вместо прикрепления скрипта к ноде CharacterBody, прикрепляется белая нода, а к ней уже скрипт, который через get_parent() работает с нодой выше. Таким образом, даже если два кодера одновременно напишут функционал для одного объекта, эти компоненты дополнят друг друга.
image.png427 Кб, 747x670
180 1023284
Я нашел братана синглтон-шиза. Этот борется с группами.
181 1023288
>>3284
Ну в некоторых моментах он прав. Строковые литералы (магические строки) это зло. Одна опечатка и ты опечатался. И ходишь по коду, ищешь опечатку.
Но следует отметить, что в четвёрке группы тоже переработали и они уже почти-почти похожи на интерфейсы в больших языках.
182 1023289
>>3284
Так это не шиз, он борется с плохими практиками, а не шиз который навязывает синглтоны доугим.
183 1023300
>>3281
В каком месте бесплатно, три запроса и вынюхни если денег нет. У чата запросов 10 и пошел нахуй, мини это вообще пиздец, зачем он существует непонятно. Только грок с дипсиком меньше всего жадничают, дипсик так вообще сама щедрость.
184 1023301
>>3300
Походу он места знает и хвастается.
185 1023303
>>3300
нерелейтед, репорт
186 1023306
>>3300
Ты ебобо? Аккаунты делаются на раз-два. Вот это анонимус пошел конечно, мдас хех, да еще в техническом разделе. Дрочеры в /b себе сотни наклепать могут, а этот, ПОХРОМИСТ, не может.
187 1023313
>>3306
Жир потёк. Я историю чатов тоже могу носить между аккаунтами? Или буду перепривязывать windsurf из вскод аппы каждые 3 минуты выходя из нового и заходя в старый? А у гулоакков есть еще такой ньюанс что они могут внезапно начать требовать принять смс, который ты больше не примешь и опять пиздуй регай новый. Мне проще с одного акка сидеть в 4 нейронках и делегировать разным нейронкам разные задания, а не ебаться с профилями лисы или велосипедить куки сваппер чтобы послать 3 запроса клоду в час по пустяку.
Внимание # OP 188 1023314
В этом треде обсуждаем движок Godot Engine
189 1023316
>>3313

>Жир потёк.


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

Дальше спорить не буду. Сиди со своими технологиями 2020 года.
covers.png397 Кб, 630x500
190 1023334
Сделал игру, хотя нет, я хотел сделать игру, а сделал, даже не визуальную новеллу, а просто читалку записок, лол. На самом деле, я хотел бросить этот проект, т. к. понимал, что геймплея по сути не будет, но графика была уже наполовину готова и пришлось заканчивать через силу. Надеюсь, вышло хотя бы атмосферно.
Теперь можно отдохнуть и браться за вещи посерьёзней, попробовать сделать что-нибудь с нормальным геймплеем. Вы тоже давайте, делайте игры. Раз-раз и готово.
https://fatum-game.itch.io/manuscript
191 1023335
>>3314

>В этом треде обсуждаем движок Godot Engine


Эта болячка на долго. Надо создать тред по нейронкам в gd и посылать все вопросы и обсуждения по ним туда. Максимум оставив ссылку здесь.

Нейронки помогают многим повысить призводительность на порядок, так что они теперь часть антуража.
192 1023338
>>3334

>но графика была уже наполовину готова


А вы все ассеты сами делаете?
193 1023339
>>3338
Да, кроме звуков.
194 1023341
>>3339
Выглядит солидно. И сроки у вас, вроде, короткие. Ща скачаю, под протоном запущу и почитаю ваши записки.
195 1023342
>>3341
Спасибо, анонч
1698864846772088.png1,4 Мб, 1810x1342
196 1023349
>>3249

>Может кто имеет опыт разработки в паре накинет мне советов как распределять роли грамотно?


Опыта не имею, но в титрах игорей постоянно вижу хуйню вроде Enemy AI Programmer. Так что один может хуярить все что касается игрока, а другой врагов, например.
197 1023350
>>3316
Ты бы вместо пустопорожнего пиздабольства по делу ченить сказал. Все нейронки +- одинаковы, потому что база одна и строится на той же технологии, просто где-то больше а где-то меньше параметров.
1748369946520.jpg18 Кб, 360x360
198 1023352
>>3338

> делаете?


Вапщета мы тут все братья-годотеры и общаемся исключительно на "ты".
199 1023353
>>3334
Поиграл. Второй раз помотал чтобы посмотреть еще раз на чудика. Немного интересно. Я сначала некоторое время тыкал везде, даже хватал бумажку, но не понимал что что-то схватилось пока не навел на сканер с зажатой кнопкой. Курсор слишком мелкий и очень неочевидный. Короче догадаться как поставить бумагу на сканер, уже квест. Звукового дизайна маловато. Хотя бы ручка покатилась бы по столу.
А вообще, историю надо было делать про то что с тобой общаются по имейлу. Ты посылаешь документы, и назад тебе присылают старые или странные фотографии сгенерированные нейронкой, и вырезки из газет. А саму расшифровываемую историю урезать вполовину.

Я бы сделал мод где ты просто выходишь в интернет чтобы посмотреть на порнуху. С подключением диалапа. И медленно прорисовывающейся порнокартинки, и разрыва соединения на самом интересном месте. А в конце в комнату заходит толстая жируха и душит тебя сиськами.
200 1023354
>>3352

>Вапщета мы тут все братья-годотеры и общаемся исключительно на "ты".


Совершенно верно. Вы все братья годотеры, а я ваш папа годотер. Не достаточно что вы без спросу тут постите что в вашу дурную голову взбредет, так еще постоянно мне тыкаете. Ни капли уважения.
1748370327699.png402 Кб, 603x670
201 1023355
>>3354

> я ваш папа


Дед, пей таблетки, а то получишь по жопе.
202 1023356
>>3352
Там их двое прост.
.mp4207 Кб, mp4,
720x1280, 0:03
203 1023364
>>3355
Проиграл с отсылки.
Группа Технология - Нажми на кнопку (1991) (Remastered 2025) [].mp47,3 Мб, mp4,
256x144, 4:14
204 1023367
Я для своей новой игры хочу в качестве саундтрека поставить этот трек. Какие подводные?
205 1023368
>>3367
Если релизнешь игру и она привлечет внимание - есть шанс что прилетит за копирайт или типа того.
206 1023369
>>3368
От кого? Там же все студии эти развалились давно. Или нет?
207 1023371
>>3367
нерелейтед, репорт
(Автор этого поста был забанен. Помянем.)
208 1023372
>>3369

>«Технология» — советская и российская синти-поп-группа из Москвы. Пик популярности группы пришёлся на 1991—1993 гг. В различных составах существует с 1990 года до нынешнего времени.



На похожую тему - я недавно набрал себе CC-BY треков в игру, а потом понял что есть подводный. Не получится использовать эту музыку в видосах, которые я раскидываю по соцсетям, потому что указывать под каждым видосом автора музыки смотрится дешево и кринжово. Теперь ищу хоть один приличный не заезженный CC0 трек.
209 1023374
>>3355

>Дед, пей таблетки, а то получишь по жопе.


>>3364

О чем я и говорил. Вместо того чтобы брать пример с ваших более прозорливых братьев, и радовать своего папку ежедневно поделками на годоте, вы понахватались всяких глупостей с улицы, и тащите их все сюда. Посмотрите на другие движкотреды, там дети как дети, а эти... эх, в кого вы такие вышли?
# OP 210 1023375
>>3371

> Продолжается набег


Ну вапщета я ОП.
211 1023376
>>3375
Окей, я понял. Тогда пожалуй это я пошел.
212 1023378
>>3376
Нет оставайся.
213 1023383
>>3371
А мне вот например хочется обо всех аспектах игры только с годачерами говорить, т.к. тут все братушки
214 1023387
>>3383
Мне тоже. Давайте только без этого вот тралевания. Не ок дизморалить братанов.
215 1023395
>>3383
Для разговора обо всех аспектах игры ты можешь завести тред игры или спрашивать в новичковом.
216 1023417
Нашёл годный аддон https://godotengine.org/asset-library/asset/3267
image.png1,6 Мб, 1146x646
217 1023418
Какой вы знаете самый кучерявый и производительный способ добавления адового кол-ва травы в сцену? Я перепробовал все известные мне методы, включая аддоны, но в лучшем случае я въебывал фэпэсы в 2-3 раза. Я верю, что можно сделать лучше.
218 1023420
>>3418

> самый кучерявый и производительный способ добавления адового кол-ва травы в сцену?


Инстансинг.
https://docs.godotengine.org/en/stable/classes/class_multimeshinstance3d.html
Если ты это пробовал и у тебя на твоей пеке даже это тормозит, то ты наш брат, братишка.
219 1023423
GodotRx - Реактивные расширения для Godot Game Engine версия 4 (GDRx)
https://godotengine.org/asset-library/asset/2369

Что? Зачем Rx? ReactiveX дают братишкам более декларативный стиль кодинга, работающий через подписочные(?) (observable) потоки данных. Так что мотивирует братишек писать высокоподдерживаемый и низкосвязный код, легче читаемый и расширяемый.

Godot Engine поставляется братишкам с неплохо продуманной системой событий (сигналов) а так же прикольной реализацией корутин. Благодаря им легко реализуется асинхронное выполнение кода (в смысле, код не выполняется в порядке его записывания). Подписчик (observer) прослушивает подписку на событие (observable event) и когда там активируется что-то важное, или происходит в программе что-то в результате внутренних эффектов для присоединенных экземпляров, то есть как бы это может быть, например, когда игрок атакует врага или предмет поднят им.

Rx расширяет эту идею, превращая все формы данных внутри программы (сигналы, события, колбэки, структуры, корутины, и т.п.) в подписочные потоки данных, излучающие свои элементы. Эти потоки данных, именуемые "подписками" ('Observables'), могут быть трансформированы с использованием функциональщины (привет мапам, редьюсам и остальной братве).
220 1023424
>>3417
А вот это и правда стоит внимания. Возможно, станет первым аддоном, который установлю
221 1023425
>>3420
Да я не сказал бы, что тормозит, просто у меня дроч на оптимизацию дикий. С мультимешем фпс падает с 600 до 200 где-то. Это неудовлетворительный результат. Я бы не хотел столько терять на одной только траве. У меня запланирована сцена с кучей растительности разной. Я не хочу въебывать все ресурсы в зелень. Не могу смотреть на всякие кигдом камы деливеренсы и не попытаться сделать похоже.
222 1023426
>>3425
Чтобы оптимизировать игру, должна быть игра, а не тестовая сцена с мультимешем в вакууме. Игра есть? Нет? Ну так игру делай, а не преждевременную оптимизацию.
223 1023428
>>3418
Дедовый метод мультимеш-квадов с текстурой до сих пор самый действенный, ящитаю.

>>3425
А еще ЛОДы используй. Нет смысла рисовать полноценную траву вдалеке, где ее не разглядишь.
224 1023434
>>3418
Попробуй отключить отбрасывание теней травой. (Прием теней тоже можно убрать, но наверное это уже не так красиво) Вообще трава у меня никогда не работала быстро, кажется всегда раза в 2 просаживала. Самый оптимальный способ был как в ААА играх, когда трава рисуется шейдером только вокруг тебя на каком то радиусе.
В закладках у меня был какой то олдовый дедовский способ, но я его реализовать так и не смог, да и не факт что он быстрее.
225 1023436
>>3202
Как ловить нажатия с модификаторами, учитывая, что модификатор – это не контрол/альт/шифт, а, например, delete?
226 1023438
>>3436
Delete не модификатор. Соответственно, тут только своя машина состояний.
(Но конечно ничто не мешает форкнуть движок и сделать их модификаторами. Я вот планирую бекпортнуть из 4 в 3 различиние правого и левого шифта)
Screenshot20250529102143.jpg285 Кб, 1080x1994
227 1023483
Пиздос даже на каких-то ренпай и пайгейм, о которых я никогда раньше не слышал, больше игра чем на годоте.
228 1023486
>>3483

> ренпай и пайгейм


> никогда не слышал


Как определить залетного движкосрачера с нулевым погружением в тему.
229 1023487
>>3486
Движкосрачер был бы как раз в курсе, довен.
230 1023488
>>3487
Зря говоришь о себе в третьем лице.
231 1023493
>>3483

> больше игра чем на годоте


Кстати, напомнил.
Еженедельные 5 игорь.
https://www.youtube.com/watch?v=wTP7vtINp4g
232 1023496
>>3483
Ты забыл посчитать итч, лол.
А еще выяснилось, что эти статистики не умеют определять некоторые игры, та же крупнейшая Webfishing не учитывается.
Забавно, что я так и писал еще года 3 назад, что автоматические определялки полагаются на .pck файл, а в годоте есть вариант экспорта всего в один .exe
Так что учи матчасть, старайся лучше, тут такое не прокатывает.
233 1023497
>>3496

>а в годоте есть вариант экспорта всего в один .exe


Бля, я имею 3 опубликованных игры, и в каждой все в один бинарник пихал. Меня забыли посчитать!
234 1023499
>>3497
У меня вообще десяток игр не на этих площадках, хех. а работают на железе индивидуальных заказчиков
235 1023501
>>3499
Казино три топора?
236 1023502
>>3501
VR румы и аватарки стримеров
237 1023561
Ебаный скоп, блять. Делаешь-делаешь, делаешь, делаешь, а конец не приближается.
big main project.png42 Кб, 556x436
238 1023562
>>3561
Держись! Мы с тобой. Весь тред держит кулачки за тебя. У тебя всё получится!

Вот тебе лайфхак по скоупам.
239 1023563
>>3561
Так это же кайф, постоянно находишься в процессе разработки, пользуешься годотом. Только представь какой ужас когда ВСЕ, закончил.
240 1023566
>>3563
Когда ВСЕ ЗАКОНЧИЛ у меня еще 2 детально продуманных проекта ждут.

>>3562
Спасибо, анончик.
241 1023576
Бля какой же нахуй годотский соевый кал в треде и в итоге закономерно ни одной игры.
1.jpg204 Кб, 1080x674
242 1023579
Зашёл почитать этот ваш движкосрачный тред, а там пикрилейтед. Что он имел в виду?
243 1023582
>>3579
Там школьники познают мир, увидев в опенсорсе то, что обычно от них скрыто под капотом, а на самом деле работает +- одинаково везде.
244 1023583
Не кормите, он уже не знает как растечься.
Контент 245 1023596
Лец си эбаут реюзабл компоненц https://www.youtube.com/watch?v=io9fJxlpS84
Энд ретён ту воpк.
246 1023605
>>2039 (OP)
ЧЯДНТ?
Вариант 1 и 2 не работает. Варианты 3 и 4 работают. Но хочется вариант 1.
247 1023613
>>3605
Попробуй self.get_parent()
248 1023618
Из за чего вторая камера (что visibility) может так хуёво рендерить тени, когда как первая их рендерит хорошо? Настройки одинаковые, во воьюпорте и его контейнере уже всё излазил, всё истыкал - нихуя не меняется. Помогите, пожалуйста. Тени от омни лайта кстати.
1657003817923.png29 Кб, 318x331
249 1023619
>>3618
У него свой атлас теней наверное.
250 1023622
>>3619
Точно! Вот я затупок - размер атласа во вьюпорте не менял. Ещё думаю, что раз в настройках проекта поменял, то он везде такой ставится. Спасибо большое.
251 1023625
>>3605
Видимо так сделать нельзя, ожидает определение именно геттера, возможно в реализации оно чем то отличается от просто функции. Создай пропозал.
1748609091033.png128 Кб, 1145x932
252 1023645
>>3613
Не взлетело.
>>3625

> возможно в реализации оно чем то отличается от просто функции


Похоже что так.

> Создай пропозал.


Не. Продолжу игры делать. Пикрелейтед в подробностях.
253 1023646
>>3645
onready забыл?
254 1023648
>>3646
На скрине забыл, но отработал. Ошибка-то синтаксическая, никуда не девается.
255 1023649
>>3605
Гет это не переменная, чтобы его к чему-то приравнивать, это просто ключевое слово, после которого описывается функция. Это функция должна отвечать требованиям:
1. Не иметь аргументов
2. Возвращать значение, по типу совпадающее с типом объявляемого свойства.
Если уж тебе так хочется обойтись без лишних запросов к дереву, то вариант 4 - самый адекватный и правильный. Но вообще, просто забей и пользуйся простым get_parent() вместо вотэтоговот. У тебя же не происходит тысяча таких запросов за кадр? Энивей, даже если происходит, то ты что-то делаешь не так.
256 1023652
>>3649

> Гет это не переменная, чтобы его к чему-то приравнивать, это просто ключевое слово, после которого описывается функция.


В четвёрке синтаксис таков, что можно и приравнять. Смотри на строку 10 тут >>3645 из-за этого и весь сыр-бор. Анонимус ожидает, что встроенная функция без аргументов и с типом Node подойдёт в качестве геттера, но парсер скрипта её не видит. Поэтому в строках 10-15 анонимус втупую дублирует функцию.
257 1023660
>>3652
В 2 строчки можно
А вот лямбду тоже не принимает, пишет что ожидает именно имя функции-геттера.
258 1023661
У меня рука отваливается дрочить левелы дизайнить. Предпринял отчаянную попытку - скормил нейронкам .tscn с уровнями, благо tscn имеет текстовый формат, и попросил слепить хоть что-нибудь. Результат ожидаемый.

Поныл.
259 1023662
>>3661
Что-то такого уровня будет
>>1013068 → >>1013643 →
260 1023663
>>3662
Если бы. Там просто шизокаша сломанного формата.
261 1023664
>>3663
Процген в помощь?
262 1023665
>>3664
Бездуховно. Буду душевно страдать, как монах.
а была ли мечта.jpg226 Кб, 500x637
263 1023667
>>3661
Ну как бы я так же поныл ещё в 18 году, когда осознал масштаб работ, которые делают индюки на изичах каким-то немыслимым усилием воли и мотивации. Ещё тогда я охуел и обпикрелейтился.

Не будьте такими как я.
image.png101 Кб, 500x500
264 1023670
>>3667
Жиза. Но я обязательно доделаю эту, как заставил себя доделать предыдущую. А потом, да, перейду на идеи в разы меньше. И ты давай.
265 1023688
Бля, с одной стороны дипсик для годот неплохо объясняет сложные вещи из документации, а с другой путается в нескольких вложенных циклах for/if, лул
266 1023689
>>3688
Попробуй самостоятельно понимать документацию, не делегируй роботу своё мышление.
267 1023692
>>3688
А ты общайся с нормальными пацанами - Чатгпт, Гемини, Клод.
268 1023698
>>3689
Я вот стараюсь сливать работу на чатгопоту только когда я уже в край заебался искать проблему в логике, либо когда мне интересно, есть ли альтернативные варианты, может более оптимизированные, моего кода.
Правда я программирую на гдскрипте и всего несколько месяцев, лул, и возможно я себе этим врежу, но я изначально не программист а тридэшник, так что я не вижу в этом особой проблемы.
Мимо-нищий-симуляторостроитель
269 1023699
>>3652

>В четвёрке синтаксис таков, что можно и приравнять


Ну как бы да, но как бы нет. Это не присвоение. Нельзя туда запихнуть просто какую-то Callable фигню, потому что геттер задаётся не на этапе выполнения скрипта, а на этапе регистрации класса (а каждый скрипт - это класс).
270 1023701
>>3698
Не, все правильно делаешь. Улучшать себя с помощью нейронок - верный путь, перекладывать на них все думоние и в итоге заиметь внешнее мышление - неверный путь.

Мне самое удобное просить гпт объяснить мне теорию и/или математику доступным языком. Или где какие методики применять, например в освещении.
271 1023703
>>3689
Я базово не люблю читать документации/мануалы, потому что, как правило, это гумоз тот еще, они все написаны душно и скучно. Лучше уж курить туториалы на ютубе + форумы + запрашивать выжимку с конкретикой у нейронки
ИМХО
272 1023776
Можно ли (и как, если да) сделать отсечение видимости частей объектов, на основе освещения? Вот у меня есть сцена (пик1), на которой персонаж смотрит внутрь условного строения. В направлении взгляда светит SpotLight3D с отбрасываемыми тенями, что создаёт условное поле видимости персонажа. Можно ли вот чтобы освещенная внутренняя часть, создавала как бы маску для отсечения рендера того, что находится на ней? Чтобы получалось что-то вроде пик2
273 1023786
>>3776

> Можно ли


Можно.

> и как, если да


В трёшке был аддон стелс-заготовка, там как-то определялось количество света, падающего на перса.
Изучай, вот сам скрипт оттуда: https://github.com/awnagel/Godot-Thief-Controller/blob/master/addons/thief_controller/scripts/player/light_detector.gd
Поймёшь принцип - сделаешь где угодно.
274 1023792
>>3776
Не знаю верно ли я понял чего ты хочешь добиться. Попробуй выключить эмбиент освещение и поиграться с масками света.
275 1023794
>>3786
Спасибо, ага, натыкался вчера на видос на ютубе про эту тему.
276 1023795
>>3776
А тебе точно надо на основании освещения, а не просто какого то радиуса?
Я так понимаю ты пытаешься сделать сделать скрывающиеся стены. Ну вот тут с 29 минуты чел делает что-то типа рендера в вьюпорт и аналога стенсил буфера,
https://www.youtube.com/watch?app=desktop&v=0T-FMkSru64&t=1773s но думаю так можно и под твой источник света сделать (особенно если поставить его в другом слое и светить на максимум)
вот еще шейдеры делающие нечто схожее https://godotshaders.com/shader/fade-by-distance-to-character/ https://godotshaders.com/shader/3d-border-distance/
277 1023797
>>3795
Спасибо за ответ. Да, мне точно на основании освещения надо. Принцип работы поля видимости персонажа примерно как в зомбоиде, если играл. Те места, куда может упасть источник света, который является имитацией взора игрока, должны быть видны даже за стенами. Видео, что ты посоветовал, я смотрел. И там не совсем то, что мне нужно. Такая фича у меня уже реализована была, но я долго игрался с ней, и по итогу решил, что это не то, что мне нужно. Не шибко гибкая реализация, вобщем.

И кстати, ещё вопрос близкий к теме - можно ли буфер глубины преобразовать в карту высоты? Допустим у меня есть саб вьюпорт, с камерой, которая смотрит от первого лица игрока, и по сути так же имитирует его поле видимости. У неё фов ещё 130 градусов, чтобы она охватывала такой же угол, как спот лайт. Так вот, я мог бы брать вьюпорт текстуру, с настройкой дебаг мода - буфер глубины, и, если возможно, преобразовывать в карту высот, чтобы потом использовать в качестве шейпа для HeightMapShape3D, который служил бы мне шейпом коллизии для ареа3д.Ну и там дальше я уже тоже продумал, но процесс весь описывать не вижу смысла. Или может я вообше шизу загоняю? Я пытался уже и разные вьюпорт использовать, и делать маски, но пока чот безрезультатно.
278 1023811
>>3797
Нет, не играл, что-то типа зоны действия способностей?
https://godotshaders.com/shader/sdf-range-rings-3d/
https://godotshaders.com/shader/shaped-glow-post-processing-effect/
По скринам зомбоид это плоская игра, в таких играх такие вещи считаются простыми геометрическими фигурами типа круг на плоской земле.
Про глубину не уверен что так будет работать с таким ракурсом, и также не уверен что это будет быстро в реалтайме, если только ты не собираешься один раз при создании уровня это посчитать.
279 1023818
>>3811
Да, напоминает зоны действия способностей, если так подумать. Кстати такая особенность есть во многих изометрических играх, надо будет погуглить как в том же рог трейдере реализовано, если найду. По глубине ну понял, думал в реалтайме вообщет чекать, но если и правда затратно так, то и хер с ним. Придумаю что нибудь другое.
280 1023862
Целый пак годноты в одном репе
https://www.youtube.com/watch?v=7mwvHeHjGjI
281 1023878
Ну и название у движка конечно...
282 1023879
>>3878
Двачую, очень стильное.
283 1023880
>>3879
Стильное? Оно звучит как говно.
284 1023886
>>3880
Разве? А, я понял, ты не туда ударение ставишь.
285 1023893
Не кормите. Это все тот же шизосрачер.
286 1023934
Некоторые аддоны представляют собой движок в движке.
Некоторые из них это понимают и отражают в своём названии.
Вышел вышел!вышел третий урок по движку обработки ввода:
https://www.youtube.com/watch?v=RCKqouD9bPI
287 1023936
>>3934
А канал неплохо вырос. Я все же думаю что годоньер это ты.
1748871472416.png127 Кб, 799x371
288 1023938
>>3936
Да, это я. Как ты догадался??
289 1023940
>>3938
По двачерскому нейроакценту.
290 1023945
>>3938
Нейронка делала дубляж с твоего английского? Или срусской речи переводила?
1748880170674.png490 Кб, 817x733
291 1023946
>>3945
Тащемта я нативный китаец, нейронка мне и на инглиш и на русиш переозвучила.
292 1023963
Эх лето, не успею ничего нового к шапке следующего треда показать
293 1023964
как мне сделать респонсив уи?
вот допустим бг 1920 на 1080, по гайдам и советам нейросети она не скейлится до 1280 на 720.

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

проблема щас такая. размеры окна проекта 1280 на 720, текстура бг 1920 на 1080, по гайдам сделал, но текстура не хочет уменьшаться до 720.
295 1023966
>>3965
Текстур рект старается сохранить четкость текстуры.
Но у него есть параметр scale которым можно уменьшить.
Кроме того можно уменьшить всю игру в настройках проекта
https://docs.godotengine.org/en/stable/tutorials/rendering/multiple_resolutions.html
296 1023968
>>3966
Спасибо, оказалось достаточно было игнор поставить.
298 1023970
https://godotengine.org/article/dev-snapshot-godot-4-5-dev-5/

Новая бета. Расскажите чего там, а я пока посплю. Краем глаза видел про 20х к скорости компиляции шейдеров.
299 1023990
>>3969
Действительно прикольно. Даже трейлер на асепритовский похож
image.png172 Кб, 893x713
300 1023999
>>3970
Я вот это не понял. В чем суть? Ведь и так можно было создавать свои классы, которые подхватывались инспектором.
301 1024001
>>3999
Суть в том, что теперь есть ключевое слово abstract, и объект такого класса НЕЛЬЗЯ создать.
Ну это, видимо, всякие синглтононенавистники наныли.
302 1024010
>>3999

> Я вот это не понял. В чем суть?


Суть в том, что геймдев - это вершина айти. Имеет смысл приходить в геймдев когда более простые вещи изучены. Если в геймдев вкатываешься с нуля - возникают подобные вопросы. А чоэта такое - абстрактный класс? А потом еще в гдскрипт интерфейсы введут (а может быть сразу типажи), и вкатуны так же будут спрашивать, а чоэта такоэ - ынтырхейс?
303 1024013
>>4010
Этот коммент - наглядный пример, почему стековерфлоу сдох в пользу нейронок.
304 1024028
>>4013

> Этот коммент - наглядный пример, почему стековерфлоу сдох в пользу нейронок, берущих ответы со стековерфлоу.

305 1024036
>>4013
Ты не на стековерфлоу.
306 1024037
>>4036

>добро пожаловать в тред взаимопомощи


Зачем тогда этот "тред взаимопомощи", если в ответ на вопрос высирают вот этот >>4010 понос?
307 1024038
>>4037
Свали нахуй, мразота движкосрачерская. Ты гляди какой пидарас!
308 1024040
>>4037
А, это ты писал выше что "документация душно", вопросов не имею.
Взаимопомощь - это не держать кого-то за ручку, это как минимум подразумевает что новички подтягивают свой уровень и становятся равными опытным.
309 1024041
>>4040
Нет, не я, ты хуевый прорицатель.
310 1024064
Почему я не кодер и знаю, что такое абстрактний класс, а вы литературно кодите игры и не знаете? Это как прийти в зоопарк и тыкать пальцем в зебру и кричать "мам смотри лошадка", при этом тебе за 30. Понятное дело, что люди охуевают.
мимо
311 1024065
>>4064

>знаю, что такое абстрактний класс


Ты - молодец.
А вот шеймить тех, кто не знает - не надо, их надо просто научить.
312 1024099
>>4064
Я вот не знал, когда этот термин впервые увидел. Но из контекста сразу же догадался.
Мне кажется, анона сбило с толку введение ключевого слова abstract и запрет на прямое использование соответствующего класса. Как по мне, это лишнее ограничение, которое не соответствует духу гдскрипта. Оно имеет смысл в компилируемых языках, потому что компилятор в этом месте может произвести какую-то оптимизацию; здесь же это ограничение ради ограничения. Я понимаю, что для многих это привычный элемент, он есть много где; и вообще, добавляет строгости в код. Но для вкатунов - плюс одна копеечка в копилку непонятной сложности. Да, я понимаю, что вкатуны могут просто не пользоваться ключевым словом; да, я поимаю, что криворукий вкатун может попытаться добавить абстрактную ноду, а его годот пошлёт нахер; и это хорошо, потому что новичок не зайдёт не в ту дверь; но это плохо, как куча запертых дверей в классических Сайлент Хиллах. Это маленькое поднятие порога вхождения. Хотел написать, что гдскрипт язык максимально вкатун-френдли, но по размылении всё-таки нет, он постоянно пытается усидеть на двух стульях и раздувается от фич, которые использовать не обязательно, но необходимо. Он позволяет творить лютый говнокод, но постоянно подталкивает к хорошим практикам.

Алсо, киньте в меня камень, кто ни разу не создавал абстрактную сцену, чтобы от неё потом наследовать сцены более реальные.

Лол, меня занесло.
313 1024687
>>4099
У меня прямо сейчас есть абстрактные классы, но о том что они абстрактны движок не знает, а я в _init() прописал printerr("!Ты создал экземпляр абстрактного класса, притворись, что никто не видел!") В абстрактном классе я задекларировал переменные и функции, которые есть во всех потомках. Очень удобно. Причём, если кто-то захочет спросить, зачем мне иерархия наследования, когда есть более гибкая композиция, я заранее могу ответить. Это иерархия компонентов для композиции. То есть, абстракт класснейм КомпонентБазовик в котором сразу прописаны методы работы с хост-нодой, и прочие полезности.
315 1024851
Всем привет, я делаю топ давн игрушку, и на моих 2д персонажах как-то не оч хорошо работает Y sort. Я всех неписей поместил в одну ноду, и на ней активировал Y sort, но когда они проходят друг над другом или под друг другом, некоторые части тел не перекрываются.

Сами персонажи состоят из множества polygon2d, поэтому внутри них я там поиграл с z index, чтобы анимации норм игралисью.
316 1024856
>>4851
https://kidscancode.org/godot_recipes/4.x/2d/using_ysort/index.html
Y sort сортирует точки origin, поэтому конечно надо чтобы они все делались единообразно, например на уровне стопы.
А, еще где то читал что z-index главнее y sort. Надо экспереминтировать. Может быть проще вручную считать z-index самому в зависимости от y координаты.
https://www.reddit.com/r/godot/comments/x15sjz/problem_with_ysort_node_and_z_index/
317 1024858
>>4856

>Может быть проще вручную считать z-index самому в зависимости от y координаты


Вообще такие мысли есть, но я могу это только на таком просто уровне сделать, тип если попало в зону "это", поменять z index. А если и снизу и сверху будут неписи, в общем хз, буду думать.
318 1024861
>>4858
Да я имел в виду более примитивный способ. YSort же работает наподобие self.z_index = self.position.y (чем больше y координата, тем объект ближе рисуется). Можно просто переделать на твои оффсеты для анимации: z_index = position.y + your_z_offset
319 1024864
>>4861
Ну кстати так гораздо проще, а я чет в голове уже хуйню из всяких зон строил. Спасибо.
320 1024883
>>4805
Наверное очень много сил потрачено на это, но выглядит прямо ПЛОХО.
322 1024890
>>4888
Алсо поддержку старых браузеров выкидывают.
323 1024891
>>4883
Толсто. Выглядит просто как стандартная 3д игра, ну ассеты он еще некоторые недомоделлил явно плейсхолдеры. Делалось тоже явно ненапряжно и легко за пару месяцев если посмотреть историю канала.
324 1024893
>>4888
Попробуем конечно, но что то кажется смысла переходить с 3-ки в вебе все равно не появится.
325 1024899
>>4890
Ну все, яндекс игор для мамашек уже не сделать...
326 1024920
>>4899
Можно было бы посоветовать юзать трёшку, но после четвёрки на трёшке неудобно, реально как будто с иномарки на шоху пересел.
327 1024928
>>4920
Решил проблему просто не переходя на 4-ку.
328 1024976
>>4928
Сейм. Там еще 3.7 впереди.
329 1024977
Итч заебал лежать
330 1025108
Вышелвы шелвышел!
https://www.youtube.com/watch?v=aRdiiWpA0AA
331 1025112
>>5108
Надо сходить юнькам закинуть.
332 1025119
В годоте есть что-то вроде Dots?
333 1025126
>>5119
Мультимеши с VAT. Враги в Хоппе так сделаны.
334 1025128
>>5126
А по использованию это грязный хак или леджит способ?

>в Хоппе


?
335 1025250
>>5128
Что?
image.png33 Кб, 423x215
336 1025406
Я нашел где наш любитель мультиплеерных кнопок получил свой ПТСР с внезапным переделыванием синглов в онлайн и обратно
337 1025446
>>5406
С самого начала было очевидно, что это какой-то эффективный менеджер из развалившейся галеры. Я постоянно говорил анонам, чтобы не кормили его и репортили. Но мы кормим его уже шестой тред.
338 1025537
сап двач. прошу отнестись с пониманием, ибо это просьба о помощи.
я на данный момент делаю пиксельный 2д рогалик про подземелья, именно реалтайм, не пошаговый. годотом до этого в целом не владел, на данный момент около ~350 часов в нём провел.
проблема заключается в том что я не умею программировать, вообще, не даётся мне это и всё, лет с 12 пытался научиться, но то ли усидчивости не хватает, то ли мозгов, но в геймдев с детства мечтал попасть, поэтому раз с погромированием не получилось, начал учить 3д, рисование, и пиксель арт, и на данный момент очень и очень в этом неплох. но программировать так и не научился.
пытался работать на энтузиазме с друзьями программистами, но по итогу мои 3 месяца работы над игрой ушли в стол ибо оказалось что серьёзно к этому относился только я, поэтому принял решение во что бы это не стало, сделать игру сам.

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

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

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

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

памагите, боюсь что если я не смогу реализовать это сейчас, то остаток дней проведу на дноработе 5\2 без сил к саморазвитию и реализации и так и сгорю там.
338 1025537
сап двач. прошу отнестись с пониманием, ибо это просьба о помощи.
я на данный момент делаю пиксельный 2д рогалик про подземелья, именно реалтайм, не пошаговый. годотом до этого в целом не владел, на данный момент около ~350 часов в нём провел.
проблема заключается в том что я не умею программировать, вообще, не даётся мне это и всё, лет с 12 пытался научиться, но то ли усидчивости не хватает, то ли мозгов, но в геймдев с детства мечтал попасть, поэтому раз с погромированием не получилось, начал учить 3д, рисование, и пиксель арт, и на данный момент очень и очень в этом неплох. но программировать так и не научился.
пытался работать на энтузиазме с друзьями программистами, но по итогу мои 3 месяца работы над игрой ушли в стол ибо оказалось что серьёзно к этому относился только я, поэтому принял решение во что бы это не стало, сделать игру сам.

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

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

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

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

памагите, боюсь что если я не смогу реализовать это сейчас, то остаток дней проведу на дноработе 5\2 без сил к саморазвитию и реализации и так и сгорю там.
339 1025544
>>5537

> как быстро научиться прогать


Используй вот этот сайт https://snap.berkeley.edu/
Открывай имеющиеся там проекты.
Смотри как они работают.
Пробуй самостоятельно составлять блоки.
Когда дорастёшь до своего первого полностью самостоятельного проекта в этом снапе - попробуй вернуться в годот и осознать что блоки снапа были всего лишь словами, которые нужно писать, чтобы получилась программа. После этого начинай осваивать гдскрипт.
340 1025546
>>5537
Поймать бы тебя, такого идейного, и загнать работать над моим проектом. У меня как раз тоже данжи. Но мы посремся из-за вижена.

>>5544
Подумал что это предок Скретча из-за визуальной всратости. А нет, оказался потомок. Функции первого класса - прикольно. Хороший совет. Скретч ему тоже докину, поскольку он проще и популярней: https://scratch.mit.edu
341 1025548
>>5546
Когда не было снапа я советовал новичкам скретч. Сейчас уже в принципе вопрос вкуса.
17498036525440.png31 Кб, 946x730
342 1025688
343 1025689
>>5537
Дохуя всего реализовал как для человека, который "не умеет программировать вообще". Наверное все-таки умеешь, потому что даже с нейронками нужно как-то все это править и объединять в рабочую систему. В общем, привыкай к мысли, что ты уже умеешь как-то программировать.
Я тоже не умею это делать так, как хотелось, но делаю, тоже с нейронками. Иногда тоже неделями не сплю, потому что не могу сделать какую-то простейшую, как кажется, хуйню. Просто просыпаюсь посреди ночи и мычу куда-то в пустоту от бессилия. Привыкай. Таков путь. Просто продолжай делать и через месяцы и годы у тебя будет получаться лучше.
344 1026061
А я делаю без нейронок.
Медленно, зато я полностью понимаю, что делает каждая строчка кода.
345 1026064
Осознаю, что таких сообщений было дохуя, но быть может кто то из знающих ответит. В копилке знаний база питона и месяц теста в годо,просто копипастил код смотря видео с ютуба.
Вопрос следующий, что делать? Хочу полностью понимать движок годот и осознанно писать код.
Нужно сперва уйти в глубокое программирование, будь это питон или другой язык, или можно вместе с годот? Если да, то есть ли материал? Или одного целого материала нет, все разбросано хаотично?
346 1026077
>>6064
Можно с годотом. Пройди официальные туториалы, для 2д и для 3д, дальше по накатанной базе разберешься.
347 1026080
>>5537

Почитал, ты прям огромный молодец, не стоит опускать руки, но не стоит сильно загоняться, не получилось сделай отскок в сторону и отдохни на мелким проектом (напиши клинкер) .

>как быстро научиться прогать хотя бы чисто для годота?



Ну вот смотри какой вариант, если смотреть на этот вопрос именно в разрезе годота, то ответ на него будет следующим:

делая проект разбивай его на мелкий винегрет по задачам и решая каждую задачу изучай именно тот кусочек который тебе нужен в данный момент ( кстати ИИ в этом плане может толкнуть мысль куда двигаться ) и пытаться сшить эти куски вместе ( опять же ИИ в зубы ) - да, это по началу не будет получаться ( я про сшить), но это ведь и есть задача!!!

Смотри идея в общем вот какая - ты решаешь задачу пробуешь подход - не сработало, второй - не сработало, третий - сработало и вот 1й и 2й и 3й раз это и будет твое знание которое ты получил.

Усидчивости тебе и удачи..

з.ы. на одном известном трекере если набрать godot можно найти уроки по godot в том числе и уроки по автогенерации уровней, там можно подсмотреть идей
348 1026084
>>6061
Делаю с нейронками быстрее обычного и понимаю что делает каждая строчка кода и моя и нейронки.
349 1026089
>>6077
Официальный туториал это который про простенькую игру сделать? Прошел, а что должен был понять дальше? Там прям минимум минимальный будто бы
350 1026090
>>6084
А я делаю без нейронок, медленнее тебя, зато я полностью понимаю, что делает каждая строчка кода.
351 1026095
>>6090
Если что, нейронка генерирует такой же код как ты, а не ассемблерные вставки, и запретить их понимать если ты понимаешь остальной код может разве что религия
352 1026099
>>6095
А ты что, ассемблер не понимаешь?
353 1026100
>>6089
Дальше просто делай игры и решай проблемы по мере их возникновения.
354 1026124
>>6099
На уровне написания читов в читэнжине, повышать не планирую
355 1026125
Почему некоторые плагины которые есть в библиотеке ассетов не ищутся во вкладке Assetlib?
356 1026126
>>6125
Не прописана твоя версия движка. Не прописана категория. Там честно говоря полная чехарда с ассетами. Поголовное большинство их запаковано вместе с прожект.годот и прочими служебными файлами, что делает неработоспособными без донастройки часть ассетов.

Например, скачиваешь контроллер персонажа, а он настроен на свои экшены, которые у него в прожект.годот прописаны, но этот файл игнорируется при установке ассета. Скачиваешь, ожидаешь, а он стоит на месте, и если ты не понимаешь что конкретно произошло - он у тебя без посторонней помощи нескоро взлетит.
357 1026128
Скоро ассет стор выкатят, наведут порядокю
358 1026131
>>6129 (Del)
Поздравляю, ты дал самый тупой совет что я видел за годы в гд.
359 1026139
>>6126
В консоли красными буквами написано какие кнопко-действия запрашивались и не нашлись.
360 1026143
>>6139
Ммм, нуу ладно, но анончик может оказаться ненаблюдательным, и не заметить сотни тыщи красных записей в консольке. Прям как я пару лет назад, да.
361 1026172
>>6064

>сперва уйти в глубокое программирование


Ты хочешь кодером работать или игру сделать?

Если кодером - тебе не в геймдев - здесь денег нет.

Если игру сделать: роль программиста в 99% игровых жанров переоценена; 99% кода игр - т.н. "glue code", связывание уже имеющихся компонентов в нужной геймдизайнеру форме. Чтобы сделать игру не нужно изобретать гениальные алгоритмы и архитектуру приложения, т.к. даже лучшие из лучших игр часто опираются на говнокод и анти-паттерны. Глубокое погружение в код только замедлит разработку игры, особенно в одиночку, если ты хочешь сделать что-то относительно популярное (т.е. не ASCII рыгалик).

Вместо программирования рекомендую изучать:
1. Геймдизайн: что, как и ЗАЧЕМ нужно твоей игре. Популярные игры созданы в большинстве случаев геймдизайнерами, а не кодерами/художниками.
2. Визуал: геймплей важнее всего, но без красивой обёртки большинство игроков играть не захочет.
3. UI/UX: игра не должна вызывать агрессию игрока.
4. Маркетинг: как заставить человека купить говно.
5. Звук, музыка, сценарий и т.д. Не всем это нужно.

Когда начнёшь делать игру, быстро поймёшь, что геймдизайн и графика сложнее всех алгоритмов. Ну, конечно, если ты хочешь свою игру, а не копируешь существующую 1-в-1, как делают ассетфлиперы (фу).
362 1026177
>>6084

>Делаю с нейронками быстрее обычного


>>6095

>нейронка генерирует такой же код как ты


Какая у тебя скорость печати на английском?
Здесь протестируй: https://monkeytype.com/

Вот у меня ≈350 знаков в минуту в среднем - конечно, медленно, по сравнению с другими людьми, но всё же достаточно для программирования. По моим личным наблюдениям я намного дольше думаю, перечитываю старые участки кода, разбираюсь с ошибками в коде, оцениваю задачу и т.п., чем набираю новый код. Т.е. навалить кучу текста - это вообще не проблема, т.к. реальная проблема - понять, как соединить эту кучу с совершенно другой кучей в нечто работоспособное и расширяемое в будущем, или найти ошибку в куче...

Так вот, LLM по моим впечатлениям способны легко навалить кучу кода, но им не хватает осмысленного планирования архитектуры и поиска ошибок в коде. Другими словами, LLM - как костыль для безруких, наподобие speech to text сервисов, чтоб вводить код собственным голосом, вот только всё равно нужно печатать, потому что LLM требует от тебя промпт, и качественный при этом, а не какой-то мусор (GIGO).

Короче, не вижу, как LLM может помочь мне в коде.
Может, я чего-то не понимаю? Как мне юзать LLM?
363 1026179
>>6177
Тред не про нейросети, тебе в /ai
364 1026182
>>6177

>Какая у тебя скорость печати на английском?


Я не кнопкодав ебаный а художник. Большая часть букв (80%+-) моей кодобазы сгенерирована интеллисенсом на основе ввода первых символов, а сейчас к ней еще добавился windsurf/copilot который позволяет накидывать строками бойлерплейт изредка угадывая правильное. Но ты правильно понял, превращение мысли/идеи в код зачастую занимает тонну времени, и вот от этого спасает ллм, и даже может подсказать что-то, до чего ты сам не дошёл. Накидал правильно задание, очертил применяемые алгоритмы и структуры данных - получил то что можно дорабатывать, той же нейронкой. Я недавно реализовывал достаточно сложную систему подьема сервисов, сделал всё на клоде, но близко к финалу код всё равно работал дерьмово. 30 минут на генерацию и 30 минут на отладку с фиксами (очень простыми, там нейронка просто неверно посчитала числа смещений) - и я получил косарь строк достаточно сложной системы, которую рожал бы сам весь рабочий день. Если сумеешь правильно подготовить задачу нейронке, дать нужные опорные точки - на неё можно будет сгружать приличные куски работы. Фейл описанный выше - стал следствием сложности задачи, обычно фейлов не бывает, если нужно накидать то что уже было накидано миллиард раз на гитхабе.
365 1026183
>>6179
Тред про разработку, обсуждаем применение кодерских ллм, привыкай что они теперь часть инструментария любого формошлепа и даже профессионального ассетфлиппера.
366 1026184
>>6183
В твоем набросе нет ничего специфичного для годота, поэтому получай свой репорт раз так напрашиваешься.
367 1026185
>>6177
456 в минуту. А для программирования можно не печатать вообще - визуальный скриптинг давно есть, тыкайте мышкой. Для ГОДОТА был плагин, хз в каком он сейчас состоянии.
пук.jpg889 Кб, 1920x1080
368 1026186
>>2039 (OP)
Playback can only happen when a node is inside the scene tree (45)
Loading time: 50 sec
Trollface

Ебал рот этого Годотино! Ты кто такой сука, чтобы вне сцены пытаться звук проиграть?
369 1026199
>>6179

>Тред не про нейросети


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

>>6185

>визуальный скриптинг


Он был официально в 3.x, и его выкинули из 4.x, ибо оказался бесполезен для большинства годотеров. Натыкивать код мышкой всё-таки хуже, чем печать: приходится прицеливаться в мелкие кнопки. Тут бы сенсорный экран пригодился... Но они не взлетели, большинство ПК-мониторов не имеют сенсора и операционные системы плохо с ними работают. Графический планшет не сильно удобнее мыши.

Алсо, учитывая бум ИИ/LLM, подозреваю, что весь визуальный скриптинг сойдёт на нет из-за того, что большинство задач решается нейронкой, а что не решается нейронкой, типичный юзер визуального скриптинга самостоятельно решить не сможет.

>>6182

>Я не кнопкодав


Ты же на форум печатаешь... Со временем печать становится более естественным делом, чем речь. Особенно когда ИРЛ не с кем разговаривать.

>позволяет накидывать строками бойлерплейт


Какой бойлерплейт тебе нужен в GDScript? Разрабы специально придумали свой язык, чтобы избежать избыточного бойлерплейта - всё делается быстро. Сомневаюсь, что кто-то кодит на Java в Godot...

>косарь строк достаточно сложной системы


Ты же понимаешь, что тебе эти 1000 строк читать и перечитывать ещё несколько лет, пока ИИ не станет полностью независимым и избавится от людей? Не перечитывая код легко пропустить глюк нейронки, а ответственность за её глюки нести будет кто? Ты. У нейронки пока что нет собственных прав, так что и наказывать её за ошибки в проекте невозможно; а с правами нейронки это будет уже не твоя игра, а её, и, соответственно, зарабатывать будешь уже не ты.

Вот в чём проблема. Нейронка может выдать 1000 статистически наиболее вероятных строчек, но не способна загрузить эти строчки прямо в твой мозг, чтобы ты мог с ними продолжать работу. Чтение и понимание кода занимает больше, чем генерация.

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

На видео сравнение... Свой код я набрал условно за минуту; код нейронки пришлось читать и править, и придётся дополнительно править чтобы привести к идентичному виду; как минимум нейронка забыла объявить типы переменных. Так что с нейронкой до идентичного результата явно больше минуты нужно. Вопрос, зачем было использовать нейронку? Чтобы вспомнить алгоритм? Чтобы выбрать имя функции? Особого преимущества от применения LLM не вижу.

Большая часть игрового кода - обращение к API: либо игрового движка, либо к твоему собственному API, о котором нейронка не знает (в контекст не уместится). Бойлерплейта как такого в игровом коде обычно нет. Поэтому обычного ООП автодополнения достаточно: большинство задач в коде сводится к "object.do(this)".

Алсо, для более-менее умной нейронки нужен либо актуальный игровой ПК с 48+ GB VRAM, либо плоти провайдеру, который все твои переписки читает и использует для чего-то как пожелает. В результате только 300кк наносеки могут себе это удовольствие позволить. Но стоит ли оно этого? Есть ли смысл?

Ну т.е. я понимаю, что на duckduckgo только самые примитивные нейронки, но для 70b нужно 48 гигов, поэтому на что-то лучшее надеяться бесполезно. А подписываться, сами понимаете, не хочется, иначе разрабатывал бы игру на платном игровом движке.

Да и прибыли с игр не получишь сегодня, так что это вдвойне невыгодно. От кодинга вручную хотя бы сам удовольствие получаешь, бесплатно по сути, а игру доделывать в принципе не обязательно/нет смысла.
369 1026199
>>6179

>Тред не про нейросети


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

>>6185

>визуальный скриптинг


Он был официально в 3.x, и его выкинули из 4.x, ибо оказался бесполезен для большинства годотеров. Натыкивать код мышкой всё-таки хуже, чем печать: приходится прицеливаться в мелкие кнопки. Тут бы сенсорный экран пригодился... Но они не взлетели, большинство ПК-мониторов не имеют сенсора и операционные системы плохо с ними работают. Графический планшет не сильно удобнее мыши.

Алсо, учитывая бум ИИ/LLM, подозреваю, что весь визуальный скриптинг сойдёт на нет из-за того, что большинство задач решается нейронкой, а что не решается нейронкой, типичный юзер визуального скриптинга самостоятельно решить не сможет.

>>6182

>Я не кнопкодав


Ты же на форум печатаешь... Со временем печать становится более естественным делом, чем речь. Особенно когда ИРЛ не с кем разговаривать.

>позволяет накидывать строками бойлерплейт


Какой бойлерплейт тебе нужен в GDScript? Разрабы специально придумали свой язык, чтобы избежать избыточного бойлерплейта - всё делается быстро. Сомневаюсь, что кто-то кодит на Java в Godot...

>косарь строк достаточно сложной системы


Ты же понимаешь, что тебе эти 1000 строк читать и перечитывать ещё несколько лет, пока ИИ не станет полностью независимым и избавится от людей? Не перечитывая код легко пропустить глюк нейронки, а ответственность за её глюки нести будет кто? Ты. У нейронки пока что нет собственных прав, так что и наказывать её за ошибки в проекте невозможно; а с правами нейронки это будет уже не твоя игра, а её, и, соответственно, зарабатывать будешь уже не ты.

Вот в чём проблема. Нейронка может выдать 1000 статистически наиболее вероятных строчек, но не способна загрузить эти строчки прямо в твой мозг, чтобы ты мог с ними продолжать работу. Чтение и понимание кода занимает больше, чем генерация.

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

На видео сравнение... Свой код я набрал условно за минуту; код нейронки пришлось читать и править, и придётся дополнительно править чтобы привести к идентичному виду; как минимум нейронка забыла объявить типы переменных. Так что с нейронкой до идентичного результата явно больше минуты нужно. Вопрос, зачем было использовать нейронку? Чтобы вспомнить алгоритм? Чтобы выбрать имя функции? Особого преимущества от применения LLM не вижу.

Большая часть игрового кода - обращение к API: либо игрового движка, либо к твоему собственному API, о котором нейронка не знает (в контекст не уместится). Бойлерплейта как такого в игровом коде обычно нет. Поэтому обычного ООП автодополнения достаточно: большинство задач в коде сводится к "object.do(this)".

Алсо, для более-менее умной нейронки нужен либо актуальный игровой ПК с 48+ GB VRAM, либо плоти провайдеру, который все твои переписки читает и использует для чего-то как пожелает. В результате только 300кк наносеки могут себе это удовольствие позволить. Но стоит ли оно этого? Есть ли смысл?

Ну т.е. я понимаю, что на duckduckgo только самые примитивные нейронки, но для 70b нужно 48 гигов, поэтому на что-то лучшее надеяться бесполезно. А подписываться, сами понимаете, не хочется, иначе разрабатывал бы игру на платном игровом движке.

Да и прибыли с игр не получишь сегодня, так что это вдвойне невыгодно. От кодинга вручную хотя бы сам удовольствие получаешь, бесплатно по сути, а игру доделывать в принципе не обязательно/нет смысла.
370 1026209
>>6199

>Какой бойлерплейт тебе нужен в GDScript?


GDScript не нужен, родной.(ну ладно, нужен но очень редко в специфичных случаях и только на 4 из-за отсутствия оверхеда гднатив). Так что без дотнета мне годот не уперся. Бойлерплейт простейший - расставить экспорты, сгенерировать их инит. Я использую осебенный тип конфигурации приложения на базе иерархии директорий с yml файликами, считывание строчек из этих файлов и получение обьектов (число, массив, строка, обьект) тоже часто угадывает windsurf, так как работает с моей кодобазой + конфигами и видит пути к файлам. Иногда он просто угадывает правильные геттеры сеттеры, иногда правильную иф/цикл/свич конструкцию. Всё это экономия времени.

>Ты же понимаешь, что тебе эти 1000 строк читать и перечитывать ещё несколько лет


Полчаса. Просто написал тест, прогулялся отладчиком по брейкам и нашёл кривой оффсет за полчаса, ну ладно, даже пускай за час если в сумме (обнаружение + тест). Это всё еще гораздо меньше чем если бы я всё это придумывал и накидывал вручную, нейронка превратила мою мысль в код, а мне осталось только разглядеть мою мысль в ее коде.

>Не перечитывая код легко пропустить глюк нейронки, а ответственность за её глюки нести будет кто? Ты.


Аллах мешает перечитывать? Я даже код с ассетов и библиотек полностью перечитываю на случай засовывания в него rce и прочих радостей. Намеренную уязвимость я тоже могу увидеть по ансейфу и всяким сомнительным дллимпортам, генерациям кода и прочим вещам. Код годота я не перечитывал конечно, тут уже приходится принимать на веру, но в остальном - я не доверяю никому, ни нейронкам, ни людям, нейронкам по одной причине, людям по другой. Обычно нейронки мне генерируют достаточно простой код (юи эффект/контрол, движение камеры, кастомные ресурсы с допобработкой ресурсов моих - привет ублюдские атласы, которые не делают листинг атласспрайтов, а предлагают выклацывать весь спрайтшит руками в отдельные файлы спрайтатласов, я нанейронил себе кастомный ресурс нарезающий как мне надо спрайтшиты в самого себя с возможностью делить нарезанное на наборы анимаций, если задать сколько каждая из анимаций и в какой последовательности берет из общего набора) - код понятный, ошибки маловероятны. Делать сложное нейронками - редкость, но даже тогда работает +- нормально. Даже тесты на нейронку может писать нейронка и по их результатам находить ошибку. Ну и из недавнего - я могу заставить нейронку обмазать стопватчами каждую строчку и измерить ее длительность, что конечно тупо при существовании визуалстудии и райдера, но увы на линуксе и 8 гигах переносного ноута приходится довольствоваться малым.

>Чтение и понимание кода занимает больше, чем генерация.


У меня понимание кода занимает намного меньше, потому что мне в этом мире уже все ясно. Я потратил час на сложную задачу только потому что это был многопоток, а понимание многопотока и понимание синхронного кода это 2 разных понимания и разный подход к отладке. Был бы он синхронный - время уменьшилось бы вчетверо.
370 1026209
>>6199

>Какой бойлерплейт тебе нужен в GDScript?


GDScript не нужен, родной.(ну ладно, нужен но очень редко в специфичных случаях и только на 4 из-за отсутствия оверхеда гднатив). Так что без дотнета мне годот не уперся. Бойлерплейт простейший - расставить экспорты, сгенерировать их инит. Я использую осебенный тип конфигурации приложения на базе иерархии директорий с yml файликами, считывание строчек из этих файлов и получение обьектов (число, массив, строка, обьект) тоже часто угадывает windsurf, так как работает с моей кодобазой + конфигами и видит пути к файлам. Иногда он просто угадывает правильные геттеры сеттеры, иногда правильную иф/цикл/свич конструкцию. Всё это экономия времени.

>Ты же понимаешь, что тебе эти 1000 строк читать и перечитывать ещё несколько лет


Полчаса. Просто написал тест, прогулялся отладчиком по брейкам и нашёл кривой оффсет за полчаса, ну ладно, даже пускай за час если в сумме (обнаружение + тест). Это всё еще гораздо меньше чем если бы я всё это придумывал и накидывал вручную, нейронка превратила мою мысль в код, а мне осталось только разглядеть мою мысль в ее коде.

>Не перечитывая код легко пропустить глюк нейронки, а ответственность за её глюки нести будет кто? Ты.


Аллах мешает перечитывать? Я даже код с ассетов и библиотек полностью перечитываю на случай засовывания в него rce и прочих радостей. Намеренную уязвимость я тоже могу увидеть по ансейфу и всяким сомнительным дллимпортам, генерациям кода и прочим вещам. Код годота я не перечитывал конечно, тут уже приходится принимать на веру, но в остальном - я не доверяю никому, ни нейронкам, ни людям, нейронкам по одной причине, людям по другой. Обычно нейронки мне генерируют достаточно простой код (юи эффект/контрол, движение камеры, кастомные ресурсы с допобработкой ресурсов моих - привет ублюдские атласы, которые не делают листинг атласспрайтов, а предлагают выклацывать весь спрайтшит руками в отдельные файлы спрайтатласов, я нанейронил себе кастомный ресурс нарезающий как мне надо спрайтшиты в самого себя с возможностью делить нарезанное на наборы анимаций, если задать сколько каждая из анимаций и в какой последовательности берет из общего набора) - код понятный, ошибки маловероятны. Делать сложное нейронками - редкость, но даже тогда работает +- нормально. Даже тесты на нейронку может писать нейронка и по их результатам находить ошибку. Ну и из недавнего - я могу заставить нейронку обмазать стопватчами каждую строчку и измерить ее длительность, что конечно тупо при существовании визуалстудии и райдера, но увы на линуксе и 8 гигах переносного ноута приходится довольствоваться малым.

>Чтение и понимание кода занимает больше, чем генерация.


У меня понимание кода занимает намного меньше, потому что мне в этом мире уже все ясно. Я потратил час на сложную задачу только потому что это был многопоток, а понимание многопотока и понимание синхронного кода это 2 разных понимания и разный подход к отладке. Был бы он синхронный - время уменьшилось бы вчетверо.
371 1026217
>>6080

> (напиши клинкер)


Клинкер!

Новая игра в жанре клинкер-панк. Вы немецкий гончар, принимаете заказы на изготовление клинкерной плитки, изразцов и кирпича. Постепенно прокачиваете мастерскую до клинкерного завода.
372 1026226
>>6217
Мой косяк! КЛИКЕР - естественно, спасибо за правку!
373 1026231
>>6226
Косяк-косяком, но идея про клинкерного магната - заебись. Уже зарабатываю свой первый миллион.
374 1026289
Нет плагина полезней CSG To Mesh
375 1026291
>>6289
А неплохая идея, сделать плагин CSG to Geometry Nodes.
376 1026295
>>6289

>CSG To Mesh


>плагина


Godot может любую сцену как gltf сохранить...

Не рекомендую юзать меши CSG "как есть", там очень косячная сетка даже с той новой библиотекой. Лучше импортировать в Blender, пофиксить и пересохранить. Впрочем, на статичной геометрии это не так заметно.

>>6291

>CSG to Geometry Nodes.


Геометри ноды поддерживают булевы операции? Я не разбираюсь в них, но раньше булевы операции Blender находились в модификаторах меша. CSG - это просто композиция из нескольких булевых операций.
377 1026298
>>6209

>GDScript не нужен


Сам себе палки в колёса вставляешь. Ничто не может заменить сценарный язык, тем более что он здесь из коробки, полностью функционален и очень удобен. А производительность сценариям обычно не нужна. Для всего остального можно написать свой модуль на C++.

>оверхед


>дотнет


Если ты байты/наносекунды считаешь, то нужен C++. Исходный код можно написать на другом языке (я тут погуглил, Cython вроде позволяет писать C-модули на оригинальном Python для классических приложений; кто-то где-то пилит транспиллер из GDScript в C).

Алсо, привыкай, Godot не стремится к выжиманию производительности до максимума, у него там внутре варианты сидят на вариантах и погоняют вариантами. Дотнет тебе сверху навешивает сборку мусора твоего любимого C#, который не умеет сам за собой убирать.

>Полчаса


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

Чем меньше у тебя кода, тем меньше поддерживать.

>предлагают выклацывать весь спрайтшит


AtlasTexture - это древний костыль, который давно собирались удалить. Для спрайтовых анимаций есть специальная нода, там вроде как особый редактор, позволяющий нарезать один спрайтшит сразу на все фреймы. Хотя только по прямоугольной сетке, т.е. не поддерживается оптимизация площади текстуры, но большинству 2D игр этого более чем достаточно.

>мне в этом мире уже все ясно


Ясно всё с тобой...
378 1026300
>>6298

>полностью функционален и очень удобен


Абстрактный класс добавили в дев 4.5, дженериков/темплейтов все еще нет, про 3 которая сейчас в отличии от 4 реально stable вообще молчу, и это без каких либо упоминаний всуе ансейфов и кодогенераторов, что уж говорить про инструменты разработки и переносимость, о мертвых как говорится либо хорошо либо ничего.

>Дотнет тебе сверху навешивает сборку мусора твоего любимого C#, который не умеет сам за собой убирать.


Кто захочет - тот сам за собой уберет, в отличии от той же джавы. У гдс так-то тоже сборка мусора есть, хоть и неполная, и это не говоря о том что это интерпретируемый кал говна. Правда дотнет помимо этого еще миллиард вещей навешивает до которых гдсу как до Марса раком, потому ебитесь с гдсом, а я либо буду юзать нормальные языки, либо не буду юзать движки где нет нормальных языков. С++ модули тоже себе оставь на сдачу, пердолиться с скунсом под веб у меня нет ни малейшего желания, уже попробовал - ну его впизду.

>Если это одноразовая вещь.


Тяну по меньшей мере 15% нейровыхлопа в кодовой базе уже год, проблем нет. Я все еще не понимаю в чем проблема прочитать код нейронки блять. Видимо реально Аллах глаза застилает, ну, чем вас таких больше - тем мне лучше.

>Страшно его потом каждые полгода-год переворачивать вверх дном под новые требования.


А что страшного? Я через год и не вспомню что писала нейронка, мне ваще похуй что переворачивать, я такие кодовые говна разбирал, что выхлоп нейронки по сравнению с ними - образец читабельности. Плохо нейронка перевернет - перегенерирую, если в итоге будет хуево генерить - выберу лучший вариант и пофикшу ручками.

>AtlasTexture - это древний костыль, который давно собирались удалить. Для спрайтовых анимаций есть специальная нода, там вроде как особый редактор, позволяющий нарезать один спрайтшит сразу на все фреймы


Это всё очень круто, но 4 все еще говно ебучее, которое ломает обратку раз в два минора и докучи сама по себе 1 баг чинит - 2 добавляет, с# веб отсутствует, что для меня важно. Жду выхода в лтс, там можно будет посмотреть на неё.
378 1026300
>>6298

>полностью функционален и очень удобен


Абстрактный класс добавили в дев 4.5, дженериков/темплейтов все еще нет, про 3 которая сейчас в отличии от 4 реально stable вообще молчу, и это без каких либо упоминаний всуе ансейфов и кодогенераторов, что уж говорить про инструменты разработки и переносимость, о мертвых как говорится либо хорошо либо ничего.

>Дотнет тебе сверху навешивает сборку мусора твоего любимого C#, который не умеет сам за собой убирать.


Кто захочет - тот сам за собой уберет, в отличии от той же джавы. У гдс так-то тоже сборка мусора есть, хоть и неполная, и это не говоря о том что это интерпретируемый кал говна. Правда дотнет помимо этого еще миллиард вещей навешивает до которых гдсу как до Марса раком, потому ебитесь с гдсом, а я либо буду юзать нормальные языки, либо не буду юзать движки где нет нормальных языков. С++ модули тоже себе оставь на сдачу, пердолиться с скунсом под веб у меня нет ни малейшего желания, уже попробовал - ну его впизду.

>Если это одноразовая вещь.


Тяну по меньшей мере 15% нейровыхлопа в кодовой базе уже год, проблем нет. Я все еще не понимаю в чем проблема прочитать код нейронки блять. Видимо реально Аллах глаза застилает, ну, чем вас таких больше - тем мне лучше.

>Страшно его потом каждые полгода-год переворачивать вверх дном под новые требования.


А что страшного? Я через год и не вспомню что писала нейронка, мне ваще похуй что переворачивать, я такие кодовые говна разбирал, что выхлоп нейронки по сравнению с ними - образец читабельности. Плохо нейронка перевернет - перегенерирую, если в итоге будет хуево генерить - выберу лучший вариант и пофикшу ручками.

>AtlasTexture - это древний костыль, который давно собирались удалить. Для спрайтовых анимаций есть специальная нода, там вроде как особый редактор, позволяющий нарезать один спрайтшит сразу на все фреймы


Это всё очень круто, но 4 все еще говно ебучее, которое ломает обратку раз в два минора и докучи сама по себе 1 баг чинит - 2 добавляет, с# веб отсутствует, что для меня важно. Жду выхода в лтс, там можно будет посмотреть на неё.
379 1026303
>>6300

>Абстрактный класс добавили в дев 4.5, дженериков/темплейтов все еще нет, про 3 которая сейчас в отличии от 4 реально stable вообще молчу, и это без каких либо упоминаний всуе ансейфов и кодогенераторов, что уж говорить про инструменты разработки и переносимость, о мертвых как говорится либо хорошо либо ничего.


Ирония в том, что все это не поможет тебе делать игры. Деды на ассемблерах шедевры писали в одно ебало без нихуя, а ты с полным набором костылей так и продолжишь яйца полировать и отмазки лепить.
мимо проходил
380 1026315
>>6303
Ирония в том что пока ты как и прочие деды без этих инструментов будете делать игру год, а потом еще и полировать полгода - я за это же время сделаю две игры и начну третью.

>а ты с полным набором костылей так и продолжишь яйца полировать и отмазки лепить.


хуйню назрел, помешай кофейную гущу лучше
381 1026318
>>6315

>я сделаю, вот увидити!


Верим.
382 1026332
>>5689
спасибо бро, вдохновил. да, возможно ты прав насчёт того что как-то да умею программировать. логически понимаю что и как должно работать (на базовом уровне все эти условия, ограничения и так далее) просто синтаксис и чёткие формулировки самого кода меня очень пугают. а ещё очень задизморалило что вот то что я описал я написал и сделал грубо говоря за неделю, и что если бы я не прикручивал условную генерацию, а создал бы несколько вручную созданных уровней, то игра была бы готова уже недели через две-три после начала (без звуков разве что).
image.png691 Кб, 1280x719
383 1026333
>>6080
спасибо, приятно было это читать :)
да, я думал оторваться от этого проекта написав какую нибудь простенькую игру, просто ради фана.
насчет того что пробовать разные подходы - это я хорошо успел выкусить когда делал инвентарь) разные подходы, разные системы, по итогу всё заработало так, что от превьюшки выбранного предмета пришлось отказаться))) но идею уловил, спасибо в любом случае:)
вот если интересно, как это дело выглядит на данном этапе.

p.s. я видел на рутрекере гайды по годоту, но увы - английский для меня пока проблема на слух переводить, уровень не тот (знаю что английский для людей связанных с нашей темой просто необходим, просто не доходили руки пока что)
384 1026337
>>5546
да друг, вероятнее всего посремся)) я если и смог бы работать с кем-то в команде, то как геймдизайнер и/или основной художник. работать над чьим то проектом я вряд-ли бы смог (если только не за большую денежную котлету) потому что везде буду пытаться вставить свои идеи.
385 1026343
Отчитываюсь, котаны. Я - тот долбоеб, который спрашивал за ВЕГЕТАЦИЮ и как её делать без потерь фпс. С горем пополам высрал 4х уровневую систему ЛОДов с билбордами на конце и замутил деревья на основе фотканых в лесу текстур. Но я так и не выяснил как оптимизировать ТРАВУ. Эксперименты показали, что в принципе без разбивания ТРАВЫ на чанки всё хуйня и фепесы откусывает, т.к. со снижением дальности прорисовки теряется красота кадра. Вопрос! Подкиньте идей.
Шпасибо.
sage 386 1026345
>>6343
Чем не подошли прошлые советы? Что из них реализовал?
387 1026351
>>6345
Я уже и забыл вроде, что там советовали, проверять не буду, но вроде основной совет был на квадмешах все собирать. Что я и делал. Но! Попробовал 3 способа: квадмеш биллборд - уперся в выворачивающиеся нормали. Х-образных 2 квадмеша - выворачивающиеся нормали. И просто 1 квадмеш с радомным поворотом - та же хуйня. И так я и не нашел способа эти нормали как-то флипать в нужный момент, или хуй знает чего ещё с ним делать. Я не умею в шейдеры, а нейросетки, когда дело касается годот шейдеров, резко начинают косить под дурачков.
Так что претензий к прошлым советам, как таковым, я не имею. Но интересно, что вы ещё расскажете полезного.
388 1026362
>>6343

>Эксперименты показали, что в принципе без разбивания ТРАВЫ на чанки всё хуйня и фепесы откусывает, т.к. со снижением дальности прорисовки теряется красота кадра. Вопрос! Подкиньте идей.


Размножение травинок через буфер кадра. Рендерится 10% травы, затем эта инфа многократно дублируется и смещается с небольшим рандомом. Но ты такое не осилишь. Я не осилю. Это надо быть С++ сеньором, чтобы такое смочь.

Еще тени обязательно скринспейсовые. Тоже через буфер кадра.

Просто не рви жопу и не пытайся в йоба ААА графон. Сделай хотя бы уровень скайрима с пс3 и успокойся на этом.
389 1026365
>>6362
О, интересная хуйня. Впервые слышу.

>Просто не рви жопу и не пытайся в йоба ААА графон.


Как оказалось, мне веселее всего вот так вот рвать жопу.
390 1026375
>>6362

> Это надо быть С++ сеньором, чтобы такое смочь.


Разве не GLSL-сеньором нужно быть? Разве не на шейдерах это всё делается?
391 1026377
>>6375

>Разве не GLSL-сеньором нужно быть? Разве не на шейдерах это всё делается?


А разве глсл не частный случай сиплюсов?
392 1026388
>>5537
я спишу это на техническую неисправность - мод тыкнул не туда и удалил мой пост с пометкой "шитпостинг" - вряд ли взрослый дееспособный человек, который обеспечивает себя сам, может посчитать это "шитпостингом" - вместо того чтобы почистить обсуждение нейрокала

теперь дублирую совет, другими словами:

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

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

всегда есть риск нарваться на неадекватов (вроде тех, что абу нанимает на модеров) - когда вместо цели СРУБИТЬ ДЕНЕГ, людям кажется важным вымещать свои личные обиды, хамить

>>6131
нет, смотри, вот действительно тупой совет: >>6080
393 1026394
Какую версию Godot выбрать под Android для рустора: 3.5 (Android 4.4+) или 4.3 (Android 5.0+)? Сколько примерно пользователей потеряю если буду на 4 версии кодить?
394 1026395
>>6333

>английский для меня пока проблема на слух переводить


Дам два совета. Хороший совет - учи английский, везде пригодится. Плохой совет - яндекс-браузер имеет встроенный нейропереводчик-озвучик видосов с ютуба, а на ютубе полно видеогайдов. На тех видео что я его проверял работал идеально.
395 1026397
>>6300

>я такие кодовые говна разбирал


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

>А разве глсл не частный случай сиплюсов?


Скорее уж частный случай Си.
>>6343
На ютубе Acerola рассказывал, как сделать шейдерную траву. Конкретно его реализация была вроде бы на юнити, но общие принципы движконезависимые, тем более он там конкретного кода не давал. Какой-то один видос не скину, у него там несколько по теме; и вообще весь канал в целом о шейдерах.
>>6333

>на рутрекере гайды по годоту


Хуясе извращение.
396 1026404
>>6388
Ты даешь хуевый совет, программирование это очень просто, особенно на гдскрипте, база осваивается за месяц, потом постепенно находятся материалы на все продивнутое. Если ты таким образом пытаешься прорекламироваться чтобы тебя наняли, то ты выбрал неверную тактику запугивания сложностью.
397 1026405
>>6394
Я бы брал 3.6. сижу на 3.7 мастере с парой с++ модулей
398 1026406
>>6405
А чего когда 3.7 релизнется? Чего там готовят?
399 1026407
>>6406
Ничего, в основном просто фиксят баги.
image.png189 Кб, 1267x700
400 1026408
>>6333
Да в прочем не за что, а твою боль про инвентарь я прочувствовал, пикрил моего проекта ( я в графике не бум бум ), твой смотрится дорого богато.
>>6388

>>6388

> нет, смотри, вот действительно тупой совет: >>6131


Расшифруй в чем же тупость совета ?
401 1026409
>>6388
прекрасно сам понимаю что для лучшего результата кодингом нужно заниматься не мне, но влазить в долги не буду - принцип. либо своими ручками, либо уже никак. как я и писал, пробовал начинать работу с "якобы" погромистами, по итогу блять улетел гораздо дальше по прогрессу сам, без знаний о программировании в целом.

совет годный в общем, но вряд-ли я им воспользуюсь к сожалению. буду хуярить только на своей тяге
image.png74 Кб, 1906x1066
402 1026411
>>6408
не думаю что он смотрится дорого богато потому что каждая вторая индюшка которая вырывается в стим (имхо) имеет либо такую же графику, либо ещё лучше и стилизованнее. но в любом случае спасибо)

мой инвентарь кста выглядит вот так, так и не смог сделать превьюху при перемещении предмета (я кажется уже писал про это лол) (кнопку use вывел для отладки, потом её заменит чисто клик правой мышкой)
403 1026413
>>6411
Что за шрифты?
404 1026414
>>6411
Да шикарно смотрится уже и это я так понимаю не финал, думаю со временем будет еще лучше - опыт он такой ахаха имеет накопительный эффект.
405 1026415
>>6362
Возможно тут описано нечто подобное
https://gamedev.ru/code/forum/?id=197755
Скринспейс трава используется в Farming Simulator и описана в книге GPU Pro 5
Здесь не читал, но чел вроде бы тоже говорит о траве как "пост процесс эффекте размазывания уже отрендеренной картинки" https://echoesofsomewhere.com/2023/02/19/very-experimental-grass-system/

Еще натыкался на технику из POE
https://gamedev.ru/code/forum/?id=243306
https://gamedev.ru/code/forum/?id=246320
Но она вроде подходит только для вида сверху. Хотя может можно скомбинировать используя для средней дальности.

На GDC есть какой то доклад как работает трава в Ghost of Tsushima: youtube.com/watch?v=Ibe1JBF5i5Y

Какие то индусы придумали рисовать траву нейросетью
Real-time View-Space Grass Generation for Video Games
Правда хз будет ли это работать в движении

Тут довольно подробная статья то что можно назвать "классический" рендер травы как обычно в годоте в аддонах, может что-то прояснит https://gpuopen.com/learn/mesh_shaders/mesh_shaders-procedural_grass_rendering/

а я все еще не нашел время водичку доделать
406 1026416
>>6406
Ну 3.6 долго не было, 2 года что ли, было много бэкпортированных вусных фич и своих фич только для тройки.
407 1026417
>>6413
авторские :) не хотелось в случае чего ебстись с лицензиями и прочим, поэтому просто вручную сделал в aseprite посматривая на те которые существуют, потом знакомому скинул, он там как-то из этого сделал именно шрифт.

а ваще пиксельные шрифты все друг на друга похожи, может если поищешь найдешь почти такой же по виду шрифт :)
408 1026419
>>6414
спасибо бро) графика вся уже нарисована, вряд-ли я ещё буду что-то дорисовывать или типа того. возможно в следующих проектах действительно где-то получше будет, но в этой конкретно игре уже вряд-ли :)
409 1026423
>>6417
Хуя ты монстр.
1750240907592.webp21 Кб, 480x261
410 1026434
>>6423
Не он, а его знакомый, который из пикч шревты собирает. Вот это тру магия. Я как-то полез в древний шрифт Academy букву ё приделать (потому что сделан был неёделами в доёйные времена). Полез и охуел от сложностей и подводных камней.
411 1026435
>>6434
я тоже охуел как это сложно, пытался сам, логически то это ничего сложного (для пиксельного шрифта по крайней мере) а оказалось что это пиздец какая залупа
412 1026437
>>6300
GDScript очень хорош для задач, ради которых он был создан. Все "удобства", которых тебе не хватает - это излишества. Это как наесться до отвала кашей и жаловаться, что ты не мог нажраться пироженных. Голодным точно не помрёшь, так на что жаловаться?

>У гдс так-то тоже сборка мусора есть


Как работает GDScript:
1. Счётчик ссылок уменьшился до 0? Освобождаем.
Как работает C#/.NET:
1. Что, опять насрал в памяти? Молодец. Жди.
2. 5 hours later...
3. Откуда 16 Гб мусора на 8 Гб физической памяти?
4. Таааак... Какие-то ссылки недоступны... Хммм...
5. (Приложение не приложение, остановить?)
6. Всё, вычистил весь мусор. Я спать. Ты срать?
Да уж, и правда "удобство" дотнета. Киллерфича.
Даже аффтар C# сказал, что это было ошибкой...

>в чем проблема прочитать код нейронки


Проблемы прочитать код от нейронки нет.
Проблемы написать код как у нейронки тоже нет.
Есть проблема, что нейронка не решает реальные проблемы: проверку кода на очевидные (для мясного мешка) проблемы, обновление кода и т.д. Хайп вокруг "агентов" не внушает доверия, потому что под капотом по-прежнему Transformer, а это тупиковая архитектура, далёкая до реальной работы мясного мозга. Нужен искусственный человек, а не бредогенератор.

>с# веб отсутствует, что для меня важно.


Делаешь браузерную 2D ММО в стиле 00-х? Имхо, браузерные платформы умирают - большинство пользователей давно перешли на мессенджеры и в приложения социальных сетей, и большинство "игр" представляют собой общение с LLM чатботом... Из площадок для веб-игр кто остался? Яндекс? Лол.

>>6315

>сделаю две игры и начну третью


Ассетфлипные клоны существующих? Охотно верю.
Реально оригинальные, достойные игры? Вряд ли.

Вопрос: зачем делать клоны существующих игр?
Заполнят ли эти игры пустоту в твоём сердце?
Или тебя заботит только пустота в кошельке?

Понимаешь, уже давно люди могут делать по 100 игр ежегодно в соло, без каких-либо нейросетей и даже скачивания ассетов/библиотек кода. Это реально. Но наделяет ли эта деятельность твою жизнь смыслом?
412 1026437
>>6300
GDScript очень хорош для задач, ради которых он был создан. Все "удобства", которых тебе не хватает - это излишества. Это как наесться до отвала кашей и жаловаться, что ты не мог нажраться пироженных. Голодным точно не помрёшь, так на что жаловаться?

>У гдс так-то тоже сборка мусора есть


Как работает GDScript:
1. Счётчик ссылок уменьшился до 0? Освобождаем.
Как работает C#/.NET:
1. Что, опять насрал в памяти? Молодец. Жди.
2. 5 hours later...
3. Откуда 16 Гб мусора на 8 Гб физической памяти?
4. Таааак... Какие-то ссылки недоступны... Хммм...
5. (Приложение не приложение, остановить?)
6. Всё, вычистил весь мусор. Я спать. Ты срать?
Да уж, и правда "удобство" дотнета. Киллерфича.
Даже аффтар C# сказал, что это было ошибкой...

>в чем проблема прочитать код нейронки


Проблемы прочитать код от нейронки нет.
Проблемы написать код как у нейронки тоже нет.
Есть проблема, что нейронка не решает реальные проблемы: проверку кода на очевидные (для мясного мешка) проблемы, обновление кода и т.д. Хайп вокруг "агентов" не внушает доверия, потому что под капотом по-прежнему Transformer, а это тупиковая архитектура, далёкая до реальной работы мясного мозга. Нужен искусственный человек, а не бредогенератор.

>с# веб отсутствует, что для меня важно.


Делаешь браузерную 2D ММО в стиле 00-х? Имхо, браузерные платформы умирают - большинство пользователей давно перешли на мессенджеры и в приложения социальных сетей, и большинство "игр" представляют собой общение с LLM чатботом... Из площадок для веб-игр кто остался? Яндекс? Лол.

>>6315

>сделаю две игры и начну третью


Ассетфлипные клоны существующих? Охотно верю.
Реально оригинальные, достойные игры? Вряд ли.

Вопрос: зачем делать клоны существующих игр?
Заполнят ли эти игры пустоту в твоём сердце?
Или тебя заботит только пустота в кошельке?

Понимаешь, уже давно люди могут делать по 100 игр ежегодно в соло, без каких-либо нейросетей и даже скачивания ассетов/библиотек кода. Это реально. Но наделяет ли эта деятельность твою жизнь смыслом?
413 1026440
>>6437
Я в целом с тобой согласен, кроме одного, подсчёт ссылок не всеми считается сборкой мусора. Потому что сборщика мусора как такового нет. Однако сборщик мусора как таковой есть. И он реализован прямо в базовом объекте, реализующем высвобождение путём подсчёта ссылок. Таким образом лично я не считаю объекты с подсчётом ссылок реализующими шаблон сборки мусора. Они не действуют по расписанию, они действуют событийно: прошло событие "уменьшить счётчик ссылок" экземпляр проверился на ноль ссылок. Есть ноль? Экземпляр высвобождает сам себя, сразу же.
414 1026444
>>6434
>>6435
Не, задизайнить качественный шрифт гораздо труднее чем его собрать. Дохуя глубокой теории, без которой читаемость шрифта будет на дне. А нарисовать хоть онлайн можно - https://www.pentacom.jp/pentacom/bitfontmaker2/ - половина пиксельных шрифтов сделана в этой штуке. Выбираешь буковку и рисуешь пиксели, потом указываешь спейсинги и скачиваешь ttf, все.
415 1026451
>>6444
Только зачем конвертировать пиксельный шрифт в ttf? Есть аддоны чтобы выводить сразу пиксельные (а в 3 есть нативная поддержка fnt формата BMFont, по докам написано что и в 4ке тоже, не проверял - он довольно примитивный, я аж 5,5 лет назад писал инструкцию и скриптик https://2ch.life/gd/arch/2021-06-06/res/635427.html#639619
416 1026454
>>6451
TTF универсальней, с ним проще работать в любом произвольном движке или не движке (например в aseprite). Если пройтись по итчу по пиксель шрифтам то почти все они ttf. Среди них и мой валяется, лол, заработал на нем аж 30 баксов.

Алсо, если нужен пиксельный с поддержкой кучи алфавитов, для локализаций, то посоветую вот этот как самый полный: https://poppyworks.itch.io/silver
417 1026455
>>6454
В aseprite пользоваться шрифтами адский гемор. Битмапный и тут будет проще. просто копипастишь нужные буковки и все (если по сетке выделение то пара кликов). Честно говоря задача куда то наглухо вписывать текст, а не выводить его - настолько редкая, что даже не помню когда понадобилось (кроме экрана заставки один раз). Это еще и вредно для локализации. А выводится он элементарно, это буквально десяток строк кода после того как закодил вывод спрайтов.
418 1026457
>>6437
На все твои тейки про мусор в шарпе я могу тебе посоветовать только читать документацию. Узнать например, что такое IDisposable, SafeHandle, (span + ref struct в 4 годоте), как с их помощью минимизировать работу gc, а не просто течь нахуй как этим любит заниматься гдс. Ты на шарпе можешь буквально косплеить с++ без макросов с соответственной производительностью, если есть желание, а если не хочешь косплеить - выше я написал куда смотреть. Мне похуй что там сказал автор с#, лучшего подхода к сборке мусора пока еще не придумали, либо сам чисти вилкой либо отдавай на откуп gc. Лучше бы про LOH набросил, куда более благодатная тема, правда не в контексте gds vs c#, первый слишком хуйня даже в этом случае.

>Все "удобства", которых тебе не хватает - это излишества.


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

>Есть проблема, что нейронка не решает реальные проблемы: проверку кода на очевидные (для мясного мешка) проблемы, обновление кода и т.д.


Бляяя. Вы меня шоколадным глазом читаете? Ну вот просто покажи где я сказал что нужно каждый пук нейронки немедленно коммитить в кодобазу без контроля. Что один пришел наманяфантазировал, что второй.

>Делаешь браузерную 2D ММО в стиле 00-х?


2д 3/4 вампайрсурвайвер, хочу прощупать пределы годота в вебе.

>Ассетфлипные клоны существующих? Охотно верю.


Реально оригинальные, достойные игры? Вряд ли.
Это такая шутка? Найди реально оригинальную игру в 2025. Любая игра вышедшая уже существовала в том или ином виде и пережила сотни клонов, у некоторых и вовсе клонов сотни тысяч, но ГПшных серунов это не останавливает и как показывает практика - не напрастно. Впрочем я этим занят пока не из-за денег, просто хобби, но надеюсь выйдет в итоге что-то интересное.

>Но наделяет ли эта деятельность твою жизнь смыслом?


Нихуя ты платон блять. Еще поди людей осуждаешь и ярлыки развешиваешь направо и налево.
418 1026457
>>6437
На все твои тейки про мусор в шарпе я могу тебе посоветовать только читать документацию. Узнать например, что такое IDisposable, SafeHandle, (span + ref struct в 4 годоте), как с их помощью минимизировать работу gc, а не просто течь нахуй как этим любит заниматься гдс. Ты на шарпе можешь буквально косплеить с++ без макросов с соответственной производительностью, если есть желание, а если не хочешь косплеить - выше я написал куда смотреть. Мне похуй что там сказал автор с#, лучшего подхода к сборке мусора пока еще не придумали, либо сам чисти вилкой либо отдавай на откуп gc. Лучше бы про LOH набросил, куда более благодатная тема, правда не в контексте gds vs c#, первый слишком хуйня даже в этом случае.

>Все "удобства", которых тебе не хватает - это излишества.


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

>Есть проблема, что нейронка не решает реальные проблемы: проверку кода на очевидные (для мясного мешка) проблемы, обновление кода и т.д.


Бляяя. Вы меня шоколадным глазом читаете? Ну вот просто покажи где я сказал что нужно каждый пук нейронки немедленно коммитить в кодобазу без контроля. Что один пришел наманяфантазировал, что второй.

>Делаешь браузерную 2D ММО в стиле 00-х?


2д 3/4 вампайрсурвайвер, хочу прощупать пределы годота в вебе.

>Ассетфлипные клоны существующих? Охотно верю.


Реально оригинальные, достойные игры? Вряд ли.
Это такая шутка? Найди реально оригинальную игру в 2025. Любая игра вышедшая уже существовала в том или ином виде и пережила сотни клонов, у некоторых и вовсе клонов сотни тысяч, но ГПшных серунов это не останавливает и как показывает практика - не напрастно. Впрочем я этим занят пока не из-за денег, просто хобби, но надеюсь выйдет в итоге что-то интересное.

>Но наделяет ли эта деятельность твою жизнь смыслом?


Нихуя ты платон блять. Еще поди людей осуждаешь и ярлыки развешиваешь направо и налево.
419 1026458
>>6457
Не кормим.
420 1026459
>>6343

>без разбивания ТРАВЫ на чанки


А в чём проблема делить траву на чанки с LODами? Честно, сам я нормальную траву пока не делал, но в популярных ААА трава делится на заметные чанки...

Как я это вижу:
- 1 чанк травы == 1 мультимеш;
- чем дальше - тем меньше инстансов;
- анимация только у чанков вокруг игрока;
- самые дальние деградируют в ландшафт;
- цвет ландшафта совпадает с цветом травы.

Можно всё автоматизировать, но если у тебя карты статичные, то и вручную расставить не проблема. И главное не париться слишком сильно - игрок всё это проигнорирует скорее всего. Сделай тян с большими бидонами и булками - всем будет наплевать на траву.

Про что у тебя игра хоть? Про собирательство трав?
421 1026461
>>6457

> дублировать код потому что методов расширения нет


Жиза! Хотет.
422 1026467
>>6457

>посоветовать только читать документацию


Зачем что-то читать, когда можно копипастить? Как вайбкодер ты должен осознавать, что чтение - это уже прошлый век, нейронки читают всё вместо тебя. Как пример, сейчас все книги загоняют в нейронку, чтоб перечитывать труды древних хомо сапиенсов в более понятном формате твитов. Не отставай от прогресса.

>минимизировать работу gc


>буквально косплеить с++ без макросов


Зачем извращаться с затыканием дырок GC и всё без макросов, если можно с макросами и не извращаться?

>лучшего подхода к сборке мусора пока еще не придумали, либо сам чисти вилкой


А в чём проблема убирать мусор за собой? Пример:

>function ... // объявляем функцию/метод


>var thing: Thing; // заявляем, что нужно для работы


>begin // заходим в блок кода как к себе домой


>_ thing := Thing.create; // делаем новый объект


>_ result := thing.work; // используем объект


>_ thing.free; // избавляемся от нашего объекта


>end; // выходим из блока: ничего лишнего нет


GC избавляет тебя от ОДНОЙ строчки. Зачем? Забываешь вызвать ОДИН метод у объекта?

>Мой игровой фреймворк


Понимаю, о чём ты, сам что-то такое планировал, но в результате понял, что лучше Godot+GDScript ничего не предвидится в ближайшем будущем геймдева. Когда появится что-то новое, твой фреймворк скорее всего устареет точно так же, как и все игровые движки...

>вампайрсурвайвер


А ты не опоздал? Хайп, вроде, прошёл уже. Базовые механики расползлись по многим жанрам игр, но оригинальная 2D игра вряд ли кого-то привлекает. Аналогичная мутация произошла с рогаликами: все элементы рогалика людям нравятся и очень широко применяются, но классические рогалики не нужны.

>хочу прощупать пределы годота в вебе


Предел годота в вебе примерно равен пределу всех остальных мейнстримных движков: формально ты приложение сделал, но юзать его - мазохизм... Веб разработчик хуже ассетфлипера стимовского, имхо; ассетфлип ты хотя бы в нативном exe скачиваешь, а браузерная подделка едва работает, крашит браузер целиком и сдохнет вместе с хостером/интернетом.

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

>Любая игра вышедшая уже существовала


Пример тупого клонирования 1-в-1:
https://store.steampowered.com/app/2625420/
https://store.steampowered.com/app/1017180/
Вкратце, разработчик оригинала внезапно помер, но клонированная версия тупо 1-в-1 слизывает, тупо 0 осмысленных нововведений, как будто это какая-то автоматическая система. Что-то типа GTA Trilogy получается, только без разрешения автора.

По-твоему, это нормально? Это имеет смысл? Может, намного лучше было бы иметь опенсурсную GPL игру и поддерживать её силами комьюнити, а не высирать потешные ассетфлипы один за другим, которые потом забрасываются из-за нерентабельности или ещё чего?

Самое смешное, что разрабы клона хейтят моды. Лол. Наверняка планируют сделать нарезку тупых DLC по стоимости полной игры за 3.5 новых текстурки.

Вот из-за всего этого геймдев и умирает...

>Впрочем я этим занят пока не из-за денег, просто хобби, но надеюсь выйдет в итоге что-то интересное.


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

Ладно. Я сейчас в депрессии, не бери в голову...
422 1026467
>>6457

>посоветовать только читать документацию


Зачем что-то читать, когда можно копипастить? Как вайбкодер ты должен осознавать, что чтение - это уже прошлый век, нейронки читают всё вместо тебя. Как пример, сейчас все книги загоняют в нейронку, чтоб перечитывать труды древних хомо сапиенсов в более понятном формате твитов. Не отставай от прогресса.

>минимизировать работу gc


>буквально косплеить с++ без макросов


Зачем извращаться с затыканием дырок GC и всё без макросов, если можно с макросами и не извращаться?

>лучшего подхода к сборке мусора пока еще не придумали, либо сам чисти вилкой


А в чём проблема убирать мусор за собой? Пример:

>function ... // объявляем функцию/метод


>var thing: Thing; // заявляем, что нужно для работы


>begin // заходим в блок кода как к себе домой


>_ thing := Thing.create; // делаем новый объект


>_ result := thing.work; // используем объект


>_ thing.free; // избавляемся от нашего объекта


>end; // выходим из блока: ничего лишнего нет


GC избавляет тебя от ОДНОЙ строчки. Зачем? Забываешь вызвать ОДИН метод у объекта?

>Мой игровой фреймворк


Понимаю, о чём ты, сам что-то такое планировал, но в результате понял, что лучше Godot+GDScript ничего не предвидится в ближайшем будущем геймдева. Когда появится что-то новое, твой фреймворк скорее всего устареет точно так же, как и все игровые движки...

>вампайрсурвайвер


А ты не опоздал? Хайп, вроде, прошёл уже. Базовые механики расползлись по многим жанрам игр, но оригинальная 2D игра вряд ли кого-то привлекает. Аналогичная мутация произошла с рогаликами: все элементы рогалика людям нравятся и очень широко применяются, но классические рогалики не нужны.

>хочу прощупать пределы годота в вебе


Предел годота в вебе примерно равен пределу всех остальных мейнстримных движков: формально ты приложение сделал, но юзать его - мазохизм... Веб разработчик хуже ассетфлипера стимовского, имхо; ассетфлип ты хотя бы в нативном exe скачиваешь, а браузерная подделка едва работает, крашит браузер целиком и сдохнет вместе с хостером/интернетом.

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

>Любая игра вышедшая уже существовала


Пример тупого клонирования 1-в-1:
https://store.steampowered.com/app/2625420/
https://store.steampowered.com/app/1017180/
Вкратце, разработчик оригинала внезапно помер, но клонированная версия тупо 1-в-1 слизывает, тупо 0 осмысленных нововведений, как будто это какая-то автоматическая система. Что-то типа GTA Trilogy получается, только без разрешения автора.

По-твоему, это нормально? Это имеет смысл? Может, намного лучше было бы иметь опенсурсную GPL игру и поддерживать её силами комьюнити, а не высирать потешные ассетфлипы один за другим, которые потом забрасываются из-за нерентабельности или ещё чего?

Самое смешное, что разрабы клона хейтят моды. Лол. Наверняка планируют сделать нарезку тупых DLC по стоимости полной игры за 3.5 новых текстурки.

Вот из-за всего этого геймдев и умирает...

>Впрочем я этим занят пока не из-за денег, просто хобби, но надеюсь выйдет в итоге что-то интересное.


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

Ладно. Я сейчас в депрессии, не бери в голову...
423 1026471
>>6467
Я бы подумал что это нейронка отвечает, но даже нейронки не такие тупые.

>Зачем извращаться с затыканием дырок GC и всё без макросов, если можно с макросами и не извращаться?


Шиз, ты где макросы в гдс рассмотрел?

>А в чём проблема убирать мусор за собой?


Шиз х2, я тебе показал как за собой убирать в шарпе

>Когда появится что-то новое, твой фреймворк скорее всего устареет точно так же, как и все игровые движки...


За три года все никак не устареет, большое спасибо паджитам - и дальше будет только моложе.

>ты не опоздал? Хайп, вроде, прошёл уже.


Шиз х3, я написал что это хобби блять, не для денег. Я делаю игры не для денег (пока).

>Предел годота в вебе примерно равен пределу...


Шиз х4, ты нахуя это высрал? Примерности ебаные себе оставь, и пиши по делу. Я в браузере запускал годот бенчи, они там охуенно работали на машинах уровня печатная машинка. Есть вебфишинг в стиме, 3д веб игра на годоте, еще и онлайн.

Остальной понос даже комментировать не буду, попроси врача поменять таблетки, с текущими беда.
424 1026472
Не кормите
1750258463664.png51 Кб, 981x635
425 1026477
>>6444
Спасибо, я залип.
426 1026494
>>6477
Можно сделать двачерский шрифт, где каждая буква - хуй.
427 1026497
Как лучше реализовать контекстную музыку? Один большой уровень с разными местностями в нем, приходишь на пляж - слушаешь одно, приходишь в лес - слушаешь другое. Сходу появилась мысль сделать area3d под каждую местность, при входе в area триггерить нужную музыку, фейдить предыдущую, но придется area3d делать большими - неизвестно с какой стороны юзер войдет в условный лес, придется покрывать весь.
428 1026498
>>6497
И что тебя смущает в большой Area? Тут налог за площадь не надо платить.
Если хочется обоптимизироваться, можешь считать координаты, чанки, или рейкасты в материал по которому ходишь.
429 1026499
>>6498
Благословляешь меня на большой Area?
430 1026511
>>6494
Анонимус разрешает. Делай.
Screenshot20250619090712.jpg355 Кб, 1080x1500
431 1026523
>>5537

>рогалик про подземелья, именно реалтайм, не пошаговый


Это не рогалик, а скорее всего hack n slash / action rpg. Рогалик по определению одновременно-пошаговый и клеточный.
image.png297 Кб, 1130x864
432 1026524
>>6523
Устаревшее определение.
433 1026526
https://godotengine.org/article/dev-snapshot-godot-4-5-beta-1/

Хуле спите, вам там биг фичерс везут, 4.5 уже в бете.
434 1026527
играюсь с тенями чтобы сделать так называемую АТМОСФЕРУ
photo2025-06-1912-06-52.jpg23 Кб, 626x216
435 1026528
используя UPX, я смог сжать .exe-шник с 70мб до 17мб

забавно, но если в .exe-шник будет встроенный PCK, то после сжатия через упомянутый upx, программа не запустится, ибо PCK просто удалится

что думает анон об этом? как ещё уменьшить размер билда?
436 1026529
>>6528
Пересобрать движок или экспорт темплейты только с нужными тебе фичами.
437 1026530
>>6528
На UPX вроде антивири возбуждаются.
438 1026531
>>6524

>from sources across the web


В основном это порриджи раздают тэги "рогалик" в стиме, потому что слово модное, как десять лет назад "инди". По факту уже в первой игре в твоём списке от рогалика ничего нет: нет пермасмерти, нет пошаговости, нет вида сверху, нет привязки к сетке - обычный платформер с прогрессом. Почему он рогалик?
1613580390949.png146 Кб, 1141x675
439 1026535
>>6524
Ты буквально обосрался, приведя в качестве пруфа нейросетевой высер гугла. Напомню что он приписывает Clair Obscur к инди, при этом этот ответ находится прямо между выдачами где написано что это не инди.
440 1026536
>>6531
>>6535
Деды цыц, вы тоже устарели.
441 1026538
>>6527

>АТМОСФЕРУ


Типичный день где-то в Питере.
442 1026540
>>6536
Не, я серьёзно спрашиваю, что в Dead Cells от рогалика?
443 1026541
>>6538
я этого и хочу достичь... правда мало что получается
image.png36 Кб, 1024x600
444 1026545
>>6541
Да норм. Я у себя для похожих областей еще большой меш накидываю с proximity fade, выглядит почти как объемный туман. Потом моросящий дождик через партикли, пару ассетов готовых и вот вам иммерсив сим/хоррор.
445 1026548
>>6540
Одни и те же карты и одни и те же враги с побочной прогрессией. И что значит нет пермасмерти? При смерти теряется весь лут кроме скиллов и апгрейдов, это вполне себе пермасмерть. Если вообще не будет побочной прокачки как в классическом рогалике - удержание будет такое же классическое, то есть никакое, игрок убьет главного босса и просто дропнет игру. При чем в случае дедцеллса он это может сделать еще до исхода времени рефанда.
446 1026549
>>2039 (OP)

>playback can only happen when a node is inside the scene tree


Где я проебался? Ну заебало уже в щи
изображение.png255 Кб, 872x786
447 1026551
Начать читать пикрил или оф. доки типа "Твоей первой 2д игры"?
448 1026553
>>6551
А есть ссылка где пикрил стянуть можно?
449 1026554
>>6553
в шапке ссылка на все, в конец листаешь
450 1026555
>>6554
Хуя, человек который шапки читает.
451 1026557
>>6549
Если ты создаёшь ноды в коде сделай простейшую утилиту-функцию, которая пихает ноду в дерево и конвеерно возвращает её же. Чтобы работали внутридеревянные свойства.

> func treefy(n: Node):


> > get_tree().root.add_child.call_deferred(n)


> > return n



И далее уже где-то в своём коде:

> var my_obj : MyClass = treefy(MyClass.new(a, b, c))

452 1026558
>>6548

>Одни и те же карты и одни и те же враги с побочной прогрессией


Это что характеристика рогалика теперь? Path of exile и Zelda тоже теперь рогалики получается. В первом даже пермасмерть есть.
А пермасмерти в дед селлз нет, ты там литерали возвращаешься на старт с золотом и сохраняешь весь лут в конце каждого уровня.
image.png67 Кб, 1552x1013
453 1026561
>>6554
в шапке ссылка нерабочая на книгу
454 1026562
>>6557
Я создал трек в одной сцене, и копировал-вставлял в каждую сцену один и тот же трек audiostreamplayer с autoplay, и мне казалось что проблемка в этом, но походу нихуя...
456 1026565
>>6561
Научись пользоваться компьютером. У тебя вечно что-то то не скачивается то не открывается.
17442025881890.jpg48 Кб, 300x300
457 1026566
годоцкеры, а есть ли способ прикрепить pck после экспорта, если билд без прикреплённого pck? если я уже прикреплю и сделаю экспорт, то после сжатия от upx игра не запускается
458 1026567
>>6566
Наверняка есть, это ж опенсорс. Найти место где загружается файл и загрузить сам exe но со смещением.
459 1026569
Подумал-подумал и решил сменить годот на фреймворк SDL. Да, кодить придётся много, но зато полный контроль под рукой.
460 1026578
>>6569

>кодить придётся много


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

>полный контроль под рукой


Godot такой же опенсурс, как и SDL.

Я имел опыт с обоими (SDL2, G3.X/G4.X), так что:

SDL - если нужна тонкая прослойка для общения с мультимедиа девайсами кроссплатформенно. Играм подходит только если это что-то очень простое, а для сложных потребуются многие другие библиотеки.

Godot - если нужен швейцарский нож на все случаи разработки, но при этом относительно компактный и относительно быстрый. Лучше всего подходит для прототипирования игр средней сложности, т.к. для простейших игр - оверкилл, а для сложнейших мало встроенных решений/наёмных специалистов.

Ту же визуальную новеллу на Godot имеет смысл разрабатывать только если хочется сделать её более необычной, чем 99% историй с картинками на RenPy.
461 1026581
>>6566

>после сжатия от upx


Зачем сжимать exe? На ПК никого уже не волнует вес приложений, у всех >1 ТБ под игрушки даже на старых ноутбуках. Тем более что сжатие UPX детектится (false positive) некоторыми популярными антивирусами; как минимум в прошлом это был способ прятать вирусы.

>прикрепить pck


Зачем тебе это? Встраивание pck в exe не даёт никаких преимуществ, всё извлекается при желании. Как мне кажется, встраивание pck усложняет обновление игры, особенно если хочешь реализовать автообновление (маленький pck загружает несколько из интернета).
462 1026583
>>6578
Благодарю за отзыв. В целом я изначально прицелился именно на годот, но мне кажется я пососу с производительностью, поскольку все подобные моей игры сделанные на движке сосут, а на фреймворках не сосут. Примерно так.

Может я попробую SDL и приползу к вам обратно.
463 1026585
>>6566
Напомню ещё: как минимум на Windows все exe имеют лимит в 4 ГБ и обычно загружаются в RAM целиком:
https://superuser.com/questions/667593/

Думаешь, твоя 2D игра никогда не будет весить больше четырёх гигабайт? Качественные текстуры занимают довольно много, а в 2D анимация часто покадровая. Я видел много 2D игр весом больше десяти гигабайт.

Думаешь, тебе никогда не потребуется загружать твои ресурсы частями? Ресурсы в pck могут быть сжаты и разворачиваются в полноценные объекты в памяти, поэтому загружать их все нерационально. Если игра в сжатом виде весит 4 ГБ, в RAM может занять >8 ГБ. Т.е. даже для 2D игрушки может потребоваться стриминг ресурсов, если ты хочешь оптимизировать по памяти.

Так что упаковка pck в exe в принципе малополезна.
464 1026591
>>6583

>поскольку все подобные моей игры сделанные на движке сосут, а на фреймворках не сосут.


Во-первых, что за игра? Жанр, графика?

Во-вторых, ты не учитываешь навыки разработчика.
https://en.wikipedia.org/wiki/Survivorship_bias
Чем больше попыток, тем чаще успех, но чтобы просто попытаться нужно сначала выкатиться в инструмент.

На готовом игровом движке намного проще делать собственные игры, т.е. порог входа ощутимо ниже -> большинство новичков начинают с этого и поэтому достаточно много примеров неудачных попыток.

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

Т.е. мы видим много кривых поделок на движках от абсолютных новичков, но не видим миллионы папок с незавершёнными проектами без игрового движка.

Да, я пытался сделать свой движок/игру на SDL...
465 1026596
>>6583
Также ты можешь провести быстрый стресс-тест, для примера, наспамить на карту несколько сотен юнитов. Естественно, самый простой метод, которому тебя в туториалах учат, будет самым медленным: тут нужны оптимизации. Но на фреймворке у тебя нет простого метода спавна юнита, ты сам делаешь оптимизации с самого начала... Или не делаешь и всё тормозит.

Или другой пример: воксели. Если ты просто будешь размещать MeshInstance + StaticBody + CollisionShape, естественно всё будет тормозить после всего лишь нескольких тысяч кубиков. Воксельные игры всегда требуют тонких оптимизаций рендера и физики. Эти оптимизации можно сделать и в рамках Godot (C++), однако, без движка ты даже один кубик будешь долго выводить, т.к. нужно написать все классы с нуля...

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

Лично мне Godot помогал достаточно, т.е. я сейчас не вижу смысла отказываться от его удобств ради некой потенциальной оптимизации... Кстати, оптимизации - всегда жертва чем-то в пользу чего-то: если ты что-то сжимаешь, ты либо теряешь качество, либо скорость; ускорение теряет либо место в памяти, либо точность; низкоуровневый код снижает читаемость; статичная типизация уменьшает пластичность кода и т.д. Проще говоря, тормозящая игра лучше несуществующей.
466 1026599
>>6588 (Del)
Да в чем твоя проблема? Баг не можешь найти?

>>6591

>Во-первых, что за игра? Жанр, графика?


>>6596

>Или другой пример: воксели. Если ты просто будешь размещать MeshInstance + StaticBody + CollisionShape, естественно всё будет тормозить после всего лишь нескольких тысяч кубиков. Воксельные игры всегда требуют тонких оптимизаций рендера и физики. Эти оптимизации можно сделать и в рамках Godot (C++), однако, без движка ты даже один кубик будешь долго выводить, т.к. нужно написать все классы с нуля...


Хех, почти. Не кубы, а квадраты как в террарии. И по прикидкам пара сотен или около тысячи юнитов с пасфайдингом, коллизиями и полной автономией как в дварф фортрессе. Думаю на годоте тоже можно, но это надо ЗНАТЬ все нюансы, а туториалы в основном такое не показывают, это надо знать что искать. И у меня такое ощущение, что в конечном итоге все равно придётся писать на C++ даже в годоте https://youtu.be/hZvCCvo3AHc
467 1026601
>>6497

>придется area3d делать большими


Большая Area снизит производительность только если взаимодействует со множеством других физических сущностей. Чтобы Area игнорировала всё лишнее (т.е. ландшафт, мобов, транспорт и т.д.), достаточно будет настроить ей и игроку слои и/или маски, например:

>Игрок - слой: player; маска: ... (тут не важно)


>Area музыки, слой: нет (не нужна); маска: player.


Тогда эта Area будет следить только за игроком.

Вообще рекомендую сразу пларировать и настраивать соответствующие слои и маски, т.к. это может сильно повлиять на производительность в будущем. Пример: если тебе нужен подвижный мусор на карте, он должен контактировать с полом, но не с игроком, поэтому для игрока можно снять галочку с маски, соответствующей физическому слою мусора на карте, а с мусора - игрока.

Также замечу, что события входа/выхода в Area3D не всегда срабатывают когда ты их ожидаешь, там есть некоторые нюансы. Не помню точно, какие, но у меня получалось попасть внутрь Area3D без срабатывания. Возможно, это был баг и его уже исправили...
468 1026602
>>6599

> надо ЗНАТЬ все нюансы


Могу рассказать тебе один нюанс, который узнал недавно. Так и соберём их все.

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

Кто узнал описание, тот молодец, а кто не узнал - те узнают.
469 1026603
>>6602
Че это, инстансинг?
470 1026605
>>6602
Потом и про VAT узнаешь: >>5126
Но Vertex Animation Texture это запеченные анимации с некоторыми визуальными артефактами; следующий логичный шаг сделать плагин по типу UE Turbo Sequencer, чтобы прямо цепочки костей в шейдере считались и IK поддерживалось. Но такое пока никто не брался делать.
471 1026606
>>6601

>Не помню точно, какие, но у меня получалось попасть внутрь Area3D без срабатывания. Возможно, это был баг и его уже исправили...


Тоже бывало. Вроде из-за "телепорта", когда тупо меняешь объекту позицию, и новая позиция оказывается полностью внутри area3d.
472 1026609
>>6605
Узнал. Спасибо.
473 1026615
>>6602

>огромная толпа


>мультимеш


Имеет смысл только для стратегий с видом сверху.

>за один дравколл


На Vulkan у тебя в любом случае один дроуколл если использовать один материал для всех персонажей... Наверное... По крайней мере, для статики это так. С анимациями, как я понимаю, нужны LOD самих этих анимаций, т.е. уменьшать частоту кадров вдалеке.

Фатальный недостаток мультимеша: он рендерит всё одновременно с одинаковой плотностью сетки, т.е. в определённых ситуациях будет нагружать больше, чем банальный спам обычных мешей с LODами.

>>6605

>прямо цепочки костей в шейдере считались и IK


И как, сильно помогает такой шейдер на GTX 750 Ti (встроенной графике, мобильной графике и т.д.)? Наоптимизируетесь так, что игра не запустится... Отключаешь IK для своей толпы зомби и всё. Кому интересно наблюдать, как толпа зомби аккуратно выставляет свои ножки на камушки на дороге?.. Оптимизация должна быть как JPEG - терять то, что конечному потребителю как правило не нужно, а не перекладывать задачу на ещё более слабое железо.

>>6599
Что-то типа Oxygen Not Included? Она на Unity. Карта, насколько я понимаю, меньше, чем в Terraria, и число персонажей, кажется, ограничено парой десятков. Естественно, много чего придётся делать на C++/C# (симуляция жидкостей и газов в первую очередь; у персонажей достаточно примитивное поведение).

>квадраты как в террарии


Это несложно, TileMap достаточно оптимизирован. В худшем случае просто делаешь чанки из отдельных тайлмапов и подгружаешь/выгружаешь как сцены динамически (по мере движения камеры/игрока).

Вроде в одном из недавних обновлений 4.x они ещё больше оптимизировали физику TileMap. Также могу посоветовать определять "коллизии" не физикой, а проверкой нахождения точки на сетке TileMap.

Один из "секретов" Террарии в том, что 99% карты не обрабатывается никак. Каждый тик игра выбирает несколько клеточек в случайных позициях карты и выполняет их обновление: деревья растут, трава расползается и т.д. Обновлять всё сразу не выйдет. Подозреваю, что мир ONI ограничен по этой причине.

Реально сложные вещи: гладкое освещение и вода. Симуляция лучей света и жидкостей нетривиальна. Однако, Godot в этом никак не должен помешать - просто придётся выбрать что-то вместо GDScript.

>И по прикидкам пара сотен или около тысячи юнитов с пасфайдингом, коллизиями и полной автономией как в дварф фортрессе.


Поиск пути в мире с видом сбоку а-ля Террария имеет сложности, которые замучаешься решать... Поэтому большинство платформеров имеют тупых мобов. Тем более если ты хочешь симулировать жизнь, т.е. мобы обязаны выживать как можно эффективнее. В ONI управление персонажем не как в Terraria, если что; я имею в виду прыжки и физику падения/полёта. Ну, зависит от того, что ты хочешь реализовать...

Не знаю, как реализовано в DF, но обычно в играх с большим количеством автономных NPC симуляция значительно замедляется за кадром, а в достаточно больших мирах вообще становится абстрактной, т.е. отбрасывается физика, маршруты и т.д. Дальше всё зависит от того, сколько их у тебя одновременно на маленькой локации или в пределах обзора камеры. Симуляторы колоний часто делят мир на локации: отдельные участки мира или астероиды/планеты; полноценно симулируется только локация игрока.

>но это надо ЗНАТЬ все нюансы, а туториалы в основном такое не показывают


Так тебе в любом случае нужно знать, как всё это реализовать - независимо от инструментов. Как ты собираешься симулировать жизнь 1000+ людей в разрушаемом мире из кубиков с видом сбоку? Это достаточно сложная задача независимо от движка.

>что в конечном итоге все равно придётся писать на C++ даже в годоте


Одно дело - написать симуляцию жидкости на C++ и подключить к готовому движку. Другое - изобретать игровой движок и редакторы к нему...

Вообще, рекомендую пока не думать о масштабе и оптимизации. Сначала попробуй сделать маленькую локацию с десятком NPC так, чтобы она была 100% играбельной и доставляла удовольствие. Тут есть вероятность, что твоя идея в принципе фигня и не заработает, потому что огромный масштаб обычно не добавляет удовольствия если базовая игра скучная. Например, если тебе не доставляет водить грузовик, расширение карты на тысячи километров дорог не увеличит удовольствие от вождения грузовика.

Конечно, если твоя идея сработает как ты хочешь, масштабировать игру до большого мира и 1000 NPC придётся, скорее всего, переносом на другой язык программирования или движок... Но есть нюанс: переделывать существующее на другой язык/набор инструментов всегда проще, чем изобретать с нуля. Например, реальные инженеры/дизайнеры всегда создают сначала прототип изделия из дешёвых и ненадёжных материалов (типа пластилина), чтобы не тратить ресурсы на неудачные задумки.

Когда-то давно мне тоже хотелось симулировать 1000 неигровых персонажей и всего такого. В результате осознал... Мне просто нравится исследовать что-то и находить новое. Но симуляция 1000 жителей где-то за пределами камеры не играет роли, если я её всю сам разработал. Максимально тупой random() принесёт намного больше интересного хаоса, чем симуляция. А создавать симуляцию очень сложно, особенно если персонажи могут умирать. Поэтому большинство игр спавнят рандомных тупых болванчиков и почти всех удовлетворяет такое грубое решение.

Короче говоря, если делаешь что-то, чего ещё нет, для начала убедись, что это вообще имеет смысл делать. Готовый игровой движок типа Godot позволяет всё проверить намного быстрее, чем низкоуровневые API. Потом будешь думать, как это всё оптимизировать.
473 1026615
>>6602

>огромная толпа


>мультимеш


Имеет смысл только для стратегий с видом сверху.

>за один дравколл


На Vulkan у тебя в любом случае один дроуколл если использовать один материал для всех персонажей... Наверное... По крайней мере, для статики это так. С анимациями, как я понимаю, нужны LOD самих этих анимаций, т.е. уменьшать частоту кадров вдалеке.

Фатальный недостаток мультимеша: он рендерит всё одновременно с одинаковой плотностью сетки, т.е. в определённых ситуациях будет нагружать больше, чем банальный спам обычных мешей с LODами.

>>6605

>прямо цепочки костей в шейдере считались и IK


И как, сильно помогает такой шейдер на GTX 750 Ti (встроенной графике, мобильной графике и т.д.)? Наоптимизируетесь так, что игра не запустится... Отключаешь IK для своей толпы зомби и всё. Кому интересно наблюдать, как толпа зомби аккуратно выставляет свои ножки на камушки на дороге?.. Оптимизация должна быть как JPEG - терять то, что конечному потребителю как правило не нужно, а не перекладывать задачу на ещё более слабое железо.

>>6599
Что-то типа Oxygen Not Included? Она на Unity. Карта, насколько я понимаю, меньше, чем в Terraria, и число персонажей, кажется, ограничено парой десятков. Естественно, много чего придётся делать на C++/C# (симуляция жидкостей и газов в первую очередь; у персонажей достаточно примитивное поведение).

>квадраты как в террарии


Это несложно, TileMap достаточно оптимизирован. В худшем случае просто делаешь чанки из отдельных тайлмапов и подгружаешь/выгружаешь как сцены динамически (по мере движения камеры/игрока).

Вроде в одном из недавних обновлений 4.x они ещё больше оптимизировали физику TileMap. Также могу посоветовать определять "коллизии" не физикой, а проверкой нахождения точки на сетке TileMap.

Один из "секретов" Террарии в том, что 99% карты не обрабатывается никак. Каждый тик игра выбирает несколько клеточек в случайных позициях карты и выполняет их обновление: деревья растут, трава расползается и т.д. Обновлять всё сразу не выйдет. Подозреваю, что мир ONI ограничен по этой причине.

Реально сложные вещи: гладкое освещение и вода. Симуляция лучей света и жидкостей нетривиальна. Однако, Godot в этом никак не должен помешать - просто придётся выбрать что-то вместо GDScript.

>И по прикидкам пара сотен или около тысячи юнитов с пасфайдингом, коллизиями и полной автономией как в дварф фортрессе.


Поиск пути в мире с видом сбоку а-ля Террария имеет сложности, которые замучаешься решать... Поэтому большинство платформеров имеют тупых мобов. Тем более если ты хочешь симулировать жизнь, т.е. мобы обязаны выживать как можно эффективнее. В ONI управление персонажем не как в Terraria, если что; я имею в виду прыжки и физику падения/полёта. Ну, зависит от того, что ты хочешь реализовать...

Не знаю, как реализовано в DF, но обычно в играх с большим количеством автономных NPC симуляция значительно замедляется за кадром, а в достаточно больших мирах вообще становится абстрактной, т.е. отбрасывается физика, маршруты и т.д. Дальше всё зависит от того, сколько их у тебя одновременно на маленькой локации или в пределах обзора камеры. Симуляторы колоний часто делят мир на локации: отдельные участки мира или астероиды/планеты; полноценно симулируется только локация игрока.

>но это надо ЗНАТЬ все нюансы, а туториалы в основном такое не показывают


Так тебе в любом случае нужно знать, как всё это реализовать - независимо от инструментов. Как ты собираешься симулировать жизнь 1000+ людей в разрушаемом мире из кубиков с видом сбоку? Это достаточно сложная задача независимо от движка.

>что в конечном итоге все равно придётся писать на C++ даже в годоте


Одно дело - написать симуляцию жидкости на C++ и подключить к готовому движку. Другое - изобретать игровой движок и редакторы к нему...

Вообще, рекомендую пока не думать о масштабе и оптимизации. Сначала попробуй сделать маленькую локацию с десятком NPC так, чтобы она была 100% играбельной и доставляла удовольствие. Тут есть вероятность, что твоя идея в принципе фигня и не заработает, потому что огромный масштаб обычно не добавляет удовольствия если базовая игра скучная. Например, если тебе не доставляет водить грузовик, расширение карты на тысячи километров дорог не увеличит удовольствие от вождения грузовика.

Конечно, если твоя идея сработает как ты хочешь, масштабировать игру до большого мира и 1000 NPC придётся, скорее всего, переносом на другой язык программирования или движок... Но есть нюанс: переделывать существующее на другой язык/набор инструментов всегда проще, чем изобретать с нуля. Например, реальные инженеры/дизайнеры всегда создают сначала прототип изделия из дешёвых и ненадёжных материалов (типа пластилина), чтобы не тратить ресурсы на неудачные задумки.

Когда-то давно мне тоже хотелось симулировать 1000 неигровых персонажей и всего такого. В результате осознал... Мне просто нравится исследовать что-то и находить новое. Но симуляция 1000 жителей где-то за пределами камеры не играет роли, если я её всю сам разработал. Максимально тупой random() принесёт намного больше интересного хаоса, чем симуляция. А создавать симуляцию очень сложно, особенно если персонажи могут умирать. Поэтому большинство игр спавнят рандомных тупых болванчиков и почти всех удовлетворяет такое грубое решение.

Короче говоря, если делаешь что-то, чего ещё нет, для начала убедись, что это вообще имеет смысл делать. Готовый игровой движок типа Godot позволяет всё проверить намного быстрее, чем низкоуровневые API. Потом будешь думать, как это всё оптимизировать.
474 1026616
>>6615
Откуда же я узнаю, помогает ли метод для IK на 750ti, если его еще никто не реализовал для годота?
475 1026620
>>6615

>огромная толпа


>мультимеш


>Имеет смысл только для стратегий с видом сверху.


Нет. Имеет такой же смысл и в зомби шутерах от первого/третьего лица. И в ГТА для пешеходов. (Хинт - можно сделать разные цвета одежды, кожи, можно и сделать разные отключаемые части типа кепок).
476 1026626
Я устал
477 1026629
>>6616
Сделай сам
478 1026634
>>6629
У меня и без того столько тасочек, что только через год если время найдется.
479 1026647
>>6569
А я щас пилю приложуху (не игру) на SDL/ImGUI. Решил освоить эту связку технологий, потому что в геймдеве она супер популярная. Конечно, годоту имгуи не нужен (хотя биндинг сущетвует), своя встроенная система для гуёв очень даже хороша; но надо ж развиваться и осваивать разные технологии. Я вообще изначально думал чисто на годоте приложение делать, но получалось слишком громоздко, да и постоянная возня с пересборкой движка.
480 1026648
Да что такое этот ваш RogueLite!!!??
481 1026649
>>6647

>постоянная возня с пересборкой движка.


Есть вариант с DLL/.so
482 1026659
>>6648
Когда по данжам вместо рога бродит бард. Это и есть роглайт!
483 1026660
>>6648
это когда берут концепт рогалика, но пытаются сделать интересную игру
1750393375340.png432 Кб, 1280x720
484 1026661
>>6659
Пикча барда в данже вдогонку.
485 1026666
>>6648

>RogueLite


То же самое что и роглайк, но без пермасмерти.
486 1026688
>>6647
Как прошедший через SDL и кучу других ящитаю наибольшая проблема с фреймворками, и тем более с их связками, это гемор их сбора под произвольную платформу, будь то внезапный веб или андроид. Какая-нибудь мелкая залупа в глубине проекта может все обломать, придется ее выковыривать и заменять на более дружелюбную к мультиплатформингу.
487 1026703
>>6569
Годот обладает огромным преимуществом: встроенные шейдеры. SDL2 это надо или какой то васянский билд, или прикручивать OpenGL и развлекаться перекидыванием текстур оттуда туда. SDL3 пока непонятная штука, там для шейдеров надо создавать текстуры тоже в своем АПИ, и не факт что это заработает на любом устройстве, все таки у SDL2 была репутация работать от микроволновки, от малинки, до емскриптен веба.
1.jpg316 Кб, 1080x1087
488 1026713
Открыл r/godot посмотреть на поделки других людей, отсортировал по топ постам за последний месяц, а там по факту нет игр. Почему-то артисты решили, что они теперь геймдевы и только тем и занимаются, что рисуют пиксельные спрайты и тыкают их тайлмапом в одной и той же сцене пять лет подряд. А ИГРУ кто будет делать? Или геймплей не нужен, главное чтобы утка красиво по экрану перемещалась? Как называется этот синдром?
489 1026714
>>6713

>А ИГРУ кто будет делать?


Ты. Давай, мы ждем, раз-раз и сделал.
490 1026732
>>6616

>Откуда же я узнаю, помогает ли метод


У 750 Ti всего 640 compute ядер, а алгоритм IK будет примерно как на CPU, так что можешь сам прикинуть, сколько потоков/костей ты можешь обрабатывать...

Но лучше на встройки посмотреть. Там вообще всё ограничено. Но на встройке можно играть в очень большое количество "старых" игр (имхо, GTA SA даже сегодня топ ААА, а её тащит встройка 2 ядра @ 1 Ггц).

Короче, это ситуация из разряда "у меня на RTX 5090 работает в 30 фпс, значит и у всех остальных норм". Потом удивляются, откуда у них негативные отзывы.

>>6620

>и в зомби шутерах от первого/третьего лица


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

>И в ГТА для пешеходов


Если только гта уровня /б/... В GTA 5 можно изредка заметить переключение NPC между примитивным болванчиком и конкретной/реальной моделькой. Я подозреваю, что это единственный реальный способ оптимизировать пешеходов в такой игре. Поэтому и улицы там обычно выглядят слишком пустыми.

>разные цвета одежды, кожи


>разные отключаемые части типа кепок


Ты вообще мультимешем пользовался? Мультимеш рендерит единственный меш с одним материалом... Представь, что у тебя десять персонажей в кепке - мультимеш не даст ощутимого прироста скорости, а настройка и динамическое обновление - это траты.

Конечно, ты можешь настраивать меш в шейдере. Но количество работы необходимой для этого, как мне кажется, превышает потенциальную выгоду. Поэтому намного эффективнее просто ограничить спавн NPC.

Если твоя игра скучна с ограниченным количеством скопированных мешей, то ты делаешь что-то не так. Изобилие копипасты не сделает игру лучше других.
491 1026745
>>6713
а вот чтоб это пиксельное месиво нарисовать, надо художником быть что ли?
все мы знаем, что в игре главное сюжет маркетинг
492 1026748
>>6647

>развиваться и осваивать разные технологии


>изначально думал чисто на годоте приложение


>но получалось слишком громоздко


>постоянная возня с пересборкой


Попробуй это: https://www.lazarus-ide.org/
- бесплатный опенсурс, до сих пор шевелится
- WYSIWYG редактор для нативных приложений
- скорость кода почти как у C++ (чуть медленнее)
- код более читабельный, чем у многих потомков C
- компиляция за один проход, т.е. супербыстрая
- много встроенных компонентов, можно качать
- exe относительно мал (зависит от компонентов)
- event driven architecture - как сигналы в Godot
- кроссплатформа (write once, compile anywhere)
- девятое место среди языков, т.е. ещё живой:
https://www.tiobe.com/tiobe-index/
493 1026756
>>6713

>там по факту нет игр


>Или геймплей не нужен


Есть там игры с геймплеем, плохо искал.

>артисты решили, что они теперь геймдевы


>одной и той же сцене пять лет подряд


Ошибка выжившего - видишь топ-посты от тех, кто решился что-то показать, из тех, кто что-то сделал.

Во-первых, похвастаться графикой в коротком видео значительно проще, чем геймплеем. Тем более что геймплейно многие игры однотипны: взять, скажем, фермерский симулятор, что интересного в том, чтоб показывать, как игрок собирает картошку? Какие-то механики могут быть растянуты на часы геймплея - строительство чего-то из кубиков, например, сложно продемонстрировать в реальном времени. Читатели вероятнее всего лайкнут простой и понятный пост с привлекательной графикой, чем с сырым геймплем.

Во-вторых, графика - одновременно очень просто и чрезвычайно трудозатратно. Можно за один день сконструировать статичную сцену из набора тайлов, нарисовать одного персонажа или написать шейдер. Однако, полноценная игра обычно требует графику, которую в соло ты будешь 5+ лет делать. Поэтому у многих весь прогресс уходит в улучшение графики. Геймплей же обычно либо тривиален, либо слишком сложен, поэтому многим особо нечем хвастаться.

И в-третьих, r/Godot больше всего подходит для демонстрации возможностей движка. Посмотреть впечатляющую 3D сцену или даже необычный 2D спецэффект интереснее и важнее, чем увидеть 9001 симулятор ходьбы по серым кубикам. Потому что симуляторы ходьбы на любом движке делаются, а графические возможности не настолько очевидны.

Алсо, как говорят, "be the change you want to see" - разработай свой гениальный геймплей и иди туда хвастаться - покажи пример, как нужно это делать.

Или ты просто завидуешь тем, кто что-то делает?
494 1026807
>>6526
У меня dev5 и beta1 не запускается в версии x64 на Windows 10, краш с ошибкой/сигналом "4". Что самое интересное, x32 версия запускается без проблем и до версии dev4 никогда подобного не было... С чем это может быть связано? Несколько лет винду никак не обновлял, может, нужно обновиться до свежей?
Обновить тред
« /gd/В начало тредаВеб-версияНастройки
/a//b//mu//s//vg/Все доски

Скачать тред только с превьюс превью и прикрепленными файлами

Второй вариант может долго скачиваться. Файлы будут только в живых или недавно утонувших тредах.Подробнее