Главная Юзердоски Каталог Трекер NSFW Настройки

Gamedev

Ответить в тред Ответить в тред
Check this out!
<<
Назад | Вниз | Каталог | Обновить | Автообновление | 511 121 105
Godot #56 Аноним # OP 01/10/24 Втр 14:55:03 977039 1
1727783665144.png 40Кб, 874x874
874x874
1727783665154.jpg 30Кб, 600x315
600x315
Аноним 01/10/24 Втр 14:58:43 977042 2
image.png 27Кб, 764x422
764x422
image.png 7Кб, 236x231
236x231
>>976599 →
У меня подобное >>977022 →, только вместо спрайтов тумана - тайлмапа. Если клетка открывается - ставлю очищаю значение. Аналогичным образом сделан туман войны, там вместо непроглядной тьмы - прозрачный серый
Аноним 01/10/24 Втр 15:31:16 977057 3
Аноны, как из блендера перенести частицы в годо?
Аноним 01/10/24 Втр 15:48:15 977067 4
>>977057
в интернете искать не пробовал?
Аноним 01/10/24 Втр 16:07:41 977072 5
>>977067
Ну скинь, что нашёл.
Аноним 01/10/24 Втр 16:11:54 977076 6
>>977072
так я и не искал, мне-то это нахуя?
Аноним 01/10/24 Втр 16:19:11 977083 7
Аноним 01/10/24 Втр 17:19:50 977101 8
>>977057
Я тож хз братан, делаю свои 3д частицы сразу в годоте.
Аноним 01/10/24 Втр 17:32:38 977103 9
image.png 174Кб, 916x650
916x650
image.png 64Кб, 923x645
923x645
image.png 19Кб, 957x173
957x173
image.png 72Кб, 943x499
943x499
Форкеры редота обосрались с именем и логотипом и пытаются в поспешный ребрендинг, снова.
Аноним 01/10/24 Втр 17:41:45 977109 10
>>977103
>4
Буквально PeePeePooPoo Engine
Аноним 01/10/24 Втр 17:46:11 977110 11
image.png 36Кб, 960x287
960x287
image.png 104Кб, 1136x710
1136x710
image.png 69Кб, 804x536
804x536
image.png 30Кб, 682x313
682x313
>>977103
Видимо главфоркер и его опыт. Короче, даже лого сменить не осилят.
Аноним 01/10/24 Втр 21:01:01 977142 12
image.png 66Кб, 554x670
554x670
image.png 60Кб, 640x256
640x256
>>977103
Кто обосрался? Ты обосрался!
Аноним # OP 01/10/24 Втр 22:15:32 977156 13
1727810092980.jpg 33Кб, 255x185
255x185
1727810093003.png 318Кб, 470x636
470x636
> повесточка
> шизожируха по квоте
> расстрельные списки
> ковровые баны топдонатеров

Чудовищный пиздец.
Аноним 01/10/24 Втр 22:21:11 977159 14
36a42e6425c99f2[...].jpg 49Кб, 500x680
500x680
>>977156
Вообще, додот конечно повеселили в последние дни лол. Столько-то обсуждений и охуеваний. Но надо определиться где же обсуждать повестку: в движкосрачах, либо тут, где немного не по теме получается.
мимо_юнитигосподин
Аноним 01/10/24 Втр 22:23:01 977160 15
>>977159
Это не срач, а новости.
Аноним 01/10/24 Втр 22:56:55 977164 16
image.png 387Кб, 1061x465
1061x465
>>977156
> ковровые баны топдонатеров
Фейк ньюз. 5к ушли потому что у какой-то корпорации, хуй знает какой, истекла подписка на донаты годоту. "Баны топдонатеров" привели к потерям в 170 евро и 10 донатеров. Из-за драмы набежало 74 новых донатера с 1610 евро.

Короче, визга много, а по факту пук. Особенно проигрывал с постов на реддите в духе "перестаю донатить в годот, никаких игр на нем больше не сделаю!!1", открываешь профиль, а там школьник-анимешник, и вся его активность - сраться про драгонболл.
Аноним 01/10/24 Втр 23:01:32 977166 17
image.png 91Кб, 1285x886
1285x886
image.png 91Кб, 1285x886
1285x886
>>977164
>>977156
Нашел какой корп проебал подписку на 5к - Ramatak. Они предлагают услуги по портам годота, там рулят Ariel Manzur (один из основателей годота и братан Хуана) и Hein-Pieter van Braam. Оба они участвуют и в Godot Foundation. Думаю вернутся в ближайшие дни.
Аноним 02/10/24 Срд 01:03:42 977185 18
>>977042
О, я с тайлмапами пока особо не разбирался. Знаю что там вроде как можно удобно и быстро рисовать уровни, создав свои правила того, как должен выглядеть, например, угол комнаты.
Тут такого тоже можно добиться, типа чтоб задать то как будет выглядеть угол, центр и край тумана? А то если делать как у меня - спрайтами, то надо и проверку на соселние клетки докручивать, что не так трудно, но тайлмапой интереснее.
Аноним 02/10/24 Срд 02:21:37 977189 19
image.png 62Кб, 1121x779
1121x779
>>977164
> "Баны топдонатеров" привели к потерям в 170 евро и 10 донатеров. Из-за драмы набежало 74 новых донатера с 1610 евро.
Верим
Эти 1610 евро в одной комнате?
Аноним 02/10/24 Срд 02:50:34 977191 20
>>977189
>патреон
Это рофел такой? Патреон больше года как retired, все перевели на новую систему: https://godotengine.org/article/godot-developer-fund/

Укатыайся обратно в движкосрач, залетный, и не позорься так больше.
Аноним 02/10/24 Срд 07:46:11 977194 21
>>977185
>Тут такого тоже можно добиться, типа чтоб задать то как будет выглядеть угол, центр и край тумана?
У тайлмапов такое решение называется terrain, он очень классный, когда я понял насколько он всё упрощает, я долго и радостно хихикал
Аноним 02/10/24 Срд 11:24:02 977205 22
Делайте игры
Аноним 02/10/24 Срд 11:35:07 977206 23
>>977205
> Делайте игры
Ты хотел сказать - делать в годоте? Потому что я уже сделал, но только у себя в голове. Каждый день играю, не получается пройти даже первый уровень, слишком сложно...
Аноним 02/10/24 Срд 13:20:25 977211 24
>>977206
Дай поиграть тогда, раз зделол.
Аноним 02/10/24 Срд 14:06:56 977218 25
>>977211
ОКей.

Рабочее название: "Оторвать жопу от дивана"

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

Пояснение. Игра не рогалик. Геймплей состоит в том чтобы жопа никогда более не касалась дивана.
Аноним 02/10/24 Срд 14:57:27 977226 26
Эээ, бля, не смейте, я только слегка раздуплился и вообще начал хотя бы движок иногда открывать, что-то там изучать, туториалы все дела, вы ещё закройтесь блять, нееее
Аноним 02/10/24 Срд 15:35:08 977230 27
>>977159
>Вообще, додот конечно повеселили в последние дни лол
А чё за драма случилась? Я в танке был.
Аноним 02/10/24 Срд 15:45:51 977233 28
>>977226
>>977230
Ничего не случилось, просто визжащие снежинки-ноудевы и залетные - >>>977164 >>977166

Всем продолжать ебашить свои проекты.
Аноним 02/10/24 Срд 18:26:13 977246 29
>>977230
Внезапно выяснилось что движок от гомогеев для гомогеев поддерживает гомогеев. Миллионы базовых шлёп уже отменили свои подписки на Годот.
Аноним 02/10/24 Срд 18:40:01 977250 30
>>977160
Где же ссылки на новостные издания, газеты?
Аноним 03/10/24 Чтв 00:09:33 977296 31
>>977233
>снежинки
Повышает чсв, правда? Снежинки все кто был задет. Все вечно недовольные и ноющие по любому поводу. Кому мешают деградировать жиды, негры, пидоры, и плохой запад.
Аноним 03/10/24 Чтв 00:18:52 977297 32
>>977296
Не, прост наличие других проблем немного меняет перспективу, заставляя смотреть с удивлением на людей, жгущих свои нервы из-за какого-то твита про, блять, видео игры. Кто там кого больше обидел мне поебать.
Аноним 03/10/24 Чтв 02:47:11 977309 33
Здравствуйте, это филиал /ga/?
Аноним 03/10/24 Чтв 03:36:52 977310 34
>>977309
Заходи, сладенький
Аноним 03/10/24 Чтв 08:16:05 977323 35
dy9kp3sc9dsd1.jpeg 689Кб, 1080x668
1080x668
Делайте игры
Аноним 03/10/24 Чтв 09:50:27 977329 36
не-заставляй-ме[...].mp4 2368Кб, 1280x720, 00:00:07
1280x720
Аноним 03/10/24 Чтв 09:55:50 977330 37
>>977323
Я бы с радостью, но я на работе..........
Аноним 03/10/24 Чтв 11:50:53 977343 38
>>977323
зачем? реалистично ни одна из них не взлетит и не сделает меня долларовым миллионером, вот так чтобы как с флаппи бёрд, выпустить хуйню и залутать десятки миллионов долларов за первую неделю
мой путь будет тернист, сложен, выматывающий.. и всё ради чего? ради 14 рублей в год(до налогов)?
Аноним 03/10/24 Чтв 12:18:09 977346 39
>>977343
>как с флаппи бёрд, выпустить хуйню и залутать десятки миллионов долларов за первую неделю
Не было такого, он зарабатывал всего лишь 50к в день
Аноним 03/10/24 Чтв 12:18:27 977347 40
>>977343
Реалистично тебя ничто не сделает долларовым миллионером. Тогда в чем смысл чего-либо? Заткнись и делай.
Аноним 03/10/24 Чтв 12:19:20 977348 41
>>977347
А какой смысл в бытие долларовым миллионером? Какой в принципе смысл?????????
Аноним 03/10/24 Чтв 12:19:21 977349 42
>>977343
Тетрис, флаппи бёрд, амонгусы, компанию с таким настроем и не сделали бы
Аноним 03/10/24 Чтв 12:29:33 977352 43
>>977348
>Какой в принципе смысл?????????
Ключевой вопрос жизни. А могли бы игры делать.
Аноним 03/10/24 Чтв 12:30:06 977353 44
>>977352
Я делаю игры, когда не на работе!
Аноним 03/10/24 Чтв 12:49:45 977354 45
Ребятишки, кто-то может пояснить в двух словах что там за драмма с годотей? Каких-то лохов забананили и чё? Или чё?
Аноним 03/10/24 Чтв 13:10:09 977364 46
>>977349
Любитель мыслить позитивно, ты?
Аноним 03/10/24 Чтв 14:19:41 977371 47
>>977330
>>977353
Почему не в гейдеве работаете? Могли бы и работать, и игры делать.
Аноним 03/10/24 Чтв 14:24:10 977372 48
>>977371
Кто вы то? Я один здесь. В геймдев не взяли, я просил слишком высокую зарплату....
Аноним 03/10/24 Чтв 15:57:59 977390 49
Бля, опять скоп распух.
Аноним 03/10/24 Чтв 17:47:15 977415 50
Какой-то годот не оптимизированный под веб. Подожду 5 версию может там исправят. Если не исправят перейду на дефолд. Подожду правда 3 версию дефолда а то он неудобный какой-то все ручками делать надо, может в 3 исправят. Если не исправят перейду в кокос. А там посмотрим
Аноним 03/10/24 Чтв 18:06:11 977423 51
>>977415
>Подожду 5
Так для веба есть 3. Но конечно веб это про лоуполи с минимумом теней, постэффектов и прочего.
Аноним 03/10/24 Чтв 18:56:25 977438 52
Захотелось попробовать делать мобилку. Для себя, публиковать не буду. Накидал простейший прототип, скинул на телефон, установил, запускаю - а там это:
https://github.com/godotengine/godot/issues/80057
Совет из комментариев "выключить кэш" не помог.

Т.е. единственный выход юзать Vulkan Mobile, но он запускается несколько секунд и у него официально отсутствует батчинг, т.е. движок спамит дроуколы, получается, даже если использовать TileMap...

Попробовал снижать FPS, по моим ощущениям 20 нормально выглядит. Разница в нагрузке ощутима. Физический движок пока замедлил до 30 тиков.

А что по разрешению экрана? У меня 1080x2340, и разрешение 540x1170 выглядит нормально, но я не понимаю, улучшает ли это производительность - рендеринг на мобилках отличается "тайловостью".

Короче, есть ещё какие-то варианты сделать игру экономной, но чтобы были скелетные анимации?
Аноним 03/10/24 Чтв 19:11:36 977441 53
>>977438
>gl_compatibility
Увы, он очень сильно отстает от вулкана, ведь смысл годота 4 был переписывание на вулкан. К тому же где то писали что считают его уже feature complete Для галочки и дальше развивать вряд ли будут. Хочешь gl - тоже пробуй godot3. Там конечно тоже будут приколы с gles2 или gles3. Таков путь.
Аноним 03/10/24 Чтв 19:15:22 977444 54
У тройки в вебе хуевый звук
Аноним 03/10/24 Чтв 19:37:14 977448 55
>>977444
Пользуйся js аддоном.
Аноним 03/10/24 Чтв 19:38:29 977449 56
>>977441
>feature complete
Это значит "фокус смещён на багфиксы". В данной ситуации фича есть, но она почему-то не работает.

>пробуй godot3
Я на Godot с 2020 и не хочу возвращаться на 3.x, т.к. множество удобных фич ввели только в 4.x. Больше всего мне нравятся нововведения GDScript "2.0".

Мне просто кажется, что Vulkan Mobile избыточен...

Будет ли быстрее запуск игры, если собрать без 3D?
Аноним 03/10/24 Чтв 20:51:48 977461 57
>>977438
>официально отсутствует батчинг
Сам себе отвечаю: нужно попробовать 4.4-dev3:
https://godotengine.org/article/dev-snapshot-godot-4-4-dev-3/#add-batching-to-renderercanvasrenderrd
>This release brings the same performance benefits to the other backends by implementing batching when using the Forward+ and Mobile backends. Now 2D performance is comparable between all backends.
Интересно:
>We have further improvements planned for batching on the RD backends that should allow it to be even faster than the Compatibility backend. Stay tuned for updates in later dev releases!
На старом телефоне это ускорение будет ощутимо?

В смысле экономии энергии...
Аноним 03/10/24 Чтв 22:38:54 977481 58
>>977461
получается осталось немного подождать и можно будет начать делать игры, или всё же будем ждать 4.5.1?
Аноним 03/10/24 Чтв 22:52:30 977484 59
>>977481
Делай сейчас. Пока ты сделаешь уже и 4.5 выйдет, сможешь апгрейднуться.
Аноним 03/10/24 Чтв 23:04:25 977488 60
breakfast.mp4 2801Кб, 854x480, 00:00:23
854x480
Аноним 04/10/24 Птн 00:01:16 977495 61
https://godotengine.org/article/dev-snapshot-godot-4-4-dev-3/

Новый снапшот. Основное:
- вернулось вертекс освещение
- экспорт кнопок
- ускоренный стартап
- чего-то про рендер, что я поленился читать
- всякая мелочь
Аноним 04/10/24 Птн 12:43:21 977549 62
>>977495
>экспорт кнопок
@export_tool_button - это для инспектора.
>ускоренный стартап
Открытие большого проекта в редакторе.
>чего-то про рендер, что я поленился
- батчинг для 2D в Forward+ и Mobile
- REPL в редакторе (а-ля Питон)
- старт профайлеров со стартом игры
- маркеры в анимации (для удобства)
- поддержка вебкамеры в линуксе
- фолбек на OGL3 если Vulkan'а нет
>всякая мелочь
- теперь токены GDScript детерминированы
- улучшена производительность сетки GraphEdit
- починили возврат частичного пути из AStar
- физику теперь можно полностью выключить

Кстати, неделю назад приняли вот это:
https://github.com/godotengine/godot/pull/97118
Эта фича позволяет генерировать PCK-патчи.
Хотели сделать ещё во времена 2.0...
Аноним 04/10/24 Птн 13:01:51 977554 63
>>977549
Теперь будешь чейнджлоги нам писать.
Аноним # OP 04/10/24 Птн 13:06:35 977557 64
>>977554
А вы кто такие и сколько вас там?
Аноним 04/10/24 Птн 13:17:30 977560 65
>>977557
Их много и они на get_tree()...
Аноним 04/10/24 Птн 20:39:59 977672 66
>>977039 (OP)
Годот умер! Да здравствует Редот!
Аноним # OP 04/10/24 Птн 20:44:33 977673 67
>>977672
Если форки просуществуют до бамплимита этого треда, то так уж и быть, они удостоятся занесения в шапку.
Но мы же все ИТТ прекрасно понимаем, что это срачефорки от обиды. Продержатся они максимум неделю, после чего их забросят. Как краб-язык.
Аноним 05/10/24 Суб 00:24:36 977706 68
>>977672
Логотип то поменяли?
Аноним 05/10/24 Суб 08:22:05 977738 69
>>977323
Базовый постер

>>977343
Выгоревший постер

Делайте что интересно и хочется

Джонни кармак
Аноним 05/10/24 Суб 11:04:18 977760 70
>>977738
Все так. И ешьте по одной большой пицце в день.
Аноним 05/10/24 Суб 17:29:50 977869 71
>>977039 (OP)
У вас название двигуна в шапке направильно написано - должно быть Wokedot.
мимокрокодил
Аноним 05/10/24 Суб 17:37:04 977873 72
Аноним 05/10/24 Суб 18:10:04 977893 73
>>977869
>мимопропердил
Давай досвидания.
Аноним 05/10/24 Суб 18:44:40 977906 74
1728142841590.mp4 1820Кб, 1280x720, 00:00:11
1280x720
Хочу на четверку, а сам застрял на тройке. Ну хоть демку скоро выпущу.
Аноним 05/10/24 Суб 19:25:15 977911 75
>>977906
>застрял на тройке
В чём причина? Старые библиотеки GDNative?
Аноним 05/10/24 Суб 19:27:56 977912 76
>>977911
Лень перелопачивать довольно большой для соло проект. Тем более постоянно кажется что релиз близко.
Аноним 05/10/24 Суб 19:55:48 977919 77
Список годных и успешных игр на годоте?
Аноним # OP 05/10/24 Суб 19:58:13 977921 78
>>977869
> Woked
На самом деле начиная с 20 ковидного года начался крах вок-культуры. Посмотрите новости. Вокнутых гонят повсюду.
Аноним 05/10/24 Суб 20:04:45 977928 79
image.png 1457Кб, 1079x1594
1079x1594
>>977921
>Вокнутых гонят повсюду
Только не в Godot Foundation
Аноним 05/10/24 Суб 20:06:55 977931 80
image.png 53Кб, 551x243
551x243
Аноним 05/10/24 Суб 20:09:40 977932 81
Поучился годоту три месяца, чтобы быть разрабом такое чувство что надо быть гением ебаным. Я ничего не могу сделать без гайдов, я не программист, ни художник, даже идей нету.
Аноним 05/10/24 Суб 20:09:55 977933 82
>>977921
>#OP
>крах вок-культуры
Эх, а я-то думал, ты гуманист.

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

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

Печально что такая резкая реакция на "вокот". Это означает, что люди всё ещё ненавидят друг друга...

Нужно меньше ненависти и больше любви.
Особенно любви к компьютерным играм.
Д Е Л А Й Т Е _ И Г Р Ы
Аноним 05/10/24 Суб 20:20:25 977938 83
>>977933
>Как я понимаю, вок - это типа "все равны и всем необходимо предоставить равные права"
Неправильно понимаешь. В странах качающих эту самую вок-повестку уже давно у всех и так равные права, а вок теперь - это типа "у черных геев должно быть больше прав, чем у белых гетеро"
Аноним # OP 05/10/24 Суб 20:46:35 977954 84
>>977933
> Эх, а я-то думал, ты гуманист.
Я дарвинист.
Аноним 05/10/24 Суб 20:47:20 977955 85
>>977933
>>977938
Вы раздуваете несоизмеримо. Реальных последствий около нуля. Один твит и 100 евро кто-то из донатов унес, а визга на весь интернет, что на фоне тех же юнитипроблем с роялти вообще смех. У меня знакомый, который в геймдеве/программировании ни ногой, и то повизжать успел. Просто есть определенная аудитория которая ищет на что бы оскорбиться, и каждый раз это примерно одинаковый набор людей, не обязательно заинтересованный в Х, на который они в данный момент оскорбляются.

Так что да, это все так, шум. Делайте игры и не отвлекайтесь на шум.
Аноним # OP 05/10/24 Суб 20:48:47 977959 86
>>977955
> есть определенная аудитория которая ищет на что бы оскорбиться
Завсегдатаи срачетреда.
> Делайте игры и не отвлекайтесь на шум.
Да.
Аноним 05/10/24 Суб 20:50:34 977962 87
>>977932
>ничего не могу сделать без гайдов
Гугли "tutorial hell", частая проблема ньюфагов. Тебе не хватает свободного экспериментирования без подсказок со стороны туториалов. Чаще пробуй разрабатывать что-то самостоятельно.
>я не программист,
В большинстве игр код не очень-то и важен, так что не зацикливайся - с опытом будет полегче. Важнее разбираться в геймдизайне и базовой математике.
>не художник,
Есть очень упрощённые стили, которые освоить без академической базы легче, чем другие. Также есть существенная разница между 2D и 3D. В крайнем случае, если у тебя на руках рабочая демка с очень интересным геймплеем, художника найти проще.
>даже идей нету.
Попробуй с нейронкой обсудить: http://duck.ai
Метод мозгового штурма работает и в соло.
Аноним 05/10/24 Суб 21:28:29 977994 88
1728152869151.png 82Кб, 864x681
864x681
Аноним 05/10/24 Суб 22:02:09 978020 89
doc211134972063[...].gif 563Кб, 403x365
403x365
Как же заебала эта петушина пиздобратия. Везде сунут свой нос и скатят всё в сраное говно.
Аноним 05/10/24 Суб 22:19:58 978027 90
И чего я раньше не додумался
$Button.connect("pressed", get_tree(), "change_scene", ["res://gamescene.tscn"])
Аноним 05/10/24 Суб 22:35:18 978033 91
>>977932
Не все сразу, анон. Скиллы приходят с опытом. Сделаешь игр 10 - научишься. Нет идей - бери классику, переделывай, добавляй свои маленькие элементы. Либо вообще пизди взлетевшие идеи с итча.
Аноним 05/10/24 Суб 22:41:19 978034 92
>>978027
О, сейчас себе так же сделаю, тестировать уровни удобней станет.
Аноним 05/10/24 Суб 23:10:51 978041 93
>>978027 >>978034
В чём смысл так делать?

>$Button.connect
Зачем подключать в коде? А если переименуешь?
>change_scene
Это работает только для совсем уж микроигрушек.
>"res://gamescene.tscn"
Сломается при переименовании/перемещении.

>тестировать уровни удобней станет
F6 никогда не пробовал нажимать? Попробуй.

угрюмо архитектурю мультиплеерные кнопки
Аноним 05/10/24 Суб 23:17:24 978045 94
>>978041
>В чём смысл так делать?
Чтобы не писать отдельную функцию которая не делает ничего кроме этого.
>переименуешь
Пример [redacted], на самом деле у меня там %Button, а сцену можно занести в константы.
>для микроигрушек
Ну да. Джем же. По большому счету это надо только для стартового меню чтобы перейти в игру уже.
Аноним 05/10/24 Суб 23:23:45 978050 95
image.png 137Кб, 657x466
657x466
Есть какой-либо способ победить z-fighting, когда наложенные друг на друга плоскости прыгают туда-сюда? Помимо сделать одну из них на 0.001 ниже?
Аноним 05/10/24 Суб 23:26:30 978051 96
>>978041
>В чём смысл так делать?
Фишка в самой идее. Такая эрзац лямбда. Можно и с другими сигналами применение найти.

Вообще я другое хотел сделать, чтобы вписать это в редакторе в коннектор нод, тогда вообще бы не пришлось писать эту функцию.
Аноним 05/10/24 Суб 23:36:17 978055 97
>>978045
> для стартового меню чтобы перейти в игру уже
Сначала пилишь гейм-менеджер, у которого есть АПИ для старта новой игры с заданным уровнем сложности. Затем
$Button.pressed.connect(get_game_manager(), change_scene, get_config().selected_game_mode)

Соответственно мультиплеер этой кнопке прикрутить легко, достаточно лишь
Аноним 05/10/24 Суб 23:36:33 978056 98
>>978050
1. Не допускать такой ситуации, не размещать так объекты.
2. Придумать какой нибудь шейдер который их смешает
3. Не помню, помогает ли тут приоритет рендера (можно ли задать какие объекты нарисуются после каких)
Попробуй sorring offset / render priority
https://docs.godotengine.org/en/stable/classes/class_visualinstance3d.html#class-visualinstance3d-property-sorting-offset
https://docs.godotengine.org/en/stable/classes/class_material.html#class-material-property-render-priority
4. Читал что может помочь разрешение z-буфера, но это сильно зависит от камеры и жанра игры. Иными словами можно сделать zNear подальше а zFar поближе, чтобы только необходимый объем был в камере, соответственно точность значений вырастет и z-клаши будут реже.
Аноним 05/10/24 Суб 23:37:32 978057 99
>>978056
1.1. Вырезать нужную форму буквой Г, забыл.
Аноним 05/10/24 Суб 23:42:06 978058 100
5. Прочитал у кого то что в мобильной игре помогло включить Vertex shading.
Аноним 06/10/24 Вск 00:23:02 978068 101
>>978056
>>978057
>>978058
Спасибо, потыкаю чего-нибудь из этого, отпишусь если поможет. Видел еще в бете что-то с z-буффером мутили.
Аноним 06/10/24 Вск 00:34:45 978072 102
image.png 144Кб, 740x876
740x876
>>978068
Это скорее всего тебя не затронет, раз ты видишь z-fighting.
Инверснутый z-buffer распределяет разрешение равномерно по дистанции, вместо ненужной плотности только вблизи камеры, так что это важно для игр с большими дистанциями.
Аноним 06/10/24 Вск 00:44:31 978074 103
В прошлом треде вроде кто-то спрашивал как использовать Vector2(x,y) в качестве координат в массиве
В 4-ке для этого есть Vector2i и Vector3i, которые содержат только целые числа. Они не подвержены ошибкам округления, а еще наверное быстрее. Ограничены 32 битами, это которое ±2,147,483,647
Аноним 06/10/24 Вск 15:08:55 978137 104
>>978074
>кто-то спрашивал как использовать Vector2(x,y) в качестве координат в массиве
Там вопрос был типа "не плохо ли это в контексте производительности игры". Ответ: зависит способа использования. На реддите недавно пост был с подробным сравнением: подтвердилось, что Array немножко быстрее Dictionary в линейных операциях, однако, всё-таки хуже в рандомных операциях.

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

Также зависит от плотности заполнения. Если у вас разреженная сетка, заполненная нулями ("воздухом"), гораздо выгоднее использовать Dictionary, тем более трёхмерный. Следующие операции:
>dictionary[Vector3i(x, y, z)] = 0 # создание записи
>if Vector3i(x, y, z) in dictionary: # проверка наличия
У меня выполняются быстрее любых аналогичных действий с Array, когда я недавно это всё тестил.

В 4.4 завозят типизацию Dictionary, можно будет так:
>var cells: Dictionary[Vector3i, CellType]
Интересно будет проверить производительность...

Также нужно помнить, что вызов функций добавляет оверхед на любые операции. Если вы хотите трюк с вычислением позиции внутри одномерного массива - ради производительности придётся писать каждый раз вручную вместо вызова функции. Потому что кастомная функция наподобие таких:
>func get_cell(x, y, z) -> CellType
>func set_cell(x, y, z) -> CellType
>func cell_id(x, y, z) -> int
Делает обращения к Array медленнее Dictionary. Это означает, что писать dictionary[Vector3i(x, y, z)] будет надёжнее против случайных ошибок, достаточно производительно и при этом данные разрежены (отсутствующие данные не заполняются нулями).

Конечно, если у вас огромные данные и с ними производится много операций каждый тик, тогда придётся переписывать на C++ или хотя бы C#. Но подобное редко встречается в играх (как правило "блочные" игры типа Minecraft, Terraria и т.п., но не любая блочная игра требует огромных массивов, например, фермерские игры намного компактнее).
Аноним 06/10/24 Вск 15:21:19 978141 105
>>978137
Кстати, есть ещё Vector4i(w, x, y, z):
https://docs.godotengine.org/en/stable/classes/class_vector4i.html
Не знаю, зачем он нужен, но может пригодиться, например, если у вас 3D сетка со слоями (w - слой):
>cell[Vector4i(CellLayer.PLANTS, x, y, z)] = CellType.TREE
Мне кажется, это лучше, чем массив из Dictionary.
Аноним 06/10/24 Вск 15:35:47 978147 106
>>978045
>Чтобы не писать отдельную функцию которая не делает ничего кроме этого.
Сейчас ничего не делает.

Потом тебе может понадобиться делать что-то в дополнение к смене сцены перед/после этого. Специальный обработчик события вроде такого:
>func _on_menu_button_pressed(...)
Позволяет в будущем быстро, решительно вписать дополнительную логику, которой изначально не планировалось, но без которой никак. Если такого обработчика нет, придётся его завести и изменить подключающий кнопки к обработчикам код.

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

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

А скорость разработки лежит не только в том, как быстро ты стряпаешь код прямо сейчас, но и в том, насколько быстро ты будешь стряпать код потом. Хорошо продуманная система потратит немного времени в начале, чтобы позже сэкономить много.
Аноним 06/10/24 Вск 15:59:09 978155 107
>>978147
> обмазывать код анонимными функциями некрасиво
Зависит от синтаксиса. В гдскрипте не смогли в красоту, увы.
> var foo = func(bar): return bar
Зачем было что-то выдумывать, когда есть простая стрелка?
> var foo = bar => bar
Аноним 06/10/24 Вск 15:59:34 978156 108
>>978050
>победить z-fighting
>Помимо сделать одну ниже?
Опиши ситуацию, почему у тебя этот артефакт вообще возникает. Скорее всего, ты делаешь что-то не то, что получается артефакт и просто сдвинуть не можешь.

Если ты делаешь 3D тайлы внутри GridMap, тогда они должны быть в рамках своей клетки. Если почему-то хочется растянуть их шире, тогда одно из интересных решений - подразделить тайл и немного выгнуть его:
>\____/ - один тайл
>\____/\____/ - стандартный тайлинг
>\____\/____/ - тайминг с пересечением тайлов
Тогда пересечение треугольников будет под углом, несмотря на то, что тайлы на одном уровне, и этот артефакт будет если не устранён, то минимален.

Если твои 3D тайлы абсолютно плоские без какой-то геометрии и ты не хочешь их выгибать, тогда другой вариант - использовать SubViewport для рендеринга большой текстуры "запечённых" тайлов, которые ты рендеришь на большом PlaneMesh. GridMap можешь использовать для дополнительной геометрии вроде торчащих кустиков/деревьев, а PlaneMesh будет содержать в себе только плоские тайлы.

Но я рекомендую, прежде чем пытаться это всё реализовать, сфокусироваться на геймплее игры. Возможно, реализовав геймплей, окажется, что механизм карты нужно полностью переделать. В прототипах визуальные артефакты не мешают.
Аноним 06/10/24 Вск 16:06:25 978159 109
И чё теперь, реально придется еще синтаксис редота учить? Они там уже прям даже модераторов набирают японских. Пиздос шизики нынче все в интернетах.

Надо било хоронить в таких случаях, либо терпеть. Нахуя плодить форки?
Аноним 06/10/24 Вск 16:10:32 978160 110
>>978159
Учи давай, не ленись.
Аноним 06/10/24 Вск 16:16:10 978162 111
>>978159
>редот
Это клоуны, игнорируй их.

>>977673
>Если форки просуществуют до бамплимита
Да не нужны эти форки в шапке, лол. Не будешь же добавлять все 20 тыщ форков Godot с гитхаба? На данный момент основной Godot жив и здоров, все остальные - вкусовщина, кому нужно - найдёт сам.

Тем более не нужно добавлять "форки", в которых добавили только условные "нескучные обои".

Лучше упомянуть, например, такую сборку движка:
https://github.com/Zylann/godot_voxel/releases
Там хоть что-то полезное добавлено. И рабочее.

У тебя вот написано:
>Для любителей пощекотать конпеляцию
>>Воксельные террейны от Зилана
Но он даёт готовые сборки - компилировать не надо.
Аноним 06/10/24 Вск 16:25:31 978165 112
1728221093035.png 18Кб, 337x299
337x299
>>978162
Кому нужны релизы мог самостоятельно открыть релизы. Ну ладно. Сделал равнение на отстающих. Проверяй.
Аноним 06/10/24 Вск 16:25:37 978166 113
>>978159
Модераторов и абу набирает. Попробуй вот программистов набрать. Кстати, почему бы тебе не устроиться к ним программистом? А то там пока школьник с нулем проектов и пустой анонимус в маске анонимуса.

>>978162
Я бы еще rpg in a box порекламил. Хороший проект.
Аноним 06/10/24 Вск 16:27:28 978167 114
>>978166
> Я бы еще rpg in a box порекламил. Хороший проект.
Всё равно шапку никто не читает. Её надо конкретно перерабатывать, но времени конкретно нет.
Аноним 06/10/24 Вск 16:33:05 978169 115
>>978155
>есть простая стрелка
>>var foo = bar => bar
Это слишком запутывает - с первого взгляда нельзя понять, что здесь происходит:
- к foo присваивается bar?
- или foo является bar?
- а что значит "из bar следует bar"?
- или это "из foo, что равно bar, следует bar"?
- или это проверка какого-то условия следования?
И т.д.

В GDScript сделали хорошо, читабельно:
>var foo = func(bar): return bar
- переменная foo хранит ссылку на функцию (func);
- функция принимает аргумент bar (скобочки);
- функция возвращает (return) аргумент bar.
Всё понятно с первого взгляда и легко разбить на несколько строчек, если код достаточно длинный.

Я считаю анонимные функции некрасивыми лишь потому, что у них нет собственного имени и они вплетаются в посторонний для них код, что снижает читабельность кода. Предложенный синтаксис ещё больше снижает читабельность такого кода, ведь он ухудшает разделение на "код здесь"/"код где-то там". Лучше всего выделить функцию и дать ей читаемое название, по которому к ней будешь обращаться.
Аноним 06/10/24 Вск 16:51:08 978175 116
>>978166
>Я бы еще rpg in a box порекламил.
Но он же платный. Ты сам-то им пользуешься? А то я пробовал как-то демку, не понял, в чём смысл. Это ж просто игрушка для детей. Но у детей есть роблокс...

Проблема большинства "конструкторов игр без программирования" в том, что они очень сильно ограничивают полёт фантазии. Шаг в сторону - необходимо ковырять сторонние DLL или нырять в исходники на C++. Если они вообще доступны. Тут преимущество модулей Godot в том, что они не отбирают у тебя возможности ванильного Godot, который универсален - подойдёт почти для всего.

Хочу сказать, что если "RPG in a Box" может сделать экспорт своего проекта для редактирования в Godot, тогда хорошо, а если это какой-то независимый "конструктор игр без программирования" на основе Godot, но без совместимости проектов, тогда ему в этом треде, имхо, не место. Можно было бы создать отдельный тред, как в случае с RPG Maker, если б достаточно пользователей здесь было (хоть один).
Аноним 06/10/24 Вск 17:00:27 978180 117
>>978167
Я вчера прочитал шапку. А там, вроде, пропало все что аноны писали, только ссылки на сторонние сайты остались. Надо бы свою БАЗУ знаний завести.
Аноним 06/10/24 Вск 17:01:37 978181 118
>>978175
За рпг мейкер и гейммейкер и тоже башлять придется если хочешь релизнуть коммерчески. Не мешает им жить, а релевантным тредам регулярно всплывать в /gd

Про остальные твои поинты - аудитория есть, проект коммерчески успешен. Даже в годот донатят на титаниуме.
Аноним 07/10/24 Пнд 01:13:40 978269 119
image.png 26Кб, 358x179
358x179
Просто годовое распределение загрузок по платформам. Итч.
Аноним 07/10/24 Пнд 09:47:03 978296 120
>>978269
Что то тяжелое, что не делал веб версии?
Аноним 07/10/24 Пнд 09:50:18 978298 121
image.png 303Кб, 1787x1047
1787x1047
Если будете постить игру на ludum dare, не забудьте заменить три строчки в экспортированном.js. Иначе на их сайте песочница не дает запустить игру в хроме.
Аноним 07/10/24 Пнд 12:54:50 978318 122
>>978298
> if false ...
Мнммм... Моя прелесссть.
Аноним 07/10/24 Пнд 13:48:26 978323 123
image.png 275Кб, 1893x972
1893x972
>>978318
Разработчики движка: если объект с такой фичей доступен в браузере, подключаем.
Песочница хрома: ага, ты запросил объект фичи, значит ты хакер.
Там минифицированный жс
Задача убрать само упоминание, не сломав остальной код иницализации (который в развертнутом виде выглядит как цепочка if(feature1 in browser) use;
Аноним 07/10/24 Пнд 14:24:50 978332 124
>>978327
Сука и ведь им за такое еще и деньги платят...
Аноним 07/10/24 Пнд 14:25:33 978333 125
image.png 31Кб, 534x478
534x478
>>978327
Ты заебал свое кликбейтное говно вбрасывать, дебич.
Аноним 07/10/24 Пнд 14:49:58 978341 126
>>978333
Всё правильно скинул, чтобы знали, что в эту парашу теперь вкатываться надо с очень высоким риском закрытия движка и придётся кому-то другому брать на себя попенсурс, т.к. из-за того что туда залезла сжвшная падаль, которая всё в говно скатывает, то это говорит теперь о значительной нестабильности проекта. Там даже один из разрабов попытался слово сказать, не поддержав подобную хуйню, но потом закрыл твит, всё, проекту пизда, движок не набрал такой массы пользователей, как тот же UE, чтобы такую хуйню творить. Еще не факт, что попенсурсность спасёт, если эту хуйню не поправят, ожидаем в ближайшее время форков.
Аноним 07/10/24 Пнд 14:55:48 978344 127
>>978341
>ожидаем в ближайшее время форков
Ожидаем в ближайшее время ещё форков.
Коммьюнити поддерживает проект не для того, чтобы кормить сжвшную падаль.

быстрофикс
Аноним 07/10/24 Пнд 15:04:24 978349 128
>>978341
>>978344
Хуя глубокая маняаналитика. И чего там, как этот форк поживает? Есть ли там кто-нибудь кто умеет программировать, или только такие же залетные ноускилльные визгуны как ты?
Аноним 07/10/24 Пнд 15:12:07 978353 129
>>978349
>алитика
Она у меня хотя бы есть, в отличии от недалёкого и неумеющего читать додика, типа тебя.
То что там форк какой-то появился в первые дни ничего не значит, это вполне возможно просто попытка на обсёре выехать, этов сё не быстрый процесс.

В любом случае негатив уже пошёл, уважения к своему коммьюнити нет, а что случается с такими сжв проектами уже вся индустрия полна примеров, в лучшем случае будет медленно дохнуть и терять бабло, если не исправят проблему с сжв даунами.
Аноним 07/10/24 Пнд 15:12:58 978355 130
>>978341
Есть 4.3 и 3.6. В них столько фич, что даже если больше ничего не добавят/не пофиксят, этого хватит любому вкатуну до конца жизни написать десятки игр.
Аноним 07/10/24 Пнд 15:29:16 978360 131
>>978355
Согл, поэтому особо не парюсь по текущим проектам, но хотелось бы нормального развития софта которым пользуешься, а не вот это вот всё.
Аноним 07/10/24 Пнд 15:31:08 978361 132
>>978353
Полистай тред, все твои поинты уже обсуждали.
Аноним 07/10/24 Пнд 16:01:09 978371 133
>>978341
>Там даже один из разрабов попытался слово сказать, не поддержав подобную хуйню, но потом закрыл твит
А кто, расскажи? Я на основных разрабов подписан давно и могу смотреть их заприваченные аккаунты. Редуз? Акиен?

Добавлю что бывший проджект менеджер годота, 100% русский чувак, и тот поддержал позицию годота. Так что, братан, сдается мне ты тут впустую пыхтишь.
Аноним 07/10/24 Пнд 16:14:18 978375 134
>>978327
Зачем ты сюда своего протыка притащил? Разработчики игр такую хуйню не смотрят, а для дебилов с повесточкой головного мозга есть /b
Аноним 07/10/24 Пнд 16:22:43 978376 135
reduzio.JPG 59Кб, 1355x465
1355x465
>>978371
Не пыхчу, а изливаю недовольство ситуацией из-за негативного фона и сжвшных пидоров на админах, история хуёвенькая.

>А кто
Редуз, после чего жиденько пукнул и закрыл свиттер. Для меня это ключевые политические моменты, после которых софтина медленно идёт попизде
Аноним 07/10/24 Пнд 16:34:04 978379 136
image.png 92Кб, 595x274
595x274
>>978376
>а изливаю недовольство ситуацией
А тебя она как-то касается? Ты сколько-то игр на годоте сделал? Или ты в него донатил свой код/деньги? Или ты так, бегаешь по всему интернету и ищешь на что бы оскорбиться?

>после чего
После чего на него стали набегать и срать-угрожать в комментах, отчего и заприваченный аккаунт и переезд в мастодон (пик). А официальное заявление его - заявление Godot Foundation, потому что он там председатель и основатель. Висит оно в твиттерах и годота и фонда, можешь сходить прочитать. Тебе самому не смешно как вы пытаетесь взять чьи-то слова и вывернуть их наизнанку?
Аноним 07/10/24 Пнд 16:40:40 978382 137
>>978379
Спасибо большое тебе за скрин, не видел его и не знал, что главный разраб просто даун.

>А тебя она как-то касается?
Три месяца назад начал разбираться, очень рад что это произошло сейчас и я не так много успел сделать, теперь ещё больше причин дропать, попенсурсность пока перевешивает, конечно.
Аноним 07/10/24 Пнд 16:46:06 978384 138
>>978382
>Три месяца назад начал разбираться
ЧСХ почти все оскорбившиеся именно такие же мимокрокодилы, а реальные потери - около 100 евро.

>главный разраб просто даун
Не сомневаюсь, ты сделаешь лучше. Ждем от тебя коммитов в редот, а то чет я смотрю у них сайт вместо плашки under construction теперь аж днс не резолвит, лул. Беги спасай спасителей геймдева.
Аноним 07/10/24 Пнд 17:13:54 978391 139
>>978384
Не, с нуля я не буду ничего делать и в мёртвые форки что-то коммитить. Я просто, скорее всего, вернусь к первоначальному плану делать клиентскую часть на UE, т.к. имею в нём опыт + у меня уже есть знакомый эксперт, готовый помочь за бабосы. У меня первая версия бэка на AWS создана, осталось только заняться вопросами масштабирования, клиент тестовый на коленке сделанный тоже есть, мне нужен был только движок для полноценного клиента, чтобы я мог в кишки залезть в случае чего и пока это ключевой момент, буду думать над этим риском.

В UE та же самая СЖВ тема, но он крупный и стабилен, а здесь хороший небольшой движок и сразу какая-то СЖВ ебала вылезла и ебанат на разрабе, сегодня они анимеаватарками и трамподебилами галлюцинируют, а завтра вся их деятельность схлопнется до гендернонейтральных названий переменных и отработку повесточки, начнут искать обижающие кого-нибудь игры на годоте и отменять разрабов.
Аноним 07/10/24 Пнд 17:21:02 978392 140
>>978387
Что это за там такая иконка робота оранжевая красивая? Не могу видео посмотреть.
Аноним 07/10/24 Пнд 17:30:39 978396 141
>>978392
форк gotoda, под названием Reddot который запилили после драмы неадекватных модеров из лгбт.
Аноним 07/10/24 Пнд 17:31:38 978397 142
Аноним 07/10/24 Пнд 17:36:09 978399 143
>>978396
А эти адекватные форкеры уже смогли поменять иконку внутри движка? Или до сих пор не могут понять, как это делается? Ну хоть спизженый логотип заменили, и на том спасибо.
Аноним 07/10/24 Пнд 17:43:53 978400 144
>>978399
Да там целая драма видео смотреть нужно. На рутубе посмотри
Аноним 07/10/24 Пнд 17:47:58 978401 145
>>978400
>На рутубе посмотри
Ахуеть, лахта на срачи про годот переключилась.
Аноним 07/10/24 Пнд 17:48:10 978402 146
>>978399
Так там за лого голосование все это время шло, сегодня только определили какое итоговое будет.
Аноним 07/10/24 Пнд 17:55:09 978404 147
>>978401
Ну тогда прокси ставь
Аноним 07/10/24 Пнд 18:05:57 978406 148
>>978387
>Записывает видно о игровом движке и его форке
>Не знает, что такое форк, потому полез в википедику узнавать
>Не смог понять, что такое форк, но все равно идёт нести своё невежество в массы.
Идиотам неважно на какую тему вещать, идиотам нужно просто поскорее записать видосик на хайповую тему, а другие идиоты и схавают. Уноси отсюда своё говно и больше не возвращайся.
Аноним 07/10/24 Пнд 18:07:48 978407 149
image.png 151Кб, 960x978
960x978
Ахуенные пулл реквесты редота с его нескучными обоями иконками
Аноним 07/10/24 Пнд 18:31:10 978415 150
Аноним 07/10/24 Пнд 18:51:48 978416 151
3р3пр3еп3п3.JPG 132Кб, 933x537
933x537
4п2п2п2п.JPG 36Кб, 848x532
848x532
12312313.JPG 34Кб, 939x553
939x553
Ну и что не нравится годоту 4.3 что текстуры постоянно то пропадют то то появляются взасимости от того где стоишь и куда смотришь?
Аноним 07/10/24 Пнд 18:55:44 978418 152
3333.JPG 59Кб, 953x577
953x577
34444.JPG 74Кб, 864x491
864x491
>>978416
Еще парочка с одного места только с разных сторон от забора что бы уж точно понятней было.
Аноним 07/10/24 Пнд 20:02:09 978423 153
>>978353
Под эти версии нет SDK для обработки платежей в тех же Яндекс играх
Аноним 07/10/24 Пнд 20:11:22 978424 154
nya.mp4 1185Кб, 440x800, 00:00:10
440x800
Как же хочеца сделоть свою 2D вайфу в Godot с анимацией типа видеорил. Разве я многого хочу?

И почему такая анимация редко бывает в играх?

прокрастинирую
Аноним 07/10/24 Пнд 20:36:33 978426 155
>>978416
>текстуры то пропадют то появляются
>>978418
>с разных сторон от забора
Гадать сложно, можешь модели скинуть? Либо дай ссылку, с которой их скачивал. У меня таких проблем с 3D в Godot нет - полагаю, твои модели в чём-то кривые. Тем более если скачивал бесплатные - они часто имеют много ошибок, которые приходится фиксить в Blender вручную. Но чтобы пофиксить, нужно знать, в чём могут быть проблемы, например:
- двойная геометрия: случается, когда случайно дублируешь меш и забываешь удалить/сдвинуть (исправить легко - обычно достаточно объединить вершины меша по расстоянию: m -> by distance);
- двусторонние материалы: в Blender по умолчанию материалы двусторонние, тогда как в геймдеве предпочтительнее использовать односторонние;
- разница в разрешении буфера глубины камеры: по умолчанию дальность видимости в Blender низкая.

Проблема могла начать проявляться из-за этого:
https://godotengine.org/article/introducing-reverse-z/
Вкратце - теперь разрешение буфера глубины выше вдали от камеры и меньше вблизи камеры - так сделано, например, в GTA V, чтобы рендерить на большой дистанции с меньшими проблемами.

Однако, не значит, что модели были правильными.
Аноним 07/10/24 Пнд 22:21:12 978433 156
Играю на Ludum Dare, и что ни открою, то игра на годоте, 6 из 8 попались. И пара была на каких то веб фреймворках.
Аноним 07/10/24 Пнд 22:36:48 978434 157
>>978391
>завтра вся их деятельность схлопнется до гендернонейтральных названий переменных и отработку повесточки
"Завтра" наступило больше 6 лет назад, например:
https://github.com/godotengine/godot/pull/22087
Даже Хуан изначально был против такого:
https://github.com/godotengine/godot/issues/7986#issuecomment-285355251
>I'm all for stuff like inclusion, equality, human rights, etc. But using less clear and accepted technical terminology for groundless cause (IMO) is not a good idea.

>>978341
>из-за того что туда залезла сжвшная падаль, которая всё в говно скатывает, то это говорит теперь о значительной нестабильности проекта
Прочитай целиком и внимательно эту страницу:
https://godotengine.org/code-of-conduct/
Основные пункты не менялись много лет. Так что успокойтесь уже - Godot всегда был частью "SJW" и останется таким же, ничего в его управлении не изменилось радикально за последние годы, все ключевые разработчики согласны с этим, а всем несогласным уже давно указали на дверь.

Единственное, что произошло на неделе - в твиттере ультраправые ВНЕЗАПНО обнаружили, что среди инструментов разработки бывают такие, что им противны чисто идеологически. Вот и разгорелся холивар, типа "вы неправильно движок делаете", несмотря на то, что в играх они вообще не шарят - проблема для них заключается в code of conduct.
Аноним 07/10/24 Пнд 22:39:18 978435 158
>>978391
Не пойму, чего ты ожидаешь, что за тобой будут бегать уговаривать остаться? Тред не про это.
Делать какие то выводы по истерикам в соцсетях это вообще смешное занятие.
Я недавно наблюдал за скандалами в Hasbro (D&D и MtG)
И каждый раз их проеб вызывал кучу видосов с "аналитикой" что вот вот их отменят.
Сначала они отправили по ошибке стримеру раньше времени карты, он их заспойлерил, и они прислали натуральных вышибал как в ГТА "вернуть их частную собственность". Все подняли шум на беспредел - и ничего, вообще никаких последствий.
Потом повторилась история с новым рулбуком D&D. Его разослали обзорщиком, а когда те сняли видосы, начали писать им C&D письма требуя заблюрить тексты книги. Все тоже подняли волну возмущения, топовые контентмейкеры, и ничего.
Была история когда они переиздали какую то шуточную расу бегемотов из космоса 80-х которая всех оскорбила потому что нацики. Вот там писали что их сейчас как отменят! И ничего, написали какой то корпоративный пост мол это часть истории, так и надо.
Потом была волна хейта что то вводят микроплатежи, то отнимают купленные PDF, то еще что-то, скандал на скандале! Потом был скандал что планируют заменять всех живых ГМов ИИ-чатботами, и игра станет без души! Там им такууую отмену прогнозировали, что вообще не оправятся! И ничего.
В конце концов появился новый рулбук, в котором сразу нашли несколько поломных механик, ломающих всю игру! Ну вот тут то уж точно надо все отменить и они разорятся! На каналах других настольных игр в комментах было беснование - мол я так и думал, хорошо что я давно сменил ту игру на другую, поделом им.
И что в результате? А ничего, в очередной раз продажи рулбука побили все рекорды.
При этом, был случай когда фильм по D&D таки отменили, не пойдя в кинотеатры и он провалился.
Ну такое угадывать 1 раз из 10.
Аноним 07/10/24 Пнд 22:42:02 978436 159
>>978434
Напомню что в твиттере многие написавшие вообще не разработчики, и не понимают как работает опенсорс (призывали "CEO" кого-то "уволить"). Потому что это вообще мало отношения к движку имеет, а имеет к проходившей в те дни агитации к выборам в США.
Аноним 07/10/24 Пнд 22:46:32 978437 160
>>978434
>https://godotengine.org/code-of-conduct/
Добавлю что похожие КОКИ лол имеют почти все опенсорс проекты, включая ядро линукса с его перманентно матерящимся Торвальдсом. Так и живем.
Аноним 07/10/24 Пнд 22:52:58 978440 161
>>978437
И кстати его по нему увольняли на полгода за мат, и что? Вернули, да и линукс никуда не исчез.
Аноним 07/10/24 Пнд 23:47:27 978446 162
17171481122940.jpg 307Кб, 1200x959
1200x959
>>978437
Да, gnome тоже прогнозировали смерть от засилья жопотрахов, нанятых по квоте, и воткнутого кока. Но вроде тоже живет пока, в десктоп тредах его все еще чаще вижу чем любую другую DE.
Аноним 08/10/24 Втр 05:26:37 978473 163
>>978384
>>978379
>>978371
>>978333
Тебе хоть платят за эти посты или ты лох, бесплатно копротивляющийся за гомобарена?
Аноним 08/10/24 Втр 11:13:06 978493 164
image.png 43Кб, 556x436
556x436
Делайте игры
Аноним 08/10/24 Втр 14:33:54 978526 165
>>978473
Лучше! Скачиваем тулзу scc (счетчик строк кода) и запускаем на репозитории годота. Получаем минимальную оценку в $120млн. Никакие "платы" не сравняться с тем, какую ценность Хуан (внесший львиную долю в миллион строк кода) с другими контрибуторами подарили человечеству.
Когда любой может скачать бесплатно продукт ценностью 120 миллионов долларов, тут никакая оплата в +15 центов не акутальна, лол.
Аноним 08/10/24 Втр 18:39:21 978558 166
>>978446
Вот тут ты не прав, гном стабильно деградирует скатываясь в анальный цирк. Он жив благодаря тому, что его пихают несколько крупных дистрибутивов и есть жирный пласт пользователей которым DE нужно только чтобы браузер запустить. С игровым движком такая ситуация не прокатит.
Аноним 08/10/24 Втр 19:18:35 978566 167
002e88a03695472[...].png 203Кб, 800x400
800x400
>>978526
>счетчик строк кода
>миллионов долларов
Прости, но это уж слишком жырно...

>>978558
>нужно только чтобы браузер запустить
В индустрии нужно только ассеты закинуть.

>>978473
>бесплатно копротивляющийся
А за кого копротивляются хейтеры?

У любого ПО есть преданные фанаты.
Только в опенсурсе фанатизм оправдан.
Аноним 08/10/24 Втр 19:48:11 978576 168
image.png 26Кб, 1129x209
1129x209
>>978566
>счетчик строк кода
>миллионов долларов
Я не совсем правильно посчитал, забыл удалить папку third party. чтобы считать только код годота.
Там в районе миллиона строк кода на с++. Так вышло на $50 млн долларов.
Но это некритичная неточность, ведь это оценка снизу, а ведь есть еще поддерживаемая 3-ка, в которой не весь код дублируется. А еще если прибавить некоторые мастхев ассеты.
Знаешь ли код не появляется сам по себе. Его пишут программисты. Утилита просто умножает его количество на зарплату.
Аноним 08/10/24 Втр 19:48:47 978577 169
image.png 19Кб, 1123x148
1123x148
Аноним 08/10/24 Втр 19:57:49 978580 170
Чего там по звуку, есть что-нибудь для генерации не всратых эффектов с помощью кода? Нагуглил генерилки в отстойном скрипяще-пердящем NES-стиле, не хочу такое, по ушам ездит.
Аноним 08/10/24 Втр 20:46:54 978588 171
Слушайте, так получается, что теперь канонично называть ноду с игроком не Player, а Gay или Faggot?
Аноним 08/10/24 Втр 20:55:16 978592 172
>>978576
>код не появляется сам по себе. Его пишут программисты. Утилита просто умножает его количество на зарплату.
Твоя утилита считает число строк и умножает их на попугаев, лол. Можно написать тупой процедурный генератор рабочего кода, который высрет за день миллиарды строчек без единой ошибки компиляции. Утилита насчитает тебе триллионы попугаев. И что?

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

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

Оценка проекта по числу строк - это мем уровня зарплаты программистам по числу новых строк.
Аноним 08/10/24 Втр 21:01:27 978593 173
>>978592
Даже читать не стал твою демагогию. Там какой нибудь торг за каждые 0,01 %
Аноним 08/10/24 Втр 21:09:15 978594 174
>>978576
>Знаешь ли код не появляется сам по себе
Вообще-то уже появляется. гпт уже могут писать код получше местных макак. Разумеется, что код написанный сеньором будет лучше, но много ли сеньоров по сравнению с тем, что уже может выдать гпт.
Аноним 08/10/24 Втр 21:19:28 978597 175
>>978588
>называть ноду с игроком не Player, а Gay
Ну давай разберём по частям слово player.

P = penis - популярное в английском сокращение.
Layer - это тот, кто делает lay, либо слой.
Lay - класть, накладывать.

Значит player - сокращение от penis layer:
- тот, кто накладывает пенисы друг на друга;
- слой уже наложенных кем-то пенисов.

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

Вопросы?

Гетеросекам предлагаю Vlayer (vagina layer).
Аноним 08/10/24 Втр 22:40:24 978616 176
>>978594
Годот уже написан, а нейронки еще только начнут писать код. Когда они напишут свой движок, тогда можно будет говорить о обесценивании других. В конце концов это нормально, поезда обесценили караваны повозок, но до них то они работали. Да и так то они тоже не бесплатно пишут, кто то считал, мол, если он тратит $20 в день за пару часов чатгпт, то в месяц это будет $600.
Аноним 08/10/24 Втр 23:42:38 978632 177
>>978597
Не, не катит. Предлагаю переделать твою архитектуру под мультиплеер.
Аноним 09/10/24 Срд 01:00:44 978652 178
1657534634634.webm 1285Кб, 478x852, 00:00:14
478x852
А вы как свои проекты пиарите вообще?

А то у нас в команде много людей шарящих за разработку и арты, но никто заниматься пиаром не хочет. Я вот сижу, ковыряюсь в Годоте и думаю что надо это все исправлять. Как проект продвигать еще на этапе разработки, чтобы у него больше 3 обзоров в Стиме потом было?
Аноним 09/10/24 Срд 01:08:33 978656 179
>>978594
>гпт уже могут писать код получше местных макак
Я уже как год слышу про то что программисты вымрут нахуй, а воз и ныне там. Художники уже три года как должны бомжевать.
Аноним 09/10/24 Срд 01:39:48 978660 180
>>978652
Самое эффективное, но и самое сложное - забрасываться к ютуберам/стримерам. Самое простое и бесполезное - забрасываться в геймдевовский эхо-чембер типа r/gamedev или /gd/

Теперь плоти за совет скрином вашей игры.
Аноним 09/10/24 Срд 01:42:09 978661 181
>>978656
Вымрут не вымрут, но я с помощью claude "написал" себе два шейдера с нуля, третий оптимизировал чтобы он фпс не еб.
Аноним 09/10/24 Срд 01:48:02 978663 182
image.png 819Кб, 1325x668
1325x668
>>978660
>Теперь плоти за совет скрином вашей игры.
Ну держи.
Скрин из тренчбрума. Для карт у нас через Trenchbroom + Qodot в Godot.
Аноним 09/10/24 Срд 01:49:41 978665 183
>>978663
Неплохо. Бумер-шутер делаете?
Аноним 09/10/24 Срд 01:51:38 978666 184
>>978665
Хоррор, банально да, но для первого реального проекта в Стим лучше что попроще. Шутан можно полгода только балансить так чтобы в него играть приятно было.
Аноним 09/10/24 Срд 02:09:28 978667 185
>>978666
Либо у нас в общем ньюфаготреде, либо в /b тред создай - там народу больше и игроков и школьников. Но в /б будь готово, что тебя отпидорасят намного жёстче, чем тут.
Аноним 09/10/24 Срд 02:10:04 978668 186
>>978667
промахнулся, извините
Аноним 09/10/24 Срд 02:11:45 978670 187
image.png 540Кб, 1280x711
1280x711
Аноним 09/10/24 Срд 02:19:30 978671 188
image.png 178Кб, 1080x360
1080x360
>>978670
>TikTok на втором месте
за що
Аноним 09/10/24 Срд 02:21:48 978672 189
>>978671
Такова современная жизнь, что есть, то есть.

А часть вообще забанена.
Аноним 09/10/24 Срд 06:08:09 978680 190
>>978416
Похоже на z-fighting, как будто у тебя два меша слились, на одном есть текстура, на другом нет
Аноним 09/10/24 Срд 19:50:59 978768 191
>>977039 (OP)
Делаю игру с гексами. Нужно ли мне использовать "Dijkstra’s Algorithm" или Astar закрывает все мои потребности? Не особо секу в теме. Алсо, есть ли туториал? А то все видео по astar только для стандартной квадратной сетки
Аноним 09/10/24 Срд 20:27:24 978783 192
>>978768
Разберись как в принципе работают эти алгоритмы, потом уже используй. Мне вот вообще D Star Lite зашёл
Аноним 09/10/24 Срд 21:08:55 978789 193
>>978768
Емнип Дейкстра это для клеток с равными значениями (например шахматное поле), а A более продвинутый с весами для переходов (например поле Цивилизации, с горами, полями, лесами, дорогами).
Еще кажется читал, что Дейкстра в отличии от А
работает если неизвестна конечная точка. Хз так ли это, но это может быть важно в каком-то эксплорейшене с закрытой информацией.

Обрати внимание что эти алгоритмы работают с узлами, а не квадратной сеткой, поэтому ты можешь переписать банально клеточный вариант в гексовый, просто надо в качестве соседей добавлять 6 гексов, а не 4 клетки.
Аноним 09/10/24 Срд 21:25:43 978790 194
>>978789
Дейкстра же как раз про стоимость переходов...
Аноним 09/10/24 Срд 21:44:44 978795 195
>>978790
Значит я неправильно понял.
Получается так
Broad Searh First без весов
Дейкстра с весами
А Стар с весами, и еще с оценочной функцией.
Оценочная функция должна быстро приблизительно оценить расстояние от текущего узла до конечного. Видимо поэтому он оптимальнее на квадратных сетках. Дейкста бы перебирал все грани по честному. АСтар может использовать оценочной функцией манхеттен и сначала проверять грани в направлении к цели.
Аноним 09/10/24 Срд 22:13:50 978797 196
>>978796
.NET позволяет писать кроме гдскрипт на C#, билд становится чуть тяжелее (может быть неприятно на мобилке) и вроде до сих пор недопилен экспорт в веб.
Обычная только гдскрипт, которого впрочем достаточно для огромного кол-ва игр
Кроме того я ярый приверженец продолжать сидеть на годот3
Годот3 это opengl, не очень соверменный, но работает много где. Включая мобилки, веб. Для него практически перестали выходить аддоны, но существующих хватит на много чего.
Годот4 это вулкан, сам по себе дает больше возможностей который скорее для АА+ проектов на десктоп с кучей спецэффектов. Для веба там куцый порт опенжл без всех фичей.
Учитывая реалии, например веб в яндекс игры, я продолжаю сидеть на годот3, лоуполи 3д либо 2д, с фиксом звука через js.
А игру мечты точно точно когда нибудь на годот45 сделаю.
Аноним 09/10/24 Срд 23:24:56 978803 197
>>978797
>я продолжаю сидеть на годот3
Сэйм, братюня
Аноним 10/10/24 Чтв 00:45:45 978813 198
image.png 110Кб, 1173x488
1173x488
image.png 61Кб, 1371x403
1371x403
Здравствуйте. Столкнулся с такой проблемой:
1. Имею глобальный скрипт Signals, который использую для передачи сигналов.
2. Пользователь вводит текст в соответствующее поле и нажимает отправить. Создается экземпляр сообщения. В коде отправляется сигнал с текстом.
3. Сигнал принимается всеми созданными сообщениями, а не только что созданным.
Я сталкивался с подобной проблемой, когда типа наносишь урон одному врагу, а получают все, но уже не помню, как это исправить, если вообще исправлял.
Как вариант - применять соответствующую функцию сообщения, но это вариант, т.к. мне так же нужен будет текст для обработки в других сценах(Чат-бота создаю).
Поэтому мне бы хотелось добиться того, что сигнал остается, желательно глобальным, но применяется лишь к только что созданному сообщению.
Аноним 10/10/24 Чтв 00:56:03 978816 199
>>978813
Хз, я сплю и лень вникать. Подходы такие - ты либо цепляешь сигналы ровно на нужные ноды, либо при получении сигнала через дополнительные аргументы (передаются через коннект) проверяешь а должен ли получатель вообще обрабатывать полученное.
Аноним 10/10/24 Чтв 01:18:57 978817 200
>>978811
Но ведь писать код быстрее, чем таскать лапшу
Аноним 10/10/24 Чтв 01:53:26 978820 201
Аноним 10/10/24 Чтв 02:07:51 978822 202
>>978813
Тут сигнал не нужен.
Там где ты делаешь add_child(message) назовем это место менеджер. Потому что он ей управляет, выставляет в нужное место.
Так вот менеджер уже и так держит в руках в этот момент объект message
Ты можешь сделать тупо вызов функции которую сам задашь message.set_message(,,,)
Или присвоить переменную message.my_text = ...
Второе может быть проперти с setget если надо дополнительная логика внутри той сцены.

Если же говорить про сигналы. Сигнал получают все объекты, которые на него подписались. Ну ты каждый подписывал, вот они все и продолжают получать. Вообще то от сообщений и отписываться можно.
Сигналы по сути это такой хитрый способ вызывать функции, так то. Просто без указания объекта.
Вместо message.function(args)
Делается message.connect(signal);
emit_signal(signal, args)
И если очень надо, то ты в аргументах можешь передать и что-то вроде айдишника объекта которому надо принять сигнал.
Конечно это будет неоптимально, ведь сигнал разошлется все равно всем, но каждый объект может проверить, ему ли это сигнал.

Также тут теоретически может быть подводный (не факт, что в этом случае). Допустим ты создаешь объект и тут же посылаешь сигнал. Вот тут я точно не помню, но не уверен, не может ли так получиться, что объект еще не зарегистрирован, и он не успеет получить сигнал.
Аноним 10/10/24 Чтв 02:10:48 978823 203
>Вместо message.function(args)
Дальше перепутал,
some_signal.connect(signal, message)
Вообще это писал к тому, что в данном случае переменная message нужна в момент подписки, но в отличии от вызова функции, она не нужна в месте вызова функции, а будет найдена автоматически
emit_signal(signal, args)
Аноним 10/10/24 Чтв 10:00:12 978841 204
Аноним 10/10/24 Чтв 10:01:31 978842 205
>>978831
>Ты вообще не понимаешь, как система выглядит в целом
Для этого пишут документацию проекта и всякие там uml диаграммы
Аноним 10/10/24 Чтв 10:04:30 978843 206
>>978831
Та, то есть ты хочешь сказать что в сложном проекте ты в лапше разберешься?
Если это шутка то не очень смешная.

И как быда uml никто не отменял.
Про дебагеры я вообще молчу.
Аноним 10/10/24 Чтв 10:09:04 978844 207
>>978840
Ты про удаление визуал скриптинга?
Это тупиковая херня, которая даже в ue особо нахер не нужна, по сути она нужна чтобы не ебаться с утечкой памяти и геймдизайнер мог быстро и коряво собрать какую то фишку.
Аноним 10/10/24 Чтв 10:42:27 978849 208
>>978844
Не корми, просто репорть додика.
Аноним 10/10/24 Чтв 10:56:54 978850 209
>>978822
Спасибо, у меня получилось. :)
Аноним 10/10/24 Чтв 12:28:57 978857 210
>>978831
Как по мне, код гораздо проще и читабельнее. У меня от лапши начинает болеть голова и я очень быстро теряю смысл. А код читается легко, а если что-то большое, то документация. Но обычно и так понятно, если программист придерживается нормального нейминга.
Аноним 10/10/24 Чтв 14:53:06 978867 211
>>978859
Ты, это... на хуй иди, наверное...
Аноним 10/10/24 Чтв 15:09:40 978870 212
1638573956954.png 1861Кб, 762x1920
762x1920
>>954699 (OP)
Собираюсь сделать игру, меня интересует редактор персонажа.


Хочу брать 3д ассеты (Daz 3d или Blender но думаю лучше Daz 3d)
и мне надо сделать редактор персонажа со сменяемой одеждой и изменениями тела.

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

Что есть готового на эту тему ?

Какой-то может плагин/екстеншен классный в библиотеке годот который решает эту задачу ?

Так же если есть текстовый гайды тоже буду благодарен

Так же интересны редакторы 2д со сменяемой одеждой но походу опять же с моего поверхностного поиска это окажется гораздо сложнее потому что неоткуда брать ассеты с одеждой и сложнее подгонять их под 2д а для 3д есть большое количество уже готовых.
Аноним 10/10/24 Чтв 15:27:59 978873 213
>>978870
Блядь, научитесь составлять реквесты нормально. Тебе надо реализовать редактор на движке или редактор чтобы картинки там делать для спрайтов? Ёбаный в рот. Если второе, то даз это литерали редактор персонажа, если первое, смотри как это кодить/пизди готовое. Накотал простыню, вопроса так и не задал.
Аноним 10/10/24 Чтв 15:43:07 978876 214
>>978873
ну надо чтоб в игре чел создавать мог персонажа и потом переодевать его и чтобы одежда менялась
Аноним 10/10/24 Чтв 15:47:15 978877 215
>>978870
>без начала создания даже самой игры что меня очень угнетает
Так и не начинай редактор персонажей.

Тебе первое что нужно собрать это минимальную демку геймплея. На остальное похуй, на графон тоже.
Аноним 10/10/24 Чтв 15:47:39 978878 216
>>978876
Самый простой вариант - делаешь в редакторе кучу пресетов-болванок, потом добавляешь их в качестве "опции" сменой по кнопке в условном "гардеробе" в игре. Ничего сложнее тебе не надо/ты не осилишь, судя по уровню вопроса.
Аноним 10/10/24 Чтв 15:53:08 978879 217
>>978859
Годот перекрывает все мои потребности в разработке, а именно ныть итт, так что иди нахуй
Аноним 10/10/24 Чтв 16:01:32 978881 218
>>978870
>Собираюсь сделать игру
>меня интересует редактор персонажа.
Буквально одна из самых простых вещей

>Что есть готового на эту тему ?
> все гайды на ютубе как будто изобретают велосипед каждый раз c нуля
Бери любое понравившееся решение и интегрируй в свой проект

>предвкушается уже работа только над этой частью месяцами
МВП редактора делается за неделю новичком в годоте

>без начала создания даже самой игры что меня очень угнетает.
Ты вообще себе представляешь процесс создания игры?
А вообще вот тут тебе анон правильно написал >>978877

Что ты вообще делаешь? Какова твоя идея? Может тебе лучше присмотреться к чему-то вроде рпг мейкера?
Аноним 10/10/24 Чтв 16:03:35 978882 219
>>978881
>Буквально одна из самых простых вещей
Ну это смотря какой редактор, если там как тут >>978878 просто 3d модельки свапать, то простая, но он там походу полноценный йоба редактор хочет иметь.
Аноним 10/10/24 Чтв 16:06:16 978883 220
>>978882
>полноценный йоба редактор хочет иметь
Ну в соло/инди разработке это особого смысла не имеет, т.к. на редакторе разработка и кончится
Аноним 10/10/24 Чтв 16:06:19 978884 221
image.png 1758Кб, 1280x720
1280x720
>>978876
Смотря какой уровень детализации. Если по пресетам пощелкать на уровне моровинда - нарезаешь свои 3д/2д модельки на меши/спрайты и перещелкиваешь соответственно. Если уже как обливионе со слайдерами то хуй знает, не рекомендую туда лезть.
Аноним 10/10/24 Чтв 16:08:15 978885 222
>>978883
Я думаю она у него ещё до редактора закончится, на ютуб роликах.
Аноним 10/10/24 Чтв 16:08:48 978886 223
>>978884
А как в геншин импакт?
Аноним 10/10/24 Чтв 16:19:06 978891 224
nkPo5tch59w.jpg 41Кб, 600x600
600x600
Аноним 10/10/24 Чтв 16:30:22 978895 225
Аноним 10/10/24 Чтв 17:52:55 978907 226
>>978813
Читай документацию вместо того, что читаешь.
https://docs.godotengine.org/en/stable/classes/class_signal.html

Объявить сигнал:
>signal message_sent(text: String)
Запустить сигнал:
>message_sent.emit("text")
Подключение сигнала:
>sender.message_sent.connect(_on_message)
Обработчик сигнала:
>func _on_message(text: String) -> void:
Это новый, лучший способ для Godot 4+.

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

Тем более некорректно Control-ноды используешь:
1. Node2D здесь вообще не нужен, он портит Control.
2. Вместо Panel тебе явно нужен PanelContainer.
3. Для чата потребуется ScrollContainer.
4. Для адаптивного UI нужно больше контейнеров.

>нужен будет текст для обработки в других сценах
Так и храни этот текст в каком-то месте, например:
>var chat_history: PackedStringArray
https://docs.godotengine.org/en/stable/classes/class_packedstringarray.html
Если нужна дополнительная информация, такая, как отправитель, время отправки/получения сообщения и прочее, тогда Dictionary или свой кастомный класс.

А потомки Node, в частности Control - это "viewer":
https://en.wikipedia.org/wiki/Model–view–controller
Тебе необходимо сначала создать "model".

Алсо, глобальные сущности - опасный костыль, их желательно избегать при возможности. Чем меньше глобальных сущностей в твоём проекте, тем лучше.
Аноним 10/10/24 Чтв 17:54:07 978908 227
Аноним 10/10/24 Чтв 18:00:18 978911 228
2022-09-09a.gif 2832Кб, 1188x795
1188x795
71067042-24782d[...].gif 6012Кб, 640x360
640x360
image.png 853Кб, 1920x1080
1920x1080
>>978870

Изучай
Для 3ки
>>874602 →
https://github.com/fernandolv33/lowpoly-chmaker
https://github.com/smix8/Godot3DCharacterEditorWardrobe
https://github.com/Grumoth/godot-character-creator
Для 4ки
https://github.com/TaperingBirch/Character-Creation-Demo
хз
https://github.com/RiseRobotRise/CharacterStudio
https://github.com/game009f/godot-character-creation
Чел делает платный
https://thowsenmedia.itch.io/godot-character-creation-suite
Он в какой то момент выкадывал на гитхаб, но сейчас интернет архив уронили и не посмотреть.
Аноним 10/10/24 Чтв 18:27:27 978917 229
>>978808
>визуальный скриптинг они зря убрали
Не зря. Он оказался никому не нужен. Читай это:
https://godotengine.org/article/godot-4-will-discontinue-visual-scripting/

>>978811
>Годот не нужен без визуал скриптинга.
У Godot есть GDSctipt, в отличие от других движков.
Старый VisualScript можно вернуть и доработать:
https://github.com/godotengine/godot-visual-script

>Я дебил что ли, всё вручную писать?
>У меня одна жизнь.
Когда я пытался изучить VisualScript в Godot 3.x, быстро осознал, что мышкой таскать эти дурацкие ниточки намного дольше и сложнее, чем быстро, решительно строчить код. Может быть, лично ты мучаешься из-за своей низкой скорости печати?

>>978831
>насчёт наглядности, код - просто сосёт.
>Когда проект сложный, это что-то с чем-то.
Это проблема архитектуры проекта, а не кода.

>Старое забывается.
>не понимаешь, как система выглядит в целом.
Для этого существует дизайн-документ игры.
GDScript также позволяет писать документацию:
https://docs.godotengine.org/en/stable/tutorials/scripting/gdscript/gdscript_documentation_comments.html

>>978859
>где над игрой работают десятки человек.
>без визуального представления не обойтись.
ПРОСТО не подпускай слабоумных дизайнеров к редактированию кода. Это твоя работа, директор.

>А в одиночку игру высокого класса сделать невозможно.
Почему же? Возможно. Буквально сегодня читал:
https://en.wikipedia.org/wiki/UnReal_World
- начал ещё в 1992 году
- делает в гордом одиночестве
- ещё в нулевых собрал кучу наград
- продолжает развиваться до сих пор (2024)
>UnReal World has been praised for its depth, realism, atmosphere and immersion, and value. In 2015, Rock, Paper, Shotgun listed UnReal World as the 26th best role-playing game on PC.
Аноним 10/10/24 Чтв 18:45:01 978925 230
>>978859
>над игрой работают десятки человек
Ещё забыл добавить - в Godot есть это:
https://docs.godotengine.org/en/stable/classes/class_graphedit.html
Изначально эта система создавалась и до сих пор используется для визуальных шейдеров. На счёт скриптования не знаю, та же это система или нет, однако, ничто не мешает использовать её для собственных аддонов. Ограничений по сути нет, совершенно любой может создавать свой аддон.

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

Более того, такой кастомный аддон будет намного полезнее любого языка общего назначения, ибо он решает конкретную, чётко поставленную задачу:
https://ru.wikipedia.org/wiki/Предметно-ориентированный_язык
VisualScript же был аналогом GDScript, и поэтому обосрался - визуально общее программирование совершенно никому не нужно, т.к. слишком много низкоуровневых операций, которые проще текстом набрать, чем ниточки между блоками натягивать.
Аноним 10/10/24 Чтв 19:08:00 978940 231
>>978870
>Хочу брать 3д ассеты
>неоткуда брать ассеты с одеждой и сложнее подгонять их под 2д а для 3д есть большое количество уже готовых.
На готовых ассетах ты далеко не уедешь...

Если у твоего 3D меша есть блендшейпы, тогда:
https://docs.godotengine.org/en/stable/classes/class_meshinstance3d.html#class-meshinstance3d-method-set-blend-shape-value

Если блендшейпов нет, то всё НАМНОГО сложнее.

Из личного опыта: лучше создавать персонажа в Блендере на собственном скелете с анимациями, экспортировать в Godot одним GLTF файлом, и вся кастомизация в Godot будет состоять из:
- значения блендшейпов (размер груди, форма лица);
- переключение видимости разных мешей (одежда);
- изменение материала (текстура, мелкие детали);
- изменение цвета (тон кожи или цвет одежды).
В Godot тебе нужно только UI сделать и всё.
Аноним 10/10/24 Чтв 19:52:08 978951 232
image.png 132Кб, 593x877
593x877
Рыготеры успели обосраться так и не выдавив первый релиз, твиттер Х им аж плашку залепил про врети. Уже представляю как они запорят гит и утонут в мердж конфликтах.
Аноним 10/10/24 Чтв 19:58:11 978955 233
>>978951
Пиздец кринжуха, прямо как будто из этого раздела кто-то, нихуя не сделано, ничего не готово, задо гонору дохуя, а в планах захват мира своим продуктом.
Аноним 10/10/24 Чтв 20:48:44 978980 234
>>978870
Там в шапке есть редактор персонажей, но он довольно стар и автор куда-то пропал.
Аноним 10/10/24 Чтв 21:11:58 978984 235
>>978911
>1 пик
Почему он нажимает на кнопку "male", но генерируются одни женщины?
Аноним 10/10/24 Чтв 21:18:35 978985 236
>>978984
За такой вопрос тебя надо забанить в движке Godot, зарепортить куда надо следует.
Аноним 10/10/24 Чтв 22:09:18 978989 237
human-body-type[...].jpg 162Кб, 1000x1000
1000x1000
>>978984
>генерируются одни женщины?
Попробуй найти этих женщин на пикриле.
Аноним 10/10/24 Чтв 22:34:39 978996 238
Стоит ли ебаться с цветокоррекцией, делать холодные темные и теплые светлые? Начитался советов, сижу мозги ебу и не могу отделаться от впечатления что насоветованные мне синеватые тени выглядят всрато.
Аноним 10/10/24 Чтв 22:37:56 978998 239
>>978881
Что ты вообще делаешь? Какова твоя идея?

Adult игру дейтинг сим

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



>Ты вообще себе представляешь процесс создания игры?

Ну там gameloop хуе-мое, несколько механик,карта мира с переключением локаций, смена день-ночь, ходить на работу, платить за квартиру

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

>>978877
Вот за это вот спасибо, такое вот и пришло первое в голову но появились сомнения и мысли что это какая-то костыльность и мб есть какие-то лучшие решения и решил спросить тут.
Я прогнал через декомпилятор и реверсинженернул одну игру свою любимую и ахуел сколько там слоев на каждую часть тела, сколько видов вариаций глаз, форм рта на каждый эвент чтоб отобразить эмоцию и там редактор персонажей встроенный но мне удалось только спрайты вытащить но даже чтобы из них из всех готовых 2д кусочков тела воссоздать просто систему всю это ебанешься просто. Там достаточно много деталей а не примитив уровня rimworld

>>978911
Спасибо

>>978940
По-моему в daz-3d все гораздо проще ну и мне нужна одежда а как и где я буду брать это для блендера я хз, на сколько я понял это нереально взять одежду с одной модели и натянуть ее на другую модель другого автора а в daz-3d одежда натягивается на любую модель изи что просто имба фича

>>978980
Я его смотрел, он вроде действительно заброшен
Аноним 10/10/24 Чтв 23:28:41 979004 240
Здравствуйте, уважаемые годотеры. Как вы храните т.н. data в игре? Диалоги, как, например, в визуальной новелле? Как вы бы хранили локализацию к ним? Как производные от Resource ведь, правильно? Или в json, может быть? Каким бы образом проигрывали эти очереди диалогов? Как бы привязывали эмоции актеров к конкретным инстансам диалога? Сижу вот, голову ломаю, как сделать подобную систему масштабируемой и удобной в пользовании, все не могу придумать изящное решение. Хочется уже в лоб через енамы все (эмоуты, актеров) прописать, да только в будущем это будет головная боль.
Аноним 10/10/24 Чтв 23:29:43 979005 241
image 239Кб, 451x479
451x479
зашёл в туториал по годоту от февраля 2023, а там такое...
Аноним 10/10/24 Чтв 23:33:08 979006 242
>>979004
Не собираюсь локализировать, храню в экспорт-переменных, пишу в инспекторе.
Аноним 11/10/24 Птн 00:27:17 979016 243
GetGalleryItem.[...].png 840Кб, 800x462
800x462
GetGalleryItem.[...].png 894Кб, 800x462
800x462
хоспадии
Аноним 11/10/24 Птн 00:56:48 979022 244
1728597316718.mp4 3371Кб, 1920x1080, 00:00:29
1920x1080
Делайте игры
Аноним 11/10/24 Птн 01:04:33 979025 245
>>979016
Думал об этом же, примерно в то же время.
Аноним 11/10/24 Птн 01:05:32 979026 246
Аноним 11/10/24 Птн 01:07:30 979028 247
подумай
Аноним 11/10/24 Птн 01:24:00 979033 248
>>979004
Весь текст в csv файлах разной локализации. В конкретных узлах подвязываю к ключ-слову. Сорт оф словарь
Аноним 11/10/24 Птн 01:25:55 979035 249
>>978989
Буквально женщина с ромбом и прямоугольником в верхнем ряду
Аноним 11/10/24 Птн 01:33:46 979037 250
.NET версия - это обычный godot, но + скриптинг на C#?
А он нужен вообще?
И на каком языке скриптниг быстрее всего работает?
Аноним 11/10/24 Птн 01:47:09 979039 251
>>979037
Для тебя язык узким местом не будет в любом случае, не переживай. Если С# не знаешь - бери обычный годот с гдскриптом.
Аноним 11/10/24 Птн 01:47:13 979040 252
>>979037
C# быстрее, но хуже интеграция с движком.
Аноним 11/10/24 Птн 02:16:48 979042 253
>>979033
Ого, так Godot автоматически csv как файлы локализации импортирует. Интересно. А как можно средствами csv полям с сообщениями присвоить актеров, что эти сообщения "производят"? Записывать в само поле имя/идентификатор, а затем его отделять? Или создать столбец искусственной локализации actors, и из него по индексу подхватывать? Или есть поудобнее способ?
Аноним 11/10/24 Птн 08:12:42 979050 254
>>979037
Если хочешь писать на с#, то нужен
Аноним 11/10/24 Птн 09:14:23 979055 255
>>979039
А .Net версия без гдскрипта что ли?

>>979040
Что значит хуже, это может быть критично?

>>979050
А есть версия, где поддерживается всё и сразу, чтобы не париться?
Аноним 11/10/24 Птн 10:17:22 979065 256
>>979055
.Net версия поддерживает всё сразу
Аноним 11/10/24 Птн 10:36:25 979069 257
>>979065
А скриптинг на C++ до сих пор поддерживается или больше нет?
И этот код компилируется перед выполнением или нет?
На летку это происходит или нет?
И есть ли его интерпретатор?
Аноним 11/10/24 Птн 11:07:00 979085 258
>>979069
C++ есть всегда и везде. Чел, раз ты задаешь такие вопросы и делаешь это так долго и упорно, ничто из этого не станет для тебя узким местом. Просто бери базовый годот и начинай делать на гдскрипте. Хватит отлынивать.
Аноним 11/10/24 Птн 11:27:21 979088 259
>>979085
Ох уж эти вопросы в стиле - какое очко быстрее высрет кал? А то я боюсь что кал будет поступать в глодки игроков не достатично быстро и бесперебойно.
Ведь у меня 2 пульки летят и я боюсь что мой говнокод на годоскрипте будет тормозить на плюсах говнокод не будет, мне так сказали.
Аноним 11/10/24 Птн 11:28:28 979089 260
>>978996
>Стоит ли ебаться с цветокоррекцией
Скриншот покажи хоть. Какой у тебя стиль?

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

Так что нужно смотреть на конкретную сцену.
Аноним 11/10/24 Птн 11:45:00 979093 261
>>979069
>А скриптинг на C++ до сих пор поддерживается
1. Можно форкнуть движок и менять его C++ код.
2. Можно https://github.com/godotengine/godot-cpp
>И этот код компилируется перед выполнением
Естественно, ты должен скомпилировать исходники.
>На лету это происходит или нет?
Не знаю; но знаю, что C++ медленно компилируется.
Вот, например, Pascal компилируется мгновенно.
>И есть ли его интерпретатор?
Зачем тебе интерпретатор C++?

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

Как минимум, в C++ ты должен сам следить за выделениями и освобождением памяти. Если не уследишь, то получишь утечку (RAM заполняется до переполнения и Windows останавливает твою игру).

Как разные языки решают управление памятью:
C# - лишние объекты заполняют память как будто возникла утечка, а потом сборщик мусора тормозит приложение и распутывает клубок зависимостей, определяя, какие объекты всё ещё кому-то нужны.

GDScript:
1. Потомки RefCounted, включая Resource: считают количество ссылок на них, удаляются сами сразу, как только счётчик ссылок дойдёт до нуля. Нюанс: нужно избегать циклических ссылок (А -> Б, Б -> В, В -> А).
2. Потомки Object и Node: нужно удалять вручную. Разница между free() и queue_free() в том, что free() удаляет объект сразу, а второе - под конец кадра. Поэтому для Node лучше использовать queue_free().
Аноним 11/10/24 Птн 11:57:12 979097 262
>>979091
>Будет. 100%.
Пускай код будет на 50% медленнее, это так плохо?

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

>Если есть хоть какая-то логика сложнее чем 2+2
Тут тоже не всё так однозначно.

1. Если у тебя там вызовы API движка, то ты в любом случае ограничен бутылочным горлышком API. А в некоторых случаях код на GDScript будет быстрее. Потому что GDScript оптимизируют под Godot. Это причина, по которой не взяли существующие СЯП.

2. Если ты делаешь какой-то сложный алгоритм, то удобнее и быстрее его разрабатывать на GDScript. Потенциальные задержки на компьютере игрока вообще не должны тебя волновать, ибо ты вряд ли доберёшься до этого. А потом, если вдруг, по некой волшебной причине, ты доберёшься до релиза и внезапно кто-то захочет поиграть в твою поделку, то переписать существующий код на другой язык намного проще, чем изобретать что-либо с нуля.
Аноним 11/10/24 Птн 12:13:21 979101 263
>>978998
>По-моему в daz-3d все гораздо проще
Вот только там нужно платить за каждую шмотку:
https://bugs.daz3d.com/hc/en-us/articles/207532343-What-Can-I-Use-Daz-3D-Figures-for-Legally

>нереально взять одежду с одной модели и натянуть ее на другую модель другого автора
Реально, если разбираться в Blender.

>Adult игру дейтинг сим
>абсолютно не умею рисовать ниче и тем более моделить или кастомить модели так что все собирать буду из пресетов
Для симулятора свиданий тебе нужно очень много оригинального графического контента. Кто захочет играть в очередной ассетфлип в этом жанре? Те же модельки из Daz3D слишком бросаются в глаза - я вот вообще игнорирую всё, что похоже на Daz3D.

Так что либо учись графике сам, либо ищи кого-то, кто согласится за деньги помогать с графикой.
Аноним 11/10/24 Птн 12:28:28 979102 264
>>979091
>Будет. 100%.
Та ну, ты угараешь 99% логики в играх (исключая некоторые жанры типо стратегий и т.д.).
Не будут тормозить пока ты массив в массив не запихнешь.

>>979091
>Если есть хоть какая-то логика сложнее чем 2+2 её надо выносить в нормальные языки.
Это из разряда вредных советов - все надо писать на c++. А потом через 7 лет разработки выкатывать рогалик на 16 отзывов в стиме
Вообщем то даже на ue шной лапше есть игры и нормально. В ue5 они даже нативизацию отключили и стало, не просто медленно, а просто ад как медленно и ничего.

>>979093
>Неоптимальный код можно высрать на любом языке. Компилятор C++ применяет оптимизации, но если не разбираешься в C++, тогда он тебе вряд ли поможет.
>
>Как минимум, в C++ ты должен сам следить за выделениями и освобождением памяти. Если не уследишь, то получишь утечку (RAM заполняется до переполнения и Windows останавливает твою игру).

ЗАчем ты мне это пишешь я имею об этом представление?
Аноним 11/10/24 Птн 12:31:00 979103 265
>>979004
>Как вы храните т.н. data в игре?
Зависит от того, что это за данные...
>Как вы бы хранили локализацию
https://docs.godotengine.org/en/stable/tutorials/i18n/
>Каким бы образом проигрывали эти очереди диалогов? Как бы привязывали эмоции актеров к конкретным инстансам диалога?
Можешь попробовать готовые решения:
https://github.com/dialogic-godot/
https://github.com/rakugoteam/
Есть много других, но эти два вроде как основные.
Аноним 11/10/24 Птн 12:39:43 979105 266
>>979102
>ЗАчем ты мне это пишешь
Потому что ты задаёшь вопросы, которые задают новички, которых волнует только "код быстрее". В программировании скорость рантайма не всегда настолько важна, чтобы жертвовать остальным.

>просто ад как медленно и ничего
Фотореализмодрочеры любое говно схавают, лишь бы фотореалистично выглядело. А то из подвала они никогда не выбираются, внешний мир не видят.

>пока ты массив в массив не запихнешь
Зависит от размеров массивов. Сетка 10x10 будет нормально обрабатываться даже на CPU из 2007.
Аноним 11/10/24 Птн 12:46:27 979106 267
Не кормите жирных тупых троллей. Делайте игры.
Аноним 11/10/24 Птн 12:57:31 979109 268
>>979101
>Вот только там нужно платить за каждую шмотку:
хз полно бесплатных пиратских асестов просто дохуище

ифибо:
>аряяя ты должен использовать только лицуху и за все уплатить
я так не думаю, отьебись, да я пиратская пидораха и что ты мне сделаешь ?


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

> Для симулятора свиданий тебе нужно очень много оригинального графического контента.
Там главное история-сеттинг и нишевые фетиши.

> Кто захочет играть в очередной ассетфлип в этом жанре?
открываешь топ кассовых игр в этом жанре и обнаруживаешь там на 90% его забитым именно таким. Ты видимо не смотрел вообще ассортимент и количество этих ассетов потому что их просто нереальное количество + можешь относительно не сложно кастомить модели пересаживая им лица от других моделей и у тебя уже оригинал прессет а не просто дефолтный ассет.

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

>Так что либо учись графике сам
> либо ищи кого-то, кто согласится за деньги помогать с графикой.
Я ничего не имею против того, чтобы и учиться и брать помощь за деньги в графике если дело пойдет но на данном этапе overthinking и изучи концепцию lean startup-ов и сделай игру свою хоть какую-нибудь и доведи до стора
Аноним 11/10/24 Птн 13:02:20 979111 269
Аноним 11/10/24 Птн 13:04:00 979112 270
>>979105
Я не спрашиваю а стебусь, если соорказм был не понятен ... Ну бывает.

Все прекрасно понимают что маленькие массивы быстро разберутся на любом языке.
Это утрированный пример, для понимания того что от говнокода язык не спасает и наоборот.
Аноним 11/10/24 Птн 13:39:40 979121 271
>>979055
>Что значит хуже, это может быть критично?
Да, ну из самого очевидного и, что называется, "на поверхности" - нет поддержки интерфейсов шарпа. То есть IDE не будет жаловаться на интерфейсы, интерфейсы это ведь естественно для шарпа. Но результат в движке не будет тем, чего ты ожидаешь. Точнее результата не будет, но ошибок ты при этом не увидишь. И так на каждом шагу с С#. По крайней мере, было около года назад.
>>979113
На gdscript пиши. КОГДА, ВДРУГ и ЕСЛИ ты почувствуешь, что преисполнился, что скриптовые языки это больше не языки твоего уровня, и тебе с ними тесно, тогда уже сможешь расчехлить канпеляцию и углубляться в C++ внутрянку годота. Но до того обычно не доходит, хватает и gdscript. Дополнительные модули разве что иногда некоторые пишут на плюсах. Но это опять-таки перекомпиляции движка по полчаса - лично мне не хотелось бы таким заниматься. А про тебя я не знаю.
Аноним 11/10/24 Птн 13:57:30 979125 272
>>979121
Ладно, спс, определился, качну обычную стандартную версию движка и на стандартном дефолтном гдскрипте буду учиться писать.

Мне бы ещё годный мануал для новичка с азов до про, английский на слух не воспринимаю.
Аноним 11/10/24 Птн 13:59:35 979126 273
>>979121
Еще нет изменений на горячую, вообщем постоянный перезапуск проекта на шарпе, на гдс он вроде более мение нормально робит

Вообще слабо себе представляю места где прям таки тебе нужно перейти на ++ или что-то подобное. Обычно это моменты которые вызывают вопрос в стиле "а ты уверен что тебе нужен годот в принципе" или "ты уверен что в 1 лицо без опыта такое осилишь"
Аноним 11/10/24 Птн 14:01:48 979128 274
>>979125
по годоту вообще мало чего то годного, на памяти был какой то 1 курс но не помню название.

Просто делай по годотовскому мануалу и не парься, или найди какой нить курс как сделать товер дефенс или что-то подобное.
Повтори, доделай для себя и там научишься.
Аноним 11/10/24 Птн 14:19:06 979129 275
>>978813
>Чат-бота создаю
На GPT нейросетях или как-то иначе?
Интересно, т.к. тоже что-то такое пробовал.
Аноним 11/10/24 Птн 15:09:49 979138 276
Аноним 11/10/24 Птн 15:21:00 979140 277
>>979109
>полно бесплатных пиратских асестов просто
Тогда ты можешь из чужих игр ассеты рипать...
>да я пиратская пидораха и что ты мне сделаешь
Я - ничего, но игроки, площадка и правообладатели оригинальных ассетов тебя могут и наказать.
>выпущу пару коммерчески успешных проектов из пиратских ассетов
Размечтался... Во-первых, добиться коммерческого успеха на ассетфлипах крайне сложно. Во-вторых, засветишься - и к тебе придут сдирать шкуру за ворованный контент. Притом по наводке игроков.

>открываешь топ кассовых игр в этом жанре и обнаруживаешь там на 90% его забитым
Симуляторов свиданий 3.5 на весь мир, и те японские.

Сразу скажу, что не всякая игра, что называет себя "симулятором свиданий" им является. Например, популярная Crush Crush - это кликер, а не симулятор свиданий. HuniePop - это три-в-ряд, а не симулятор. Множество игр имеют девочек и сюжет "свиданий", но это не делает их симуляторами свиданий.

>Странно что еще не предложил изобрести
Движок и язык геймплей не делают. Если у тебя все визуальные ассеты уже были в других играх, тогда игроки, пусть и тупые, но заметят и обосрут. А потом прилетит DMCA от какой-нибудь нинтенды и всё...

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

Воровать ассеты в геймдеве всегда было опасно, а последнее время тем более из-за прецедентов и агрессивно настроенных игроков...
Аноним 11/10/24 Птн 15:24:19 979142 278
image.png 222Кб, 823x361
823x361
>>979126
>места где прям таки тебе нужно перейти на ++
По моему опыту обработка двумерных массивов, например: Game of Life, попиксельная обработка чего-то (например песочница аля нойта), динамический взрыв в радиусе с изменением тайлов аля майнкрафт.
Вон какой то свежий бенч, C# быстрее в 25 раз, с++ быстрее еще в 4 раза (в 100 раз).
Compute shaders не учитываю, поскольку их нет в 3-ке (если кто то не завез только), во вторых я ими пользоваться не умею, в третьих там вроде задержка при чтении результата обратно с видяхи, да и не у всех видяхи норм.
Аноним 11/10/24 Птн 15:32:53 979144 279
>>979142
добавлю что чаще тормоза не от кода, а от: либо продвинутых спецэффектов (global illumination, просто много тяжелых шейдеров) или от физики 1000 объектов где все сталкиваются со всеми.
Аноним 11/10/24 Птн 15:34:08 979147 280
>>979128
Другой анон врывается.


Опять подумываю пересесть на этот ваш годот. Пилю небольшие 3D-игрухи. 2D сейчас не интересно от слова совсем. Раньше несколько раз пытался пересесть, но каждый раз какая нибудь херня заставляла забить. Сначала сидел на гамаке и делал 2D. Это совсем древние времена были. На ныне замедленном находил полтора туториала. Хз то ли авторы рукожопами были, то ли оно так и должно быть. То же управление-перемещение перса в гамаке в строчек 10 кода делалось и работало заебца. У этих получалась простыня на 50-100 строк и по итогу говно. Я тогда знатно прихуел и забил на переезд. Потом полностью перешел на 3D. Когда вспоминал про годот, искал туториалы. По 3D толком ничего не было. Если было, то несколько серий показывали как качать движок и двигать куб на wasd. Потом мамка отбирала шнур от компа и на этом курс заканчивался. Где-то год назад опять загорелся. Туториалов с 3D было побольше и даже до конца доделанные. Но они блядь были по старой версии. Получалось, что я до какого-то момента доходил, а там разрабы все переделали. И каждый раз ты гуглишь до охуения, чтобы найти как оно сейчас реализуется и как прикрутить к тому что пилит автор.

Как там сейчас со всем эти обстоит? Реально ли найти достойную серию видосов про 3D? Азбуку размусоливать мне не нужно. С английским все норм. Нужно 1-2 туториала по текущей версии движка и с законченными проектами. Ну чтоб с контроллером, интерфейсом, просчетом столкновений для ближнего/дальнего боя етс. Чисто понять, как именно в годоте эти вещи реализуются, какие не рукожопские подходы етс.
Аноним 11/10/24 Птн 15:52:23 979150 281
Хз о чем вы, туториалов на англюсике завались, хоть рпг можно от начала до конца по туториалам наебашить. Обсуждений много. Нейросети натренированы. Документация заебись. Короче, никогда проблем не испытывал, даже во времена трешки.
Аноним 11/10/24 Птн 15:54:02 979151 282
>>979142
>Вон какой то свежий бенч, C# быстрее в 25 раз, с++ быстрее еще в 4 раза (в 100 раз).
Этот твой свежий бенч это поиск простых числел от 0 до 20 миллионов компонентами языка, а не движка. Ты бы еще вычисление знаков после запятой числа пи притащил. Такое в играх не считают.
Аноним 11/10/24 Птн 16:07:46 979152 283
>>979147
>туториалы
>видео
>гугл
Лол.

>С английским все норм.
Тогда читай всё, что найдёшь здесь:
https://docs.godotengine.org/en/stable/
И не говори, что нужны видосики смешные.
Аноним 11/10/24 Птн 16:08:38 979153 284
>>979147
Я бы не очень смотрел в сторону годота если бы мне нужно было делать 3d.
Опять таки от проекта зависит, какой нибудь гипер казуал можно, но на него особо не нужны уроки.
Так что по 3д видосов не встречал.
Аноним 11/10/24 Птн 16:10:20 979154 285
>>979151
Это и есть бенч языков, джениус. Он для того и делается. чтобы сравнить скорость одного алгоритма. И да, считают, неважно что не именно простые числа. Это даже в ассетах видно, например zylann hterrain содержит gdscript версию и с++ версию, также многие ассеты разрезания мешей есть в разных c++/c# версиях, потому что там много рассчетов.
Аноним 11/10/24 Птн 16:11:29 979155 286
>>979153
>Так что по 3д видосов не встречал.
Из подвала без интернета капчуешь?
Буквально тысячи туториалов по 3д за последние 5 лет.
Аноним 11/10/24 Птн 16:14:40 979156 287
>>979154
А тебе нужны эти алгоритмы вообще? Для игры?
А то выбирают-выбирают алгоритмы, а игры нет...
Аноним 11/10/24 Птн 16:19:44 979157 288
>>979150
Я в первые разы пытался ворваться, когда еще 1 или 2 версия были. Траблы с переписыванием кода были, когда туториалы по трешке, а уже 4 с пол года или около того релизнулась.

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

>>979152
Я с UE просто. Там у нас оф. документацией можно жопу подтирать. По не дефолтным моментам как раз из видосов узнаешь.

>>979153
Расскажи подробнее, молю. Фотореалистичный рендер не нужен его я и в UE получу. По графену будет всякая лоу поли стилизация. По масштабам ясное дело не асасины и не скайримы Типичная индюшня от анона по часов 5 геймплея. Боевка, задания, лут, карта, сохранения, интерфейс - все как обычно.
Аноним 11/10/24 Птн 16:20:32 979158 289
>>979155
Я про цельные вещи в которых от и до делается какая то механника/фича/шаблон.
Вообщем то даже на unity их не так много.

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

Ну и то что я не считаю годот хорошим выбором для 3д - но это чисто мое мнение а не призыв к действию.
Аноним 11/10/24 Птн 16:28:13 979160 290
>>979157
>Расскажи подробнее, молю.
Ну если прям лоуполи кубы то норм.
Проблема годота в пост эффектах и рендере 3д в целом.
На том же юнити ты больше по фпсам вытянешь (ну по крайней мере это будет с меньшим гемороем)

Про gds тут говорили постоянно если вдруг тебе понадобиться на половине сцены чтото найти посчитать итд ну на c# уверенности больше что это не вызовет проблем.

Меня положил именно рендер когда на годот переносил поделку.
(если не нужны эфекты освещение и всякое такое то проблем может не быть)
Но в 2д годот удобней будет.

Аноним 11/10/24 Птн 16:33:36 979161 291
>>979140
>Симуляторов свиданий 3.5 на весь мир, и те японские.
>Сразу скажу, что не всякая игра, что называет себя
Ваще мне похуй че ты там скажешь

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


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

>А потом прилетит DMCA от какой-нибудь нинтенды и всё...
ну да за каждым моделером adult контента стоит по Sony и Nintendo шизик

>С таким подходом можно что угодно высрать.
уж лучше так, чем сидеть высирать диванные шизопосты на дваче и ничего вообще не делать, так хоть получишь кучу опыта и итерационно на новом проекте применишь новые скиллы + переиспользуешь часть созданных наработок и следующую игру сделаешь лучше с учетом прошлых ошибок
Аноним 11/10/24 Птн 16:44:31 979163 292
oflifeandland.mp4 23744Кб, 1920x1080, 00:00:50
1920x1080
image.png 4656Кб, 1920x1080
1920x1080
image.png 8113Кб, 2560x1440
2560x1440
Аноним 11/10/24 Птн 16:49:50 979165 293
>>979160
Добра тебе анончик.

А что про работу с анимацией скажешь? Как со всякими родительскими-дочерними объектами дело обстоит? Чтоб не копипастить, когда тебе только кастомизировать надо или пару фишек добавить.


Ну для постэффектов и топового рендера у меня UE есть. И фпс-ы нужные на компе я там выкручу. Только для лоупольной стилизации UE - очевидный оверкил.

Идея такая: если годот - это +- гамак очень условно с адекватной поддержкой 3D, то для меня годнота. Если вместо того, чтобы быстро запилить базовую логику, а потом возиться с геймплеем и масштабировать, получаешь костыли и пердолинг, то шло бы оно.
Аноним 11/10/24 Птн 16:53:18 979166 294
m2-res720p.mp4 5581Кб, 1280x720, 00:00:17
1280x720
m2-res1080p.mp4 6157Кб, 1920x1080, 00:00:09
1920x1080
>СРОЧНО все на юнити, там 3д, а тут не 3д!
Аноним 11/10/24 Птн 16:53:59 979167 295
>>979165
Я с тридэхой стилизованной работаю, мне заебись. Физику движка я разве что не использую. Проблем нет.
Аноним 11/10/24 Птн 17:02:00 979168 296
Аноним 11/10/24 Птн 17:02:40 979169 297
>>979166
Есть ссыль на океан?
Аноним 11/10/24 Птн 17:04:28 979170 298
Аноним 11/10/24 Птн 17:08:05 979172 299
>>979168
Что круче - эта штука на уже древнем годот 3.х, никаких этих ваших вулканов и новых-модных освещений от Хуана.
Аноним 11/10/24 Птн 17:12:46 979173 300
>>979172
Он начинал на 3, на 4 переехал три года назад.
Аноним 11/10/24 Птн 17:16:25 979175 301
>>979170
Суровая вещь мда, за полгода не разберешься (туда плавучесть еще не прикручивали).
И кстати показательный пример рассчеттов на с++.
Аноним 11/10/24 Птн 17:39:43 979180 302
>>977057
> Аноны, как из блендера перенести частицы в годо?
В общем случае никак, но если ты нагуглишь конвертор, то через него. Суть конвертора в том, чтобы взять блендеровые функции, вызвать их аналоги в годо и произвести тем самым эдакое транспилирование. Как у нас в русских деревнях говорят.
Аноним 11/10/24 Птн 18:06:29 979184 303
1728659000046.mp4 6202Кб, 1280x720, 00:00:23
1280x720
1728659014853.mp4 4314Кб, 1136x652, 00:00:31
1136x652
895466.mp4 2764Кб, 1280x720, 00:00:13
1280x720
Аноним 11/10/24 Птн 18:44:29 979187 304
>>979180
А можешь поделиться конвертором?
Аноним 11/10/24 Птн 19:24:12 979193 305
>>979166
Мы уже поняли, что у тебя приступ нибомбита. Дело не в том, можно или нет что-то в принципе делать, а в том сколько пердолинга с этим связано и на каких подводных запнешься в процессе. Так-то и в блендере когда-то был игровой движок и демки попахивали годнотой.
Аноним 11/10/24 Птн 19:41:26 979195 306
>>979193
>на каких подводных запнешься в процессе.
Споткнешься - встанешь и дальше пойдешь. Как маленькие блять.
Аноним 11/10/24 Птн 19:46:44 979197 307
image.png 215Кб, 304x353
304x353
>>978379
>pic

Какой же он фантастический долбоёб, всё-таки.
Аноним 11/10/24 Птн 19:55:36 979201 308
>>979197
Не то что ты, двощерик.
Аноним 11/10/24 Птн 20:23:51 979209 309
>>979201
СЖВшный охранитель, не трясись.
Аноним 11/10/24 Птн 21:27:31 979213 310
>>979187
Нет, у меня нет такого конвертора. Я чисто теоретически понимаю, что такой конвертор возможен. Дальше гугли сам.
Аноним 11/10/24 Птн 22:42:16 979225 311
image.png 177Кб, 967x223
967x223
Один из основных разрабов редота ВСЕ.
Аноним 11/10/24 Птн 22:45:14 979226 312
image.png 30Кб, 596x145
596x145
image.png 30Кб, 593x167
593x167
>>979225
Второй тоже ВСЕ. Пишут что посрались из-за донатов на патреоне - редот хотел хапнуть донатов до первого релиза.
Аноним 11/10/24 Птн 23:23:30 979228 313
>>979226
>>979225
Эх, ну вот. Не будет развесёлых форков. Джва года ждём.
Аноним 11/10/24 Птн 23:44:07 979230 314
Напоминание не кормить дебила.
Аноним 11/10/24 Птн 23:50:34 979231 315
>>979230
Напоминание пойти бы тебе уже наконец на хуй. Как и просили выше.
Аноним 12/10/24 Суб 01:49:55 979241 316
>>979231
Хаха, залетный спалился.
Аноним 12/10/24 Суб 11:45:49 979271 317
>>979270
Тогда, иди нахуй из треда.
Аноним 12/10/24 Суб 14:51:39 979290 318
>>979157
>Траблы с переписыванием кода были, когда туториалы по трешке, а уже 4 с пол года
Я сам начинал во времена 3.2, и потом переносил прототипы на 4.0+, никаких проблем не было. Всё максимально подробно описано в документации. Разумеется, у меня не так много кода... Но там все изменения были уровня "добавить @ в начале, переименовать одну функцию в другую" и т.п.

>Мне не совсем дефолтные вещи интересны.
Конкретно что тебе интересно? К чему скрывать?

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

Хочешь хорошую, расширяемую архитектуру игры? Включай собственную голову и думай. Думай, что необходимо для твоей игры, в каком месте и т.д. Туториалы по движку этому тебя не научат, это ты самостоятельно должен уметь, чтобы делать игры.

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

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

Просто помни: бесплатные туториалы снимают не ради твоего обучения, а чтобы собрать побольше просмотров на рекламном блоке. Естественно, что обозревать будут только самые популярные вещи, а также затягивать видео, сознательно вставлять ошибочный код, плохие паттерны и т.д. Лишь бы ты вляпался в tutorial hell и продолжил смотреть эти бесконечные "обучающие" видосики на Ютубе.

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

>По графену будет всякая лоу поли стилизация.
У Godot для этого даже больше, чем необходимо. Единственное что - пока что Stencil Buffer отключён, поэтому обводку делаем по старинке - вывернутым наизнанку и чуть расширенным мешем - для этого в стандартном материале даже спец настройка есть.

Но Stencil Buffer обещают добавить в ближайших версиях, уже давно работают над pull request'ом.

>Боевка,
Зависит от того, что ты хочешь. Пошаговые бои ты, скорее всего, чисто вручную пишешь, так что к 3D никакого отношения они не имеют. Если тебе нужна физика в реальном времени, тогда всё зависит от масштабности и требуемой точности; если вдруг встроенная физика не тянет, её легко заменить.

>задания, лут, карта, сохранения,
Это всё не зависит от 3D графики.
Рекомендую, особенно для квестов и лута:
https://docs.godotengine.org/en/stable/tutorials/scripting/resources.html#creating-your-own-resources
Для рендеринга мини-карты пригодится:
https://docs.godotengine.org/en/stable/tutorials/rendering/viewports.html#viewport-container
Для сохранений есть много разных способов:
https://docs.godotengine.org/en/stable/tutorials/io/saving_games.html

>интерфейс
У Godot очень мощная UI система, на которой в т.ч. Godot Editor построен. Всё очень просто и удобно, в отличие от других движков и веба (HTML/CSS). Идейно напоминает RAD IDE Delphi - единственная проблема в том, что в Godot UI не нативный для ОС - сложнее поддержка для инвалидов ("экранные читалки", например, не видят кнопки Godot).

Т.е. базовая концепция:
- кидаешь компоненты (ноды) на "форму" (сцену);
- настраиваешь параметры нод в инспекторе;
- соединяешь события (сигналы) с обработчиками.
Можно легко делать собственные UI компоненты.

Также есть поддержка тем - применение параметров интерфейса глобально ко всем UI-компонентам.

>>979160
>Проблема годота в пост эффектах и рендере 3д
Если сравнивать с OpenGL 1.0 - у Godot просто фантастический рендерер 3D, так что мне даже пожаловаться не на что. Зачем какой-то UE? Ты раскрыть весь потенциал OpenGL 3.3 попробуй. Древние игрушки начала нулевых уже страдали избыточным фотореализмом в ущерб стилю, а вы ожидаете от движка картинки как в реальности? Создание игр - это побег от реальности, не нужно отравлять геймдев фотореализмом. Он нужен исключительно для виртуальных музеев...

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

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

>если вдруг тебе понадобиться на половине сцены чтото найти посчитать итд
Тогда ты явно что-то не так делаешь. Зачем тебе ИСКАТЬ что-то на сцене, которую ТЫ САМ создал?

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

>>979165
>А что про работу с анимацией скажешь?
Нормально всё, читай документацию:
https://docs.godotengine.org/en/stable/tutorials/animation/

>Как со всякими родительскими-дочерними объектами дело обстоит?
Это основа дерева сцены, как ещё может быть?

>Чтоб не копипастить, когда тебе только кастомизировать надо или пару фишек добавить.
Можно попробовать Scene Inheritance. Одна общая сцена-предок может иметь множество потомков, в каждом из которых есть дополнительные данные. Изменения в предке влияют на всех потомков, но изменения в потомке влияют только на него. Все импортированные 3D сцены по умолчанию будут создавать сцену-потомка от базовой GLTF-сцены.

>если годот - это +- гамак очень условно
Давно не видел GM, много времени прошло. Но фундаментальное отличие в том, что GameMaker - закрытый продукт в руках одной компании. Godot, напротив, подвержен влиянию сообщества, которое занимается им в т.ч. на уровне исходного кода. По юзабилити тут можно сказать, что Godot заточен сообществом под сообщество, а GM заточен одной компанией под очень абстрактного "потребителя".

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

Для масштабируемости рекомендую следующее:

1. "Call down, signal up" - вызывай методы только у непосредственных потомков (детей) ноды, никогда не взаимодействуя с внуками/братьями/предками. Оповещение предков - только через сигналы. Эта концепция позволяет сделать игровые объекты намного более независимыми друг от друга.

2. Обязательно указывай типы данных и объектов везде, где это возможно. В настройках включай предупреждение об отсутствии конкретного типа и автоматическое дополнение типов для встроенных методов. Для любых сложных объектов указывай class_name с читаемым именем, чтобы эти объекты можно было использовать по имени, с бонусом к автодополнению и статической проверке кода. Дополнительно указывай тип данных в Array, и в ближайшее время (Godot 4.4) - тип в Dictionary.

3. Предпочитай композицию наследованию. Лучше создавать новые сцены через композицию нод и имеющихся сцен, чем делать наследование. Нет, наследование полезно в определённых ситуациях, однако для расширяемости композиция удобнее. В отличие от ECS (плоская композиция), в Godot древовидный подход (в стиле ООП), проблем нет. Разделяй проект на уровни абстракции, т.е. разные компоненты принадлежат разным системам.

4. Избегай создания глобальных сущностей. Godot поддерживает создание глобальных сущностей несколькими разными способами - это может быть удобно для маленьких проектов, но на длинной дистанции ты хочешь иметь как можно меньше глобальных сущностей. Это касается статических полей классов, "autoload"-сцен, а также ресурсов, глобально передаваемых множеству объектов. Глобальные сущности усложняют поддержку из-за связывания всего кода проекта в одной точке.

5. Почаще нажимай F6 (вместо F5). F6 запускает отдельную сцену вместо главной. Если твои сцены адекватно работают после нажатия F6, то выше вероятность, что они будут работать хорошо и в композиции с другими сценами. Это ключевая концепция Godot, на мой взгляд.

6. Изучи дебаггер, способы поиска ошибок и т.д. Естественно, по официальной документации. Способность понять и исправить ошибку в своём проекте поможет лучше, чем любые туториалы.
Аноним 12/10/24 Суб 17:28:40 979317 319
>>979290
>Создание игр - это побег от реальности, не нужно отравлять геймдев фотореализмом
Я упростил настолько, что делаю 3д модели сразу в годоте. Я молодец?
Аноним 12/10/24 Суб 18:16:18 979338 320
Аноним 12/10/24 Суб 18:45:07 979344 321
tenor.gif 1750Кб, 498x338
498x338
Аноним 12/10/24 Суб 19:13:13 979346 322
Найс
Аноним 12/10/24 Суб 21:39:58 979360 323
b.jpg 36Кб, 600x455
600x455
Аноним 12/10/24 Суб 22:10:22 979365 324
1728760180931.jpg 145Кб, 1200x892
1200x892
>>979360
Продолжаем.
Ну не игры же делать в самом-то деле?
Аноним 12/10/24 Суб 22:45:15 979373 325
>>979360
Почему никто из этих сверхразумов не догадался ПРОСТО поменять всякое точно также, как и название? Ну типа просто поиском и заменой/рефакторингом поменять название всякой залупы и троллить транс-негров-пидорасов этим?
Аноним 12/10/24 Суб 22:59:15 979374 326
>>979360
>LifeArtStudios
Так это тот, из редота, который не осилил код и слился. Типа со второго раза прокатит?

Клоуны пиздос.
Аноним 13/10/24 Вск 00:22:18 979379 327
Делайте игры, чтобы веселые были.
Аноним 13/10/24 Вск 02:42:56 979384 328
>>979360
Скоро будет форков как у пинукса.
Аноним 13/10/24 Вск 03:39:13 979386 329
>>979384
Форки пинуса (если ты про ядро) обычно накладывают свои узкоспециализированные патчи на основную ветку и этим ограничиваются. Форкать такие гига-проекты и тащить их в одиночку в ином направлении невозможно, это путь отставания, стагнации и смерти.

Я когда-то, во времена трешки, бдил за этим форком: https://github.com/RebelToolbox/RebelEngine

В отличии от истерящих редотовских даунят его сделал скилловый аутист, регулярно (на тот момент) коммитящий полезное в годот. Как сейчас вижу не осилил и безнадежно отстал, не смотря на ребрендинг, работающий сайт и попытки построить комьюнити.
Аноним 13/10/24 Вск 03:40:11 979387 330
>>979290
Хуя ты простыню родил. Спасибо наверное пусть и выглядит как вода водовая.

>Я сам начинал во времена 3.2, и потом переносил прототипы на 4.0+, никаких проблем не было.
Наверное, мне те мои проблемы во сне приснились.

>Хочешь хорошую, расширяемую архитектуру игры? Включай собственную голову и думай. Думай, что необходимо для твоей игры, в каком месте и т.д. Туториалы по движку этому тебя не научат, это ты самостоятельно должен уметь, чтобы делать игры.
Какой-то успешный успех. Я в UE несколько лет. Я знаю, что у меня по умолчанию очень мощный контроллер, который достаточно кастомизировать, а не писать с нуля. Если мне нужны абилки, как в RPG, я подрубаю GAS или плагин с ней. Знаю, как за полтора клика подтягивать из таблиц в движок все тексты и геймплейные переменные. Знаю, как несколько родительских виджетов кастомизировать под весь интерфейс в игре. Знаю, как реализовать инверсную кинематику, скининг/морфинг, стриминг етс. Т.е. я совсем чуть-чуть понимаю, как пилится архитектура игры. Мне нужен пример, как без васянства что-то подобное реализуется в годоте. Только документация этого не даст.

У меня за все время накопились претензии к UE и на ближайшие пару лет сформировалось видение, какой мне инструмент нужен. Выше уже писал, что если в нынешнем состоянии годот - это очень условно +- гамак т.е. ты в несколько строк кода можешь запилить тот же контроллер, который будет норм, но с адекватной поддержкой 3D, то мне ок. Я даже на то, что каких-то фич нет, готов закрыть глаза. Вопрос был в этом + есть ли адекватный контент от комьюнити в качестве примера.

Но вместо простого ответа на простой вопрос вот этим >>979160 >>979167 анонам или анону спасибо, единственные адекваты, один тащит пруфы с потугами в топовый графен на годоте, теперь ты врываешься с успешным успехом. Годы идут, а /gd все так же ракует.
Аноним 13/10/24 Вск 11:19:08 979406 331
>>979387
Ему наотвечали то, что он и сам нагуглить мог но поленился, а он морду воротит.
Аноним 13/10/24 Вск 14:02:41 979424 332
>>979387
>кастомизировать, а не писать с нуля
>Знаю, как реализовать инверсную кинематику
Знаешь ли? Или ты про то, какие кнопки в GUI жать? Инверсная кинематика, например, это очень сложно алгоритмически, поэтому идеальных решений нет. В условном Blender нет требований работы в реальном времени, однако даже там IK алгоритмы глючные. Реализовывать такое самому крайне сложно, и в UE наверняка есть какое-то уже готовое решение. Ну и зачем реализовывать то, что уже есть из коробки?

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

Собственно, как и на любом другом движке. Вот за это пользователи Godot и любят его: можно просто писать код игры без лишних проблем, как раньше. Открываешь редактор за секунды и васянишь...

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

>т.е. ты в несколько строк кода можешь запилить тот же контроллер, который будет норм
Максимально упрощённый контроллер:
>extends CharacterBody3D
>func _physics_process(_delta: float) -> void:
> var v := Input.get_vector("left", "right", "up", "down")
> velocity = Vector3(v.x, -9.8, v.y)
> move_and_slide()
Это заставит твою ноду CharacterBody3D двигаться соответственно нажатиям 4 клавиш, "скользить" по препятствиям и падать в случае отсутствия опоры. Достаточно для простенькой игры типа "Sokoban". Подробнее читай в документации:
https://docs.godotengine.org/en/stable/classes/class_characterbody3d.html
https://docs.godotengine.org/en/stable/classes/class_input.html
Но тебе наверняка будет мало этого. Ожидаемо. Тебе придётся написать несколько сотен строк для чего-то продвинутого (в хорошем стиле с комментариями, не складывая кучу выражений в одну строчку), либо ты можешь попробовать посмотреть готовые решения:
https://godotengine.org/asset-library/asset?filter=Character
https://godotengine.org/asset-library/asset?filter=Controller
Не обязательно брать готовое как есть. Можно взять исходники, изучить их и многие другие, и сделать собственные так, как тебе будет удобнее всего.

Разработчики движка не встраивают полностью готовый контроллер как раз потому, что у всех игр собственные требования и у всех разработчиков собственные вкусы к коду/архитектуре. Они дают достаточно гибкий скелет, а дальше работай сам.
Аноним 13/10/24 Вск 14:16:40 979425 333
>>979424
>игры типа "Sokoban"
Не, классический сокобан вроде по клеточкам...

Хех, если подумать, код для движения по клеткам получается в несколько раз длиннее простейшего:
1. В _input проверяем нажатие 4 клавиш;
2. Если одна из клавиш нажата, блокируем ввод;
3. Смещаем персонажа ровно на одну клетку в направлении нажатой клавиши, как-то при этом проверяя достижение целевой клетки;
4. Разблокируем ввод по окончанию движения.
Аноним 13/10/24 Вск 17:20:33 979457 334
Делаю на годо простые игры, грустно, если сжв его потопит
Аноним 13/10/24 Вск 23:59:20 979533 335
1331555401767.jpg 68Кб, 700x466
700x466
ТАК, СРОЧНО СОЗДАЁМ СВОЙ ФОРК

Я уже разработал название: /b/dot. Зделаем заебись всё. Я умею на гитхабе регаться.
Аноним 14/10/24 Пнд 02:41:44 979548 336
image.png 5431Кб, 2048x1542
2048x1542
image.png 3516Кб, 2048x1536
2048x1536
Годоткон
Аноним 14/10/24 Пнд 02:45:40 979549 337
1683253407243.png 45Кб, 220x105
220x105
>>979548
Пердиксов даже на годотконе попускают.
Аноним 14/10/24 Пнд 02:46:08 979550 338
>>979533
>/b/dot
Форкнул твой бдот в /gd/ot. Идеально впишется же в наш раздел!
Аноним 14/10/24 Пнд 13:27:41 979586 339
image.png 2687Кб, 1200x1121
1200x1121
Делайте игры
Аноним 14/10/24 Пнд 13:45:43 979588 340
>>979549
Годоти опять публично пытаются оскорбить часть своей аудитории. Реально необучаемая порода.
Аноним 14/10/24 Пнд 15:24:45 979607 341
>>979549
Раст вроде для гейдева не оч, не?
Аноним 14/10/24 Пнд 15:45:53 979612 342
>>979548
Под логикой реальной рпг гдскрипт ляжет, хз что они за пустую картинку показывают с минимумом кода, чо за наёб гоев лол?
Аноним 14/10/24 Пнд 15:48:12 979613 343
>>979607
Это не проблема языка, инструментов просто нет или они странные.

Вообще я чо т охуеваю с каких это пор стало модно гордиться что твой интерпретатор работает как говно. Я походу слишком старый стал для современного программирования.
Аноним 14/10/24 Пнд 16:08:43 979614 344
Аноним 14/10/24 Пнд 16:59:51 979620 345
То ли я тупой, то ли лыжи не едут.
Свежеустановленная манжара. Свежескачанный годот 4.3 (с сайта, не из реп). Свежесозданный проект, форвард+. Открываю ассетлиб, устанавливаю оттуда Tree3D и Terrain3D. Перезапускаю пару раз. Создаю 3д-сцену, добавляю в неё ноду Terrain3D. Должна появиться вертикальная панель для работы с террейном, но её нет. Лезу в гугл, смотрю видео - у всех туторщиков панель появляется.
Чозанах и где я просчитался?
Аноним 14/10/24 Пнд 17:13:57 979626 346
>>979620
Плагины то в настройках проекта включил?
>>979624
Пошел нахуй в свой загон.
Аноним 14/10/24 Пнд 17:51:27 979629 347
>>979620
>ассетлиб
>Terrain3D
Там какие-то бета-релизы под 4.3, смотри тут:
https://github.com/TokisanGames/Terrain3D/releases
А вообще, в терминале какие-то ошибки пишет?
Если не получится - нужно писать о проблеме сюда:
https://github.com/TokisanGames/Terrain3D/issues

>>979624
>инстал годот
Так он ведь с сайта скачивал, там без инсталляции.

>>979626
>включил?
Он же сказал, что перезапускал редактор...
Аноним 14/10/24 Пнд 18:13:54 979631 348
>>979629
> Он же сказал, что перезапускал редактор...
Он не сказал что проставил галочку в конфигах.
Аноним 14/10/24 Пнд 18:16:33 979632 349
>>979626
>Плагины то в настройках проекта включил?
Бля точняк. Спасибо, анонче. Так и знал, что какую-то мелочь забыл.
Давно годот не запускал, да и с плагинами раньше дела не имел.
Аноним 14/10/24 Пнд 18:19:30 979633 350
>>979612
>Под логикой реальной рпг гдскрипт ляжет
Расскажи, что за "логика реальной РПГ"?
Для начала, что это за "реальная РПГ"?

Компьютерные РПГ состоят из (по Википедии):
1. Ролевая система
2. Исследование
3. Сюжет
4. Боевая система

По пунктам:
1. Ролевая система
Как правило это значит:
- рост чисел (числодроч)
- надевание шмоток
- выбор навыков
Все эти компоненты работают по принципу "один раз присвоил и больше не трогаешь". Т.е. нет логической нагрузки на ЦПУ, пока ты не нажимаешь "+1 к силе".

2. Исследование
Это значит опенворлд в том или ином виде. Да, мир желателен насыщенный и большой, но, естественно, статичный. Спавн болванчиков привязан к точкам, например, и зависит только от приближения игрока. Поэтому этот компонент не нагружает ЦПУ больше нормального стримминга частей статичной карты.

3. Сюжет
В РПГ сюжет обычно до боли линейный или вообще отсутствует, оставляя только набор веток-квестов. Реализация квестов подобна росту чисел в ролевой системе, т.е. пока что-то не происходит, ЦПУ никак не нагружается, а потом делает "+1" к переменной.

4. Боевая система
В РПГ, в отличие от, скажем, шутеров, боевая система тривиальна: ты выбираешь врага и навык/атаку или защиту, и дальше персонажи просто проигрывают анимации. Физика тут не используется, все враги как правило бегут на игрока по прямой, рассчёты урона тривиальны по типу "здоровье -= урон - броня", там отсутствует даже понятие попадания в голову, лол. Искусственный интеллект отсутствует как класс.

Это касается большинства РПГ, включая серию TES, которую тупо расхайпили непонятно за что. Честно, пытался играть, но так и не понял, в чём там смысл.

Ну и откуда там взяться нагрузке на скрипты игры?

Алсо, РПГ вообще плохой пример: они выросли из пошаговых настолок и их любители готовы терпеть хоть 10 кадров в секунду с лагом по 500 мс, благо работают эти древние игры даже на телефоне, лол. Подходящий жанр для аргумента против GDScript: соревновательные онлайн шутеры с физикой. Там необходимо выжимать максимум, иначе дурачки обидятся на то, что их ноутбук не тянет игрушку с минимально допустым 240 фпс и <10 мс пингом.
Аноним 14/10/24 Пнд 19:05:42 979640 351
bandicam 2024-1[...].mp4 2020Кб, 1920x1080, 00:00:27
1920x1080
Начал пилить свой тактический мини-шедевр.
Сегодня разобрался, как работает astar с обычной прямоугольной сеткой. Завтра буду перекладывать его на гексагоны. Вроде логика не сильно будет отличаться
Аноним 14/10/24 Пнд 19:16:41 979643 352
>>979620
>Terrain3D
Вижу этот проект снова ожил, раньше он был довольно заморожен. Но у него все равно есть некоторые минусы (бета, он сделан через gdextension, у него только экспериментальная поддержка мобилок, а веб вообще судя по описанию не грузит текстуры). https://terrain3d.readthedocs.io/en/stable/docs/mobile_web.html
Я бы по старинке пользовался Zylann HTerrain.
Аноним 14/10/24 Пнд 19:18:34 979644 353
>>979612
Ну ляжет и ляжет, хули, на Си перевести дело пары дней, вон конвертер выше кидали. Я логику к своей РПГ на годоте сразу на С++ писать стал.
Аноним 14/10/24 Пнд 20:51:25 979681 354
>>979643
>Terrain
>3D
>мобилок
>веб
В вебе вообще каждую спичку нужно экономить, чтоб работало хотя бы в 30 фпс, а на мобилках нужно всё оптимизировать под, ВНЕЗАПНО, мобилки.

Ладно уж 3D, хотя и оно перебор, но ландшафт?

Ты там браузерную убийцу ГТА 6 делаешь?

"Браузерка" для меня всегда была ярлыком чего-то совершенно несерьёзного/заведомо провального... Нормальные "браузерки" - это голый HTML + JS с графикой на <img> тегах в роли иконок к ссылкам.

Ну, это так... Ворчание.

Алсо БЕСЯТ индюки, запрещающие скачать их бесплатную игрушку с itch.io. За что? Я бы хотел сохранить их шедевр себе на память... У них там рекламы даже нет на странице, так какой смысл?
Аноним 14/10/24 Пнд 21:02:19 979684 355
>>979640
>astar с обычной прямоугольной сеткой
Ты используешь AStarGrid2D? Добавили ещё в 4.0.

Там есть поддержка гексагонов, добавили в 4.3:
https://docs.godotengine.org/en/stable/classes/class_astargrid2d.html#enum-astargrid2d-cellshape
Правда, как я понял, только две оси вместо трёх.

Вот хороший материал по гексагональным картам:
https://www.redblobgames.com/grids/hexagons/
Читал давно, понял не всё... Но очень годно.
Аноним 14/10/24 Пнд 21:11:21 979687 356
1e87716d3653d5d[...].jpg 86Кб, 900x588
900x588
>>979684
>Там есть поддержка гексагонов
А, нет, нет поддержки. Там для изометрии:
>Diamond cell shape (for isometric look).
Т.е. для карт типа пикрила - сбоку-сбоку-сверху.

Для гексагонов придётся делать самому на AStar2D.

Жаль... Гексагоны вроде популярны. Хотя, учитывая разнообразие координат на гексагональной сетке, сомневаюсь, что они согласятся принять это в ядро. Либо получится как с GridMap и VehicleBody - штука специфичная, потыкать прикольно, а потом свой велосипед писать приходится всё равно...
Аноним 14/10/24 Пнд 23:08:32 979714 357
>>979681
Банально любой ужастик где ты можешь выйти из избушки на полянку.
Конечно можно это намоделить мешем, но смысл террейна то как раз в том что он оптимизированнее за счет лодов по сетке.
Аноним 14/10/24 Пнд 23:14:20 979718 358
images.png 3Кб, 403x125
403x125
изображение.png 181Кб, 894x479
894x479
>>979684
С точки зрения программирования логики и массивов не рендера с этими вот полусмещениями, вся разница в том, что клетки соседние по одной диагонали. Половинный вариант по сравнению с обычными 4- и 8- соседскими.
Аноним 14/10/24 Пнд 23:45:37 979728 359
>>979684
>Ты используешь AStarGrid2D?
Ага
>Вот хороший материал по гексагональным картам:
За ссыль спасибо. Знаю этот сайт, пока успел только бегло ознакомиться

>>979687
>Для гексагонов придётся делать самому на AStar2D.
Там вроде не сильно различается. По крайней мере вот тут https://habr.com/ru/articles/557496/ так написано:
>Основной алгоритм поиска пути тот же, что и у обычной прямоугольной сетки, отличаются только соседи и проверки на нахождение точки внутри карты.

>>979718
>что клетки соседние по одной диагонали
Хмммм, а ведь и правда
Аноним 14/10/24 Пнд 23:54:01 979731 360
>>979714
>Банально любой ужастик где ты можешь выйти из избушки на полянку
Литералли это и хочу сделать, лол. Пришла идея ужастика, прочекал - ничего подобного нету. Решил собрать прототип, дабы заплейтестить идею. Заодно погружаюсь в дивный новый мир тридэ, с которым я раньше не имел дела.
Аноним 15/10/24 Втр 04:22:46 979760 361
>>979728
>AStarGrid2D
>Там вроде не сильно различается
Вкратце, AStar ищет оптимальный путь в графе, считая стоимость каждого возможного пути по длине ребра и дополнительному весу узла. Расположение узлов в пространстве для этого алгоритма совсем не важно.

В Godot есть три класса с реализацией AStar:
1. AStar2D/AStar3D - произвольные графы, которые необходимо заполнять по одной вершине, по одному ребру за раз. Самый базовый, но и гибкий вариант.
2. AStarGrid2D - даёт возможность заполнить граф автоматически одним присваиванием region, плюс позволяет включить/выключить прохождение по диагонали, и выбрать одну из популярных формул для рассчёта пути (в базовом AStar2D нужно делать свою реализацию двух виртуальных методов, если ты хочешь использовать другую формулу).

Так вот... AStarGrid2D умеет ходить только по 4 или 8 направлениям в зависимости от выбора, и он всегда предполагает, что сетка у тебя прямоугольная.

У гексагонов 6 направлений и расстояния у них отличаются от расстояний на отдалённо похожей прямоугольной сетке. Поэтому напрямую, пока что, использовать AStarGrid2D для гексагонов нельзя. Сомневаюсь даже, что удастся костыль сделать...

Так что придётся заполнять AStar2D вручную. Это несложно, я делал так пару раз ещё на 3.x. Просто существенно больше кода и, наверное, медленнее.
1. Заполнить сетку узлами:
for x in...: for y in...:
var id := astar.get_available_point_id()
astar.add_point(id, Vector2(x, y))
2. Соединить узлы:
for c in ...:
astar.connect_points(id1, id2)
Довольно много операций в циклах получается. Но сделать это нужно всего один раз на загрузке карты.
Аноним 15/10/24 Втр 07:19:09 979771 362
1728965907617.png 13Кб, 403x281
403x281
>>979718
А вот какое решение предлагал нам годот 3, квадратный тайлмап со сдвигом рядов на половину, это внезапно хексагональный тайлмап!
В четвёрке от этого как будто ушли или я не нашёл.
Аноним 15/10/24 Втр 07:35:22 979774 363
1728966880922.png 14Кб, 403x281
403x281
Аноним 15/10/24 Втр 10:21:38 979787 364
>>979760
Ого, интересно. Спасибо за объяснение. Поковыряюсь сегодня
Аноним 15/10/24 Втр 10:36:15 979789 365
Продолжаю вкатываться в тридэ, и нипанимат. Делаю прототип, так что на ассеты похуй.
Я зашёл на итч и скачал несколько более-менее человеческих моделек. Они в формате fbx, пришлось перевести в gltf, но вроде нормально получилось, открываются. У одной есть анимация ходьбы, но сама моделька всратая. Другая норм выглядит, но анимаций полторы штуки, зато блять тверк танцует на дохуя кадров.
Спрашивается: можно ли как-нибудь относительно просто перенести анимации с одной модельки на другую? В интернетах же как-то делают этих танцующих челопуков и гманов. Если не средствами годота, так хотя бы блендером?
Аноним 15/10/24 Втр 10:59:42 979791 366
>>979789
Rokoko аддон для блендера есть. Требует регистрацию и логин внутри блендера, такую спайварь лично я бы не юзал. Как альтернативу можешь навернуть цикл видосов Bonkahe по анимациям и импорту в godot на ютубе. Там мужик fbx анимации с миксамо ретаргетит на свою модельку.
Аноним 15/10/24 Втр 12:20:24 979797 367
>>979771
>от этого как будто ушли или я не нашёл
Плохо искал или вообще не искал.
https://docs.godotengine.org/en/stable/classes/class_tileset.html
>TileShape TILE_SHAPE_HEXAGON = 3
>Hexagonal tile shape.
Ещё смотри TileLayout:
>For all half-offset shapes (Isometric, Hexagonal and Half-Offset square), changes the way tiles are indexed in the TileMap grid.
Аноним 15/10/24 Втр 12:38:52 979800 368
but-then-i-was-[...].jpg 21Кб, 155x243
155x243
>>979789
>Делаю прототип, так что на ассеты похуй.
>@
>Я зашёл на итч и скачал несколько моделек.

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

>анимация ходьбы
>перенести анимации
Лол, сделай сам за 15 минут расслабленных кликов мышкой, чё тебе там надо, уровня дисней добиться?

"ПРОТОТИП" он делает, ага. Кубы подвигай, они 3D.

>В интернетах же как-то делают
Там скелеты, скорее всего, одинаковые. Читай:
https://blender.stackexchange.com/questions/315384/
>Exactly how much hassle is necessary depends on the similarity of the rigs involved. Biped to insect? Not going to happen, basically ever. Identical bone names, axes, and rest pose? Then it's a single reassignment of the action from one rig to the other. There is a wide area between those two where the retargeting becomes increasingly complicated (and increasingly error-prone.)
Вот бесплатный аддон с исходниками на питоне:
https://github.com/Mwni/blender-animation-retargeting
Но я бы на твоём месте так не парился ради ходьбы в прототипе, независимо от жанра. Геймплей делай.
Аноним 15/10/24 Втр 13:22:33 979803 369
>>979789
Ещё поясню. Прототипы в геймдеве делают, чтобы протестировать игровые механики. Успех игры часто зависит от того, насколько "фановые" её механики. Красивая графика привлечёт первых покупателей, но именно механики задержат их в игре, подтолкнут к написанию позитивного отзыва и рекомендации их друзьям (сарафанное радио). Игра может выехать с отвратительной графикой только пока в ней фан от геймплея, без геймплея графика обычно не вывозит.

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

Потому что у нас мозг пещерной обезьяны.

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

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

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

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

Конечно, графика добавляет какую-то ценность, но её можно сравнить с глазурью на торте: она делает торт привлекательнее, но вкус зависит от начинки.

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

Вот, кстати, почему визуальные новеллы - не игры: графика там несёт ключевую роль, а механически ты нажимаешь "далее" и редко выбираешь развилку. Бессмысленно делать прототип новеллы совсем без иллюстраций, это как делать пустую книгу без текста. Речь о самостоятельных новеллах, а не катсценах в полноценных играх с геймплеем, конечно.
Аноним 15/10/24 Втр 14:21:29 979813 370
>>979803
>визуальный новеллы
>графика там несёт ключевую роль
Сценарий и диалоги. Что, впрочем, не делает их играми бОльше, чем если бы ключевой была графика. ВРки это такой визуальный интерактивный фанфик. Убери из него графику, оставив интерактивность - получишь ии-чатбот вроде чарактер.аи или ии-данжн, убери еще и интерактивность - получишь обычный фанфик.

Да, я впервые прочитал твою портянку.
Аноним 15/10/24 Втр 15:06:09 979819 371
>>979789
Анон, делать ретаргет анимаций в Годоте или Блендере, да еще и после конвертации в другой формат - это пиздец какой колхоз и прямо желание пердолиться. С начала века для таких дел использовали Maya и Motionbuilder, там все гарантированно работает и все процессы давно отлажены.

>>979803
Если он не решит вопрос с графоном и анимацией на стадии прототипа или вертикального среза, то позднее может оказаться что игра требует такое количество/качество контента на которое нужно несколько лямов рублей и несколько лет жизни.
Аноним 15/10/24 Втр 16:10:31 979830 372
Я тут перехожу с гамака на годот (хочу попробовать), гляжу первый тутор по платформеру, но пока нужно делами пойти позаниматься, и появилось щас 2 вопроса
1) Нужно ли будет использовать эти предопределенные объекты такие как Body2D, если мне не нужна встроенная физика, а код для движений и коллизий я буду писать сам
2) Можно ли будет создать объект типа мастер контроллер, который будет управлять структурой каждой итерации цикла игры (то есть, в нем будет скрипт, который будет по очереди обращаться к каждому объекту и вызывать его метод в порядке, определенном внутри этого контроллера и так для каждой итерации в цикле)
Аноним 15/10/24 Втр 17:26:43 979837 373
>>979830
1. Нет, не обязательно, честно говоря я уже сам склоняюсь к тому что для всяких ретроплатформеров лучше писать свое.
2. Очень легко, ты можешь просто воспользоваться тем что уже есть в годоте (по идее _process разных скриптов и выполняются по порядку в сцене), либо просто создать какой-то массив таких объектов и вызывать в них функции по нужному тебе порядку. Или посмотреть на более навороченные либы для ECS.
Аноним 15/10/24 Втр 17:30:58 979839 374
>>979803
Анончик, ты молодец, правда. Но не надо повторять заученные фразы. Некоторые теории при столкновении с практикой требуют значительной доводки. Вот тебе уже назвали один жанр, где геймплей не важен - ВН.
Я делаю хоррор. Геймплейная формула "сбежать от НЕХ, которая может прятаться где угодно" давно уже испытана и в тестировании не нуждается. Да и, в общем-то, не особо важна в этом жанре. Если посмотреть на все значимые тайтлы и представить их в кубах без текстур - ну унылая хуита без геймплея же получится. Но вот что действительно важно для ужастика - это атмосфера. Именно она определяет, будет ли игра действительно пугать. Следовательно, плейтестить надо именно атмосферу. А её без ассетов ну никак не сделать.
Ну и наконец, да, у меня есть геймплей. Но, опять же, тестировать его в отрыве от атмосферы нет смысла. Когда я наткнулся на эту идею в интернетах, чел плейтестил её в кубах и закономерно заключил: хуита. А я увидел и сразу понял: да, хуита, но если её применить к ужастику, должна получиться охуенная годнота. Но чтобы в этом убедиться, надо собрать прототип-ассетфлип.
Прототип хоррора должен иметь графику хотя бы какую-то. Когда играешь за реалистичную тян с нормальными анимациями в тёмном лесу, то чувство опасности есть; если ей будет не хватать нормальных человеческих анимаций или если заменить её на анимешную вайфу, то получится смешно, а не страшно. А куб просто нахер убьёт весь эмоциональный отклик, оставит голую механику, весь смысл которой состоял в том, чтобы делать страшное ещё страшнее.
Надеюсь, понятно объяснил.

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

>>979800
>аддон
спс
>>979791
И тебе.
Аноним 15/10/24 Втр 17:37:03 979840 375
>>979839
>Следовательно, плейтестить надо именно атмосферу. А её без ассетов ну никак не сделать.
>Ну и наконец, да, у меня есть геймплей. Но, опять же, тестировать его в отрыве от атмосферы нет смысла
Двачую. Я уж собрался опровержение писать ему в очередной раз, а ты сам все знаешь, молодец.
Аноним 15/10/24 Втр 18:23:04 979852 376
>>979839
>Геймплейная формула "сбежать от НЕХ, которая может прятаться где угодно" давно уже испытана и в тестировании не нуждается. Да и, в общем-то, не особо важна в этом жанре
Лол, очередной говноподелие под копирку делаешь?

>Но, опять же, тестировать его в отрыве от атмосферы нет смысла
Тебе просто в голове представить недостаточно? И что, уже есть на руках концепт-арты, диздоки и прочее? Думать нужно, как геймдизайнер, а не кабанчик. Воображение там иметь, хотя бы минимальное
Аноним 15/10/24 Втр 18:34:57 979855 377
bandicam 2024-1[...].mp4 9783Кб, 1920x1080, 00:00:26
1920x1080
Так-с, отлично. Теперь можно приступать к следующему этапу разработки прокрастинации
Аноним 15/10/24 Втр 19:00:36 979860 378
>>979855
Игра "найди шаи-хулуда"?
Аноним 15/10/24 Втр 19:28:17 979869 379
>>979860
Хехе, не совсем. Хочу запилить что-то на подобии первой части Curious Expedition. Только чтобы исследование локаций представляло собой не текстовую мини-игру, а полноценный тактический геймплей за группу персонажей в данже.
Эдакое разделение на стратегию и тактику
Аноним 15/10/24 Втр 20:00:59 979877 380
Аноним 15/10/24 Втр 21:14:15 979899 381
Heider and Simm[...].mp4 1659Кб, 640x480, 00:01:32
640x480
>>979813
>Сценарий и диалоги.
Они везде, где хоть как-то задействуются, должны быть достойными. Однако, визуальную новеллу определяет, внезапно, визуальная составляющая.

>Убери из него графику, оставив интерактивность - получишь ии-чатбот вроде чарактер.аи
Нет, визуальная новелла без графики - это вот это:
https://en.wikipedia.org/wiki/Gamebook или это:
https://en.wikipedia.org/wiki/Interactive_fiction
>The term "interactive fiction" is sometimes used also to refer to visual novels, a type of interactive narrative software popular in Japan.

>>979819
>стадии прототипа или вертикального среза
Это разные стадии, не путай. Вертикальный срез - полностью, на 100% проработанный участок игры, включая в том числе полностью готовую графику. Вертикальный срез идёт после прототипов, когда основные механики и локации уже отлажены.

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

>Геймплейная формула "сбежать от НЕХ, которая может прятаться где угодно" давно уже испытана
Ладно, допустим, ты делаешь очередной клон.
>и в тестировании не нуждается.
А если НЁХ слишком медленная? А если слишком быстрая? А если спрятаться игроку негде? А если спрятаться слишком легко? А если бежать долго? Представь себе, даже копировать готовое сложно. Попробуй сделать так, чтобы КУБ был страшным - получится шедевр вместо тупого "Бу! Я мооонстр".

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

>Когда играешь за реалистичную тян с нормальными анимациями в тёмном лесу, то чувство опасности есть; если ей будет не хватать нормальных человеческих анимаций или если заменить её на анимешную вайфу, то получится смешно, а не страшно. А куб просто нахер убьёт весь эмоциональный отклик
Так ты ж в любом случае тупого болванчика по экрану двигаешь. Ещё раз посмотри видео. Там треугольники и круг, а эмоций больше чем от 99% фотореалистичных болванчиков в АААА играх. Ты должен создать чувство опасности, которое будет предследовать игрока, даже если он управляет простейшим кругом в мире геометрических фигур. Например, если круг "умирает" от прикосновения к острому углу треугольника, игрок начнёт бояться прикосновений к любым другим острым углам. Строишь механики вокруг того, что полностью избежать взаимодействия с острыми углами и завершить сюжет нельзя - и получается хоррор.

>анимешную вайфу
>смешно, а не страшно
НУ-КА ИЗВИНИСЬ БЫСТРО.
https://store.steampowered.com/app/1546860/
Аноним 16/10/24 Срд 00:11:27 979931 382
image.png 18Кб, 298x206
298x206
Вопрос, я создал сцену и трижды ее переименовал
Сначала назвал game, потом main, потом gameplay
Зачем годот сохранил все 3 названия? Я понимаю что он их закэшировал, но удалять то он их с кампутера собирается? Я годот закрыл уже
Аноним 16/10/24 Срд 09:26:35 979976 383
172905905253475[...].jpg 185Кб, 1080x1078
1080x1078
пошёл демедж контрол
Аноним 16/10/24 Срд 10:04:14 979978 384
Аноним 16/10/24 Срд 10:14:47 979979 385
>>979978
Да и игра там, скажем так, не сильно зависит от движка.
Аноним 16/10/24 Срд 11:23:42 979997 386
>>979899
нихуясе ты длиннопост высрал на ровном месте
Чел, я всего лишь хочу проверить, как одна конкретная механика работает в атмосфере хоррора. Без атмосферы хоррора (на кубах) она протестированно работает как душная хуита, но мне показалось, что именно эта её душность способна придать дополнительного ужаса и чувства беспомощности.
Затрата усилий на ассетфлип гораздо ниже, чем на попытки выжать ужас из кубов путём поиска художественных ухищрений и тонкой настройки баланса.
Мультик твой представляет скорее научно-историческую ценность, нежели художественную. Но да, кубизм и беспредметность - сила, проверено ещё Малевичем.
Всё.

>НУ-КА ИЗВИНИСЬ БЫСТРО.
Извени

>>979852
>Тебе просто в голове представить недостаточно?
Представил. Думаю, будет охуенно. Теперь надо посмотреть на плейтестеров, как они отреагируют.
Аноним 16/10/24 Срд 11:52:03 979999 387
>>979997
>длиннопост
Он всегда так, привыкай.
Аноним 16/10/24 Срд 12:28:52 980002 388
>>979899
>вебм

Это история про бать-алкаша, который сначала пиздит мать, а затем и малого?
Аноним 16/10/24 Срд 15:04:31 980024 389
image 145Кб, 710x838
710x838
>>979899
>Heider and Simmеl
Охуенно, наблюдая за фигурками было жутко по началу и под конец облегчение. Есть ли или как можно найти подобный контент для пополнения знаний по геймдизу по такому типу, с прототипами и их откликами на восприятие зрителя и пр.? Обычные книги и статьи по геймдизайну скачаны и в закладках, плюс сторителлинг. А вот на такое уникальное не натыкался.

>>977039 (OP)
Дочитал я наконец годо треды с января 23 года и теперь приступлю делать игоры мечты.
Теперь вопросец, для мобилок и веба использовать онли 3.6?
Или 4.3 рабочий и можно на нём лепить поделки?
А то по этой теме как то стихло всё, анончики молчат.
Аноним 16/10/24 Срд 15:25:19 980028 390
image.png 267Кб, 921x599
921x599
Второе место, неплохо.
Аноним 16/10/24 Срд 15:31:20 980031 391
>>980024
>Дочитал я наконец годо треды с января 23 года
Вот тебе делать нечего.
>по этой теме как то стихло всё
Просто все перешли на 4.х, на тройке только слоупоки вроде меня старые проекты допиливают.

Бери 4.х, там есть мобайл и совместимость рендереры, самое то для веба и мобилок. Кроме того, пока ты допилишь свой проект до релиза пройдет год-полтора, там уже 4.6 выйдет а тройка совсем актуальность потеряет.
Аноним 16/10/24 Срд 15:56:39 980033 392
>>979931
>Зачем годот сохранил все 3 названия?
Потому что потерял связь между файлом и кэшем.

>удалять то он их с кампутера собирается?
Нет, не собирается. Можешь удалить вручную.

>Я годот закрыл уже
Так эти файлы нужны для запуска:
- folding: хранит то, как "свёрнут" код в файле;
- editstate: хранит позицию курсора в файле.
Ну, это чисто предположение по названию.

Если эти файлы удалить, всё сбросится к умолчанию.

Там ещё есть превьюхи кода (скриншоты текста)...
Аноним 16/10/24 Срд 16:01:33 980034 393
>>980024
Почти в каждом треде пишу брать 3 для веба, хз чем ты их читал.
Аноним 16/10/24 Срд 17:03:01 980039 394
>>979997
Не хочешь поделиться, что за механика такая? Или боишься, что мы её украдём и сделаем быстрее?
>душность способна придать дополнительного ужаса и чувства беспомощности
Если она плохо работает сама по себе, то вряд ли. В худшем случае будет выбивать из погружения. Игрок может терпеть плохую механику ради чего-то, но это не делает эту механику полезной для игры.

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

>ассетфлип
>посмотреть на плейтестеров, как они отреагируют
Да блин, я ж тебе говорю - плейтестеры - всё равно что обезьяны, они будут отвечать тебе в стиле:
>гыыы, классная тянка, а можно её раздеть?
>ого, у тебя тут и физика сисек с жопой есть??
>ну ты мужыыык, давай сделай ещё секас с ней
>прикольный монстр, добавь ему огромный член
>а здлелой так чтобы деревья рубить можно было
И ни слова про тестируемую механику, если она не бросается в глаза сильнее трясущихся 3D сисек.

А что потом? Ты сам говоришь, что это тестовая графика, то есть ты планируешь её заменить. Но плейтестеры позитивно откликнулись о графике. Получается, ты удалишь то, что им понравилось?

>>979999
Извини.

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

>>980024
>Есть ли или как можно найти подобный контент для пополнения знаний по геймдизу по такому типу, с прототипами и их откликами на восприятие зрителя и пр.?
Можно почитать оригинальную статью (17 страниц):
>Heider and Simmel (1944) An experimental study of apparent behavior.
В целом стоит изучать психологию, в частности:
https://en.wikipedia.org/wiki/Theory_of_mind
Нашлась ещё какая-то свежая статья про VR:
https://nature.com/articles/s41598-024-65532-0

>Или 4.3 рабочий
Да всё рабочее... почти. В 4.4 батчинг для 2D будет реализован для RD (Forward+ и Mobile). Лучше взять актуальную версию - пока будешь возиться, выйдут улучшенные версии 4.x. А ветка 3.x больше не будет развиваться, на ней только очень старые проекты.

В 4.x уже столько улучшений, что отказываться в пользу устаревшего GLES2 совсем не хочется.
Аноним 16/10/24 Срд 20:07:22 980064 395
>>980053
Пока серишь и пидорасишь только ты, чмоня. Улетай в свой срачетред.
Аноним 17/10/24 Чтв 00:12:18 980105 396
Допустим, есть игра на Godot (4.x) под Android.
Задача: сохранить прогресс на выходе из игры.
Проблема: на Android минимум 5 путей закрытия.
1. Нажать кнопку "назад". Легко отловить в Godot.
2. Нажать кнопку "последние приложения", смахнуть превьюшку игры с экрана или нажать "закрыть все".
3. Открыть свойства игры и нажать "Остановить". Принудительная остановка а-ля диспетчер задач.
4. Нажать "домой", перейти в другое приложение, заблокировать экран и т.д., через некоторое время Android может спонтанно закрыть висящее фоном приложение, чтобы освободить память или снизить нагрузку на аккумулятор (зависит от настроек ОС).
5. Удерживать кнопку питания, пока телефон не выключится, или выбрать выключение из меню. Впрочем, этот вариант можно не рассматривать, аналогично внезапной потери питания от разряда.

Больше всего волнуют пункты 2 и 4.
Возможно ли вообще отловить такие моменты?
Можно ли на Android понять, что "окно не в фокусе"?
Или остаётся только сохранять каждые N минут?
Желательно чтоб решение было через GDScript...
Аноним 17/10/24 Чтв 00:20:38 980107 397
>>980105
У тебя там что гта? Просто сохраняй номер уровня или чекпоинта.
Аноним 17/10/24 Чтв 00:41:21 980109 398
>>980105
https://docs.godotengine.org/en/stable/tutorials/inputs/handling_quit_requests.html

Специальный официальный туториал, про мобилки тоже говорят. Я сохранял каждые пару минут, сохранял на важных моментах и плюс пытался поймать выход, что на мобилках конечно не всегда работает. Под веб похожие проблемы.
Аноним 17/10/24 Чтв 02:14:30 980116 399
>>980107
Хочу симулятор жизни сделать. Данных много.

>>980109
Читал эту страницу когда-то давно, но забыл.

>NOTIFICATION_APPLICATION_PAUSED
Вот это то, что мне нужно. Спасибо.
Аноним 17/10/24 Чтв 03:31:59 980125 400
>>980039
>плейтестеры - всё равно что обезьяны, они будут отвечать тебе
Так а их никто и не спрашивает. Ну, разве что чисто для вежливости. На плейтестеров надо просто смотреть. Где они тупят, а где сразу соображают; какие неочевидные для тебя штуки пытаются сделать; как реагируют лицом и телом на те или иные события.

>Если она плохо работает сама по себе, то вряд ли.
Ткнул пальцем наобум в несколько хорроров:
Granny - побег от бабки, прятки, пиксельхантинг и сбор предметов;
Silent Hill - брожение по локации, пиксельхантинг, разгадывание головоломок а-ля Петка и Василий Иваныч, неудобная боёвка;
Amnesia - брожение по локации, головоломки; но её я так и не осилил, глазам тяжело в такой темноте бродить.
Продолжая тыкать, обнаружим, что большинство чистых хорроров (которые не шутаны и не выживачи) геймплейно представляет собой пару-тройку механик, имеющих две основные цели:
1. Удержать игрока в одной локации, заставить люто бэктречить - дабы повысить шансы столкнуться с бабайкой;
2. Усложнить управление и обзор - дабы создать чувство беспомощности.
И при этом отсутствуют фановые механики. Осмелюсь даже предположить, что добавление таковых сразу же сменит игре жанр, она перестанет быть чистым хоррором и станет чем-то через дефис: хоррор-шутер, сурвайвал-хоррор, иммерсивсим-хоррор и т.д.
>Не хочешь поделиться, что за механика такая? Или боишься, что мы её украдём и сделаем быстрее?
Нет, просто у меня есть такая особенность, что если я описываю кому-то свою идею, то до конца её уже не довожу, типа уже всё, в мир выкинул. А пока она сидит в голове не рассказанная - вот тогда работа по её реализации кипит.
Тащемта прототип в любом случае покажу, да и на плейтесты понесу в геймдев-тусу у себя в города; да и сам я её спиздил у чела из интернета.
Аноним 17/10/24 Чтв 03:47:45 980126 401
>>980039
>Мультик демонстрирует
что художественное произведение может существовать без определённых элементов, но другие элементы критически важны. В частности, мультикам необходима драматургия, даже если действующие лица это геометрические фигурки.

Игра, будучи комплексным, синкретическим видом искусства, оперирует разными средствами выразительности. Геймплей среди них, конечно же, важнейшее, однако не стоит забывать, что разные игры стремятся выразить разные художественные идеи или дать игрокам разные переживания. Тетрис даёт одни чувства, Халфлайф другие, Пенумбра третьи. Фановый геймплей наводит одни переживания, а душный - другие.
Щас представил себе, как бы можно было Power Wash Simulator плейтестить в кубах. Дааа...
Аноним 17/10/24 Чтв 05:34:05 980134 402
>>980125
>1. Удержать игрока в одной локации, заставить люто бэктречить - дабы повысить шансы столкнуться с бабайкой;
>2. Усложнить управление и обзор - дабы создать чувство беспомощности.
Наблюдения хорошие, но выводы неправильные. В локации тебя удерживают, т.к. контента очень мало, а время накручивать нужно. Управление сложное из-за криворуких разрабов, которые не могли его сделать нормальным, как и камеру (не считая древних игр, в которых ограниченный обзор из-за слабого железа).

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

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

>отсутствуют фановые механики
Ну и зачем тогда играть в хоррор, если нет фана?
Чем прятки от монстра - не фановая механика?

>она перестанет быть чистым хоррором и станет чем-то через дефис: хоррор-шутер, сурвайвал-хоррор, иммерсивсим-хоррор и т.д.
Т.е. станет полноценной игрой? А что плохого?

>А пока она сидит в голове не рассказанная - вот тогда работа по её реализации кипит.
Тяжело тебе, без записей... Диздок всё же нужен.

>>980126
>Power Wash Simulator плейтестить в кубах.
А что не так? Зачем тебе полноценные модели для проверки чисто механического удаления грязи? Я не понимаю, чем тебе не нравится кубы отмывать?

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

А ты зачем-то на какую-то тусовку собрался...

Ну, дело твоё. Слепить очередной инди-хоррор не сложно, сам же в примерах привёл "granny" - там максимально всратая инди-графика. Зачем только реалистичные ассеты, ориентируясь на такое...
Аноним 17/10/24 Чтв 06:04:14 980135 403
>>980031
>на тройке только слоупоки вроде меня старые проекты допиливают
Понял, сяб.
>пока ты допилишь свой проект до релиза пройдет год-полтора
Про долгострой нормальных проектов это понятно, меня больше интересовало в вопросах по мелких проектам, которые быстрее лепить пока средне-большое параллельно потихоньку пилится.

>>980034
Видел, и пока на трёшке для мелких поделок и остановился.
На всякий случай уточняю для уверенности, чтобы потом подводные не всплыли.

>>980039
>почитать оригинальную статью
>В целом стоит изучать психологию, в частности:
>https://en.wikipedia.org/wiki/Theory_of_mind
>https://nature.com/articles/s41598-024-65532-0
Благодарю, взял на заметку.
> отказываться в пользу устаревшего GLES2 совсем не хочется
Пон, значит всё же четверка.
Аноним 17/10/24 Чтв 14:46:41 980165 404
>>980125
>На плейтестеров надо просто смотреть. Где они тупят, а где сразу соображают; какие неочевидные для тебя штуки пытаются сделать;
Где бы еще найти таких замечательных людей. Я "плейтест" получил только когда мою игру, спустя год после релиза, подхватили мелкостримеры и записали пару своих прохождений на ютуб. Вот тогда я посмотрел и понял как надо было сделать тут, тут и тут. Апдейтить эту игру для меня уже неактуально, так что хуй знает зачем мне эта информация. Машину времени бы - тогда бы все учел.

С текущей, боюсь, такая же шняга получится. Делаешь как вслепую до самого релиза.
Аноним 17/10/24 Чтв 14:53:36 980167 405
>>980165
Где найти людей, которые играют в игры, чтобы дать им поиграть в свой билд? Ты шизофреник, который считает, что на земле живет только он и таинственные виртуальные мелкостримеры внутри электрического ящика?
Аноним 17/10/24 Чтв 14:57:05 980169 406
>>980167
Который при этом напишут внятный развернутый отзыв, а лучше запишут видос своего геймплея.
Аноним 17/10/24 Чтв 15:07:45 980173 407
>>980135
>на трёшке для мелких поделок
Не всё так очевидно. В 4.x много QoL улучшений.

На 4.x, начиная с 4.0, есть типизированные массивы:
https://godotengine.org/article/gdscript-progress-report-feature-complete-40/#typed-arrays
Что крайне полезно во многих задачах.

Начиная с 4.4, наконец-то введут типы в Dictionary:
https://godotengine.org/article/dev-snapshot-godot-4-4-dev-2/#typed-dictionaries
Что тоже крайне полезно.

Также из неочевидного, в 3.x нужно писать так:
>export var node_path: NodePath
>onready var node: Node = get_node(node_path)
А в 4.x ты пишешь просто:
>@export var node: Node
И всё работает без лишнего кода.

Ещё, кажется, только в 4.x можно сделать так:
Создаём два своих ресурса:
>class_name MyData extends Resource
>class_name MySubData extends MyData
Объявляем экспорт:
>@export var data: MyData
В инспекторе, в выпадающем меню будет:
>new MyData
>new MySubData
И ничего больше. В 3.x был полный бардак с этим.

Короче, новые фичи в GDScript "2.0" решают.
Да я б и не перешёл на Godot, если б не GDScript...
Аноним 17/10/24 Чтв 15:09:58 980175 408
>>980169
И в чем проблема?
А еще можно пригласить знакомых поиграть в билд и стоять у них за спиной, а еще лучше взять ноут на тусовки
Аноним 17/10/24 Чтв 15:18:01 980176 409
>>980175
Среди моих знакомых мало геймеров, и еще меньше тех, которые шарят за мой жанр. Если я им включу похожую успешную игру из стима они ее выключат минут через 5 нихуя не поняв. Такой себе плейтест. Нужна подходящая аудитория, вот я и спрашиваю где бы ее взять. Рандомов из интернета тоже хуй заставишь в бету погонять. Их в релиз то хуй заставишь пока как-то само чудом не взлетит.
Аноним 17/10/24 Чтв 15:18:58 980177 410
>>980176
Ахах, видел я как чел с Потатой с ноутом гонялся за маленькими девочками на фесте, и все от него убегали и отказывались играть.
Аноним 17/10/24 Чтв 15:19:20 980178 411
Аноним 17/10/24 Чтв 15:33:06 980182 412
>>980135 >>980173
Ещё по инспектору нод.

Если сделать так:
>@export var array: Array
Тут можно добавить через инспектор что угодно, но сначала требуется выбрать тип данных из огромного списка всех возможных типов. В 3.x/4.x - одинаково.

Если в 4.x сделать так:
>@export var numbers: Array[int]
Можно сразу добавлять целые числа. Удобно.

Можно сделать и так:
>@export var data: Array[MyData]
Тогда ты добавляешь MyData или его потомков.

Кажется, можно сделать даже так:
>@export var sprites: Array[Sprite]
И у тебя будут кнопки выбора Sprite из дерева сцены.

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

Плюс, типизация даёт бонус к производительности, однако, это не самое важное на этапе разработки.
Аноним 17/10/24 Чтв 15:33:25 980183 413
Аноним 17/10/24 Чтв 15:36:30 980184 414
>>980176
Ну кидай на двачи если не боишься, что упрут идею
Аноним 17/10/24 Чтв 15:44:42 980187 415
>>980134
>(не считая древних игр, в которых ограниченный обзор из-за слабого железа)
Какая разница, как выставлять камеру, слабое железо или сильное? Ракурсы в тех же СХ или РЕ - исключительно художественное решение, работающее на саспенс.

>Про чувство беспомощности вообще непонятно
Чувство беспомощности - когда ты не можешь дать отпор монстру, а можешь только бежать и прятаться. А монстр быстрее тебя. А укрытия не дают 100% безопасности. А управление инертное.
>ты можешь закрыть игру.
В хорроры не для этого играют.

>давая игроку кнопку "сопротивляться"
Далеко не всегда. Для экшон-хорроров норм такое. В обычных - очень редко. Там бывает даже - если ебака хотя бы появилась в кадре, то ты гарантированно труп.

>Ну и зачем тогда играть в хоррор, если нет фана?
Вот! Ключевой момент. Ты не понимаешь аудиторию.
В хорроры играют не ради фана. В них играют ради страха. Если тебе в хорроре не страшно, а весело, то либо это неправильный хоррор, либо ты делаешь что-то не так.

>Диздок всё же нужен.
Несомненно. При делании игры - обязательно. И при создании полноценного проекта я обязательно выделаю неделю-две на подготовительную часть и составление диздока.
А для прототипа и так сойдёт. Он прототип, он быстрый и грязный.

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

>В прототипы играет сам геймдизайнер
Нет. Плейтестить ВСЕГДА должны посторонние люди, видящие игру в первый раз. Особенно когда геймдиз это человек-оркестр. При самостоятельном плейтестировании слишком сильны когнитивные искажения.

>>980165
>Где бы еще найти таких замечательных людей.
Ты в деревне живёшь? Просто во всех крупных городах есть локальные геймдев-тусовки, которые периодически собираются и плейтестируют друг друга. Заодно на таких тусах можно понабраться опыта на чужих ошибках.
Ну и семья и друзья-знакомые, конечно. То, что они не геймеры, может быть даже неплохо - помогает понять более широкую аудиторию.
Я прошлые проекты тестировал и на тех, и на других.
Аноним 17/10/24 Чтв 15:47:54 980191 416
ss5cde439f57910[...].jpg 260Кб, 1280x720
1280x720
>>980165
>Где бы еще найти таких замечательных людей
Родственники, друзья, знакомые, форумы...

>>980169
>лучше запишут видос своего геймплея
Записывал видос своего геймплея Katabasis.
Проблемы он так и не исправил, игру забросил.

>>980176
>Рандомов из интернета тоже хуй заставишь
Что у тебя там за жанр? Соревновательный шутер?
Кидай в тред, будем тестировать всем годотчем.

>>980177
>гонялся за маленькими девочками
Лицо представили? Я представил пикрил.

>>980184
>если не боишься, что упрут идею
Да кому твоя идея сдалась, их и так много.
Аноним 17/10/24 Чтв 16:48:14 980212 417
>>980187
>исключительно художественное решение
В Silent Hill туман скрывает низкую дальность прорисовки, это не художественное решение. Для сравнения, в GTA SA тоже близкий туман и это у некоторых игроков вызывает страх... Но это тупо ограничение старых приставок, а не задумка.

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

>А управление инертное.
Вот в GTA 5 крайне инертное управление. Это чтобы игроки боялись чего-то? Выходит, GTA 5 - хоррор? В Escape from Tarkov вообще перебор с инертностью персонажа, так, что игроки жалуются - это хоррор?

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

>В хорроры играют не ради фана.
>В них играют ради страха.
Страх в хорроре - это и есть фан (fun) от игры. Но созданием страха занимаются фановые механики.
>Если тебе в хорроре не страшно, а весело
В русском нет корректного перевода "fun" в играх: "веселье" не передаёт/искажает суть этого термина. Поэтому мы здесь говорим "фан", "фановый" и т.д.

Ты даже такой элементарной базы не знаешь?

>неправильный хоррор
Возьмём, скажем, FNaF: по нему очень много порно с персонажами-монстрами. Это неправильный хоррор, если игроки сексуально возбуждаются из-за него?

>иронизируешь? Просто ну очевидно же
Не очевидно. Чем отмывание кубов хуже отмывания модельки дома с текстурами? Механика точно та же. Разнообразие моделек не является механикой, это расширение контента игры вширь, а не вглубь.

Ты ещё скажи, что для теста Splatoon обязательно необходимы детально проработанные 3D тянки, а механика краски совсем не работает без них. Лол.

>Плейтестить ВСЕГДА должны посторонние
Где ты это вычитал? Дай ссылку что ли. Потому что обычно в прототипы игр играет их геймдизайнер, особенно если это соло инди человек-оркестр.
>При самостоятельном плейтестировании слишком сильны когнитивные искажения.
Это когда ты 5 лет над игрой работаешь и знаешь абсолютно все закоулки, а нужен свежий взгляд новичка, чтобы потестить понятность/туториал. Механические прототипы должны работать вне зависимости от того, как долго ты в них играешь. Потому что игроки будут играть 1000+ часов в твой проект, а не только первые 15 минут знакомства.

Игру в разработке можно разделить на стадии:
1. Прототипы. Это сырые демки механик, которые бессмысленно показывать игрокам - в них играет геймдизайнер, чтобы скорректировать работу. Тут практически отсутствует какой-то контент. Часто прототип сфокусирован на одном элементе игры, отвечая на какой-то конкретный вопрос дизайна. Мультиплеер, конечно, тестируется с командой, проинструктированной, что вообще нужно делать.
2. Вертикальный срез. Полностью проработанная, но оторванная от остальной игры зона/локация, чтобы продемонстрировать качество ассетов и основные игровые механики потенциальным инвесторам или будущим игрокам (демо, трейлеры всякие). Тут уже финальные или почти финальные ассеты, но мало. Полноценно играть в это не выйдет (мало контента), однако, общая суть игры уже чётко улавливается.
3. Альфа/закрытое тестирование. Игра наполняется контентом, но всё ещё слишком много багов и других проблем, которые нужно решить прежде, чем можно будет показывать эту игру широкой публике.
4. Бета/открытое тестирование/ранний доступ. Игра практически готова, но всё ещё требуется проверить потенциальные ошибки, проблемы с юзабилити и т.д.
5. Релиз. Весь основной контент в игре и багов мало.

Видно, ты полностью пропустил стадию прототипа, однако, для вертикального среза у тебя нет своего собственного контента. Т.е. тебе рано показывать "смотрите, как я могу", но и прототипов не делал.
Аноним 17/10/24 Чтв 16:57:56 980215 418
>>980212
> туман скрывает низкую дальность прорисовки, это не художественное решение
Тогда это было так. Сегодня это кря-кря-мама-утка и современный туман на рейтрейсинге наоборот нагружает систему.
Аноним 17/10/24 Чтв 17:00:44 980217 419
>>980187
>Ракурсы в тех же СХ или РЕ - исключительно художественное решение, работающее на саспенс.
Продиктовано изначальным отсутствием второго стика на геймпаде в одних играх, а в других 2дшными фонами.
Аноним 17/10/24 Чтв 17:31:14 980226 420
Если я скину сюда прототип игры с болванками вместо спрайтов и геймплеем на пару минут вы потестите? 🥺
Аноним 17/10/24 Чтв 17:42:27 980229 421
>>980226
Поставлю таймер на 2 минуты.
Аноним 17/10/24 Чтв 18:09:25 980235 422
>>980212
>в прототипы игр играет их геймдизайнер, особенно если это соло инди человек-оркестр
Инди человек-оркестр и так постоянно играет в свою игру. Написал код - запустил протестил, нарисовал уровень - запустил протестил. К моменту, когда прототип будет готов к плейтестам, индюк его весь наизусть знает и уже там нечего плейтестировать.

>Где ты это вычитал? Дай ссылку что ли.
Очевидный GMTK, да и вообще много употребляю всякого контента про геймдев. Ну и личный опыт.

>созданием страха занимаются фановые механики.
Поиграй в хорроры. Ты явно не понимаешь, как они работают. Созданием страха занимается атмосфера, а механики его лишь усиливают через погружение, потому что игрок переносит внутриигровое на себя.

>Вот в GTA 5
Вот тут ты, кстати, приводишь аргументы в пользу моей позиции, противореча своей.

>Сделать следящую из углов комнат камеру проще, чем полноценную камеру от третьего лица.
Ну как бы и да, но проще оно чисто в плане реализации. Железу насрать, следящая у тебя камера или полноценная. Супер Марио 64 передаёт привет.

>Но ты всё же можешь закрыть, если тебе неприятно.
Да и открывать тоже не обязан...

>FNaF это неправильный хоррор
Во-первых да, это не классический хоррор чисто механически. Во-вторых не оч понятен твой ход мысли. Во фнаф играют ради страха, потому что он страшный. И повтори его в кубах - скучная духота получится.
Аноним 17/10/24 Чтв 23:24:53 980300 423
image.png 40Кб, 508x430
508x430
Делайте игры эти ебучие
Аноним 18/10/24 Птн 06:31:18 980324 424
>>980226
Мама меня учила не запускать игры от незнакомых дядек.
Аноним 18/10/24 Птн 16:39:52 980374 425
>>980215
Не совсем. Накати мод на ремейк сх2 убирающий туман и увидишь, что новые здания в 30 метрах от игрока прогружаются
Аноним 18/10/24 Птн 20:16:15 980396 426
>>980374
Увы. На моём железе можно только в ГТА ЫФ играть.
Аноним 19/10/24 Суб 00:30:22 980420 427
Ух захотелось сделать софтрендерер внутри годота
Аноним 19/10/24 Суб 00:49:05 980422 428
>>980420
А игру не захотелось?
Аноним 19/10/24 Суб 01:14:02 980426 429
Аноним 19/10/24 Суб 10:30:29 980449 430
>>980420
Внезапно одобряю твоё решение. Годоту нужен оконный софтрендер, чтобы писать оконные приложения без графического ускорения. Чтобы на древней встройке заводилось!

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

> imports System, IO as console # подключаем либы как во взрослых языках

> extends System.Object # расширяем системный класс объекта

> pub func main(args: array[string]): # здесь я ворую синтаксис раста: все объявления приватны кроме "pub"
> > console.print("Hello, world!") # ввод-вывод мы подключили как console, но это врядли так будет работать, это чисто как пример
Аноним 19/10/24 Суб 10:42:50 980450 431
Аноним 19/10/24 Суб 14:34:39 980476 432
>>980450
Я знаю, что приложения есть, но они используют опенгл/вулкан рендеры. Я хочу оконный рендер, вин32 для венды, гтк для линды.
Аноним 19/10/24 Суб 14:46:02 980479 433
>>980450
О, ремейк крутого музыкального редактора, надо потыкать.
Аноним 19/10/24 Суб 18:59:43 980505 434
Никогда не делал мультиплеерных игр, понимаю, что очень сложно сделать правильно. Но сегодня вдруг мысль пришла в голову: а что, если сделать свой собственный hero shooter? Пусть будет лоуполи и с максимальным онлайном в 3.5 рандома, но это же прикольно, делать своих персонажей с абилками и выкатывать апдейты. Типа "эй, ребята, сегодня я доделал Ехидного Колобка (ссылка на свою Вики с описанием персонажа и абилок), заходите тестить".

Сам я не фанат мультиплеера и шутеров, но в овервоч наиграл 700+ часов до того, как выкатили "второй" с дурацкими изменениями, из-за которых я его бросил. Скатился из золота в бронзу и так и не поднялся, т.е. игрок из меня очень слабый и вообще я играл только потому что герои прикольные и анимации забавные...

Нейронка сказала: "можно, делай", но она слишком оптимистично на все вопросы отвечает обычно...

Скорее всего, ничего я не сделаю. Но чувствую, что остальные мои проекты слишком ограничивают потанцевал. Ну т.е. в "hero shooter" можно ведь что пожелаешь напихать и потом тупо цифры урона откалибровать, чтобы баланс был. А, да и не так-то нужен строгий баланс, тот же овервоч постоянно болтало с одного героя на другого. Имхо, прикольно делать "героя недели", чтоб все на него садились, не задрачивая одну и ту же "мета-игру" из года в год...
Аноним 19/10/24 Суб 19:33:52 980513 435
>>980505
В соло не осилишь скоп. То, что ты описал - это работа для средней студии на пару лет. Кроме того, ниша хиро шутеров и так переполнена.

Сделай змейку лучше.
Аноним 19/10/24 Суб 20:09:50 980518 436
>>980235
>и так постоянно играет в свою игру
>когда прототип будет готов к плейтестам
>там нечего плейтестировать
В смысле? А когда ты нажимаешь F5 - ты разве не плейтестишь? Плейтест - это именно "играть в игру". Классическое тестирование - это когда компьютер выполняет код и говорит "всё ок", либо "полученные данные не сходятся с ожидаемыми". Классически, плейтесты игр откладывали на потом из-за очень медленного процесса разработки. Только движки с быстрым циклом разработки позволяют плейтестить проект хоть после каждой написанной строчки кода.

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

Пример хоррора без атмосферы:
1. Игрок в комнате с единственным выходом.
2. Комната медленно заполняется жидкостью. Это МЕХАНИКА, которая требует от игрока выйти наружу.
3. Игрок пытается выйти - дверь заперта. Чтоб выйти, игроку нужно найти ключ, но жидкость мутная, скоро заполнит всю комнату. Вызывается страх, что ты не успеешь вовремя выйти. Чисто механический страх.

В кино герой будет паниковать, бегать по комнате в тщетных поисках ключа, кричать, биться об дверь. Игровой хоррор должен заставить игрока СЫГРАТЬ паникующего героя. И это делается через механики. Графически тут достаточно показать, что и где, чтоб понятно было, что вообще происходит и чем грозит. Потом, если механики работают, можно нагнетать побольше страха кровавыми следами и т.п., но это декорации, которые только усиливают механику. Декорации (атмосфера) сами по себе не работают.

>а механики его лишь усиливают через погружение, потому что игрок переносит внутриигровое на себя.
Здесь-то ты и ошибся. Безусловно, именно механики создают погружение в игру, иначе б люди говорили о погружении в статичные картинки. Но погружение-то первично. Сначала погружаешься в мир абстрактных фигурок, где круглое - хорошо, а острое - плохо. А уже потом начинаешь бояться внезапно выскочившего треугольника. Вот чётко помню, как я неоднократно пугался крипера в Майнкрафте, и видел клипы от совершенно разных стримеров, кто тоже пугался. Насколько ужасен крипер? Это тупо ходячий огурец. Однако, механически он моментально убивает, либо оставляет с минимальным здоровьем; смерть - это механическая потеря драгоценных ресурсов, тяжело добытых в пещерах, а порой и вовсе уникальных. Т.е. пугает не картинка крипера, не атмосфера пещер из кубиков. Пугает риск сдохнуть от взрыва внезапного крипера, и это работает лишь за счёт механик. Т.е. механики не усиливают, а формируют страх. Если редуцировать Майнкрафт до кубиков без текстур, то взрывоопасный моб не перестанет быть пугающим.

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

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

>>Вот в GTA 5
>приводишь аргументы в пользу моей позиции
В GTA, начиная с IV, управление стало инертным ради кинематографичности. Читал про механику прыжка, почему в GTA IV она такая плохая и почему в GTA V пофиксили, да не полностью. Всё ради реализма. К хоррору отношения не имеет, т.к. игры не про то, а геймплейно эта инертность лишь мешает игроку.

Тарков - это "шутер с извлечением (лута)" - если ты почему-то сдох - теряешь весь лут и шмотки. Шмотки можно покупать за донат... Смекаешь? Все механики нацелены на то, чтобы игрок облажался, потерял всё говно, расстроился и купил больше говна за бабки, надеясь "отыграться", как в казино. Хоррором тут не пахнет, а официальный обоснуй - "это реализм" (ага, конечно, и смерть с одной пули в ногу тоже реализм). Конечно, игрок может бояться потери лута - но это механический страх, а не какая-то там атмосфера. В любой онлайн-игре с падающим игрока лутом и PvP большинство будет бояться потерять этот лут.

Но опять же. Почему Тарков - это шутер, а не хоррор? Потому что механики сфокусированы не на том, чтоб пугать игрока, а на том, чтобы лутать ящики и трупы. Отбери оружие, увеличь число агрессивных ботов и напряжённый шутер превратится в чистый хоррор.

>>FNaF это неправильный хоррор
>не оч понятен твой ход мысли
Ты утверждаешь: "если ты в хорроре вместо страха веселишься, то это неправильный хоррор". Я привёл пример, что монстры не страшные и вообще на них наяривают на порносайтах, делают фан-порно-игры. Получается, целевая аудитория не боится, а дрочит. Впрочем, не важно, это уже какой-то спор о вкусах.

>И повтори его в кубах - скучная духота получится.
Не знаю. Начал делать хоррор на кубах - теперь мне страшно открывать его в редакторе Godot. Может, попробовать работать с включённым светом? Хм...
Аноним 20/10/24 Вск 00:36:05 980539 437
>>980518
>Пример хоррора без атмосферы:
>1. Игрок в комнате с единственным выходом.
>2. Комната медленно заполняется жидкостью. Это МЕХАНИКА, которая требует от игрока выйти наружу.
>3. Игрок пытается выйти - дверь заперта. Чтоб выйти, игроку нужно найти ключ, но жидкость мутная, скоро заполнит всю комнату. Вызывается страх, что ты не успеешь вовремя выйти. Чисто механический страх.

Ты только что подводные уровни в сонике записал в хорроры
Аноним 20/10/24 Вск 03:24:19 980542 438
>В смысле?
В коромысле.
Я тестирую, но не плейтестирую. Я оцениваю техническую часть. А когда техническая уже доделана и надо бы оценивать эмоциональную, то я уже настолько её заиграл, что единственная эмоция - заебало.

>герои-дебилы
Есть страшные хорроры, а есть смешные. И это вот второй случай. Потому что тупые герои наоборот выбивают из саспенса, зритель перестаёт ассоциировать себя с ними. А в страшных герои не дебилы и действуют логично.

>Без атмосферы хоррор работает
Нет, чел. Никогда. Вообще. Совсем. Ни в какой ситуации. Всё наоборот. Хоррор делается атмосферой и только ей.

>Пример хоррора без атмосферы
Ну тебе уже ответили, лол

>В GTA, начиная с IV, управление стало инертным ради кинематографичности
Ну да. Одни и те же механики могут иметь разное значение в зависимости от контекста. Не вижу противоречий.

>крипер в Майнкрафте
Испуг от крипера называется скример. Когда тебе в поле внимания резко вкидывается образ, которого надо избегать. И это очень дешёвый трюк. И любители хорроров ненавидят скримеры.
И зря ты Майн приплёл. Он часто фигурирует в списках типа "топ 10 хоррор-моментов в не-хоррор играх". Но вовсе не из-за криперов, а из-за пещер, да ещё если там музычка начнёт играть - вот с этого народ обсирается. Одни и те же мобы спавнятся ночью на поверхности и в любое время в пещерах, но пещеры страшные, а поверхность нет. И почему бы это?
Из этих же списков накинем Рэвенхолм, который чисто механически не отличается от всей остальной ХЛ2, но страшный чисто из-за атмосферы. Можно возразить - а как же гравипушка? Но гравипушка как раз таки наоборот разбавляет весельем тамошнюю жуть. И ловушки тоже. Хотя ещё там есть быстрые и ядовитые крабы+зомби, и они пугают как раз через геймплей. И эта пугалочка работает во всех дальнейших главах. Комментарии разработчиков, кстати, там весьма занятные. Прямо ооочень рекомендую почитать. Да и не только там, но и во всех валвовских играх, где они есть.
А ещё, если сравнить крипера из Майнкрафта и волков из Vintage Story, то волки пострашнее будут. При том, что от крипера чисто механически больше вреда: и дамаг выше, и постройки может разрушить; а от волков помогает любая броня, начиная с медной. Зато волки рычат страшно.

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

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

>аниматроники не страшные
1. Вообще-то они пиздец стрёмные. Да тащемта ирл любые аниматроники пугают сами по себе, а фнафовские так ещё и всратые.
2. Порносайты это не В хорроре, это ВНЕ его. В игре всё ещё страшно. И все нормальные люди, играющие во фнаф, боятся.
3. Правило 34 это так-то норма.

>Ты не можешь требовать от игрока играть "правильно", если игровые механики позволяют играть "неправильно".
Тащемта в любую игру можно играть "неправильно", какие бы отточенные механики ни были. И это не проблема вовсе. Просто задача геймдиза - предусмотреть разные стили игры. А задача саунддиза, левелдиза, художника и прочих дизов - предусмотреть, чтобы эти разные стили не заруинили экспириенс. Факинг инглиш. Хотя такие стили, как спидран, заруинят его в любом случае, но тут уже похеру. Мы же целимся не в двух с половиной задротов, а в сколько-нибудь массовую аудиторию.
Но это к теме не относится, это не на прототипе чинится, а выявляется на плейтестах вертикального среза.

>Начал делать хоррор на кубах
Ну так покажи, что ж там у тебя такого страшного.
Аноним 20/10/24 Вск 09:12:11 980547 439
>>980518
>Пример хоррора без атмосферы:
>1. Игрок в комнате с единственным выходом.
>2. Комната медленно заполняется жидкостью. Это МЕХАНИКА, которая требует от игрока выйти наружу.
>3. Игрок пытается выйти - дверь заперта. Чтоб выйти, игроку нужно найти ключ, но жидкость мутная, скоро заполнит всю комнату.
Типичный trap из пилы и вообще многих пукает вода и лвл под водой/в космосе
>хорроре ты боишься постоянно
Нет игрок просто перегорит надо чередовать ,а оучше разбовлять юмором
Аноним 20/10/24 Вск 10:23:31 980551 440
>>980513
Благодарю за идею Антон

Другой анон
Аноним 20/10/24 Вск 10:25:30 980552 441
>>980450
Годно, я тоже пишу простые программы для автоматизации некоторых задач на годо
Аноним 20/10/24 Вск 11:40:29 980555 442
>>980476
Хуй знает, я давным давно на винформах формошлепил, и чуть менее давно на гтк - по моему опыту с годотом легче договориться в плане того, как именно ты хочешь УЙ сделать. Вообще самое беcпроблемное из всех формошлеп. Разве что системные темы не подхватывает.
Аноним 20/10/24 Вск 14:05:06 980571 443
16170433168730.jpg 4Кб, 112x112
112x112
А подскажите, в чем принципиальная разница между глобальным скриптом и тем, что мы создадим скрипт, напишем в нем "class_name SOOQA"?
Ведь то и то мы можем использовать откуда угодно. Ну кроме того, что глобальный скрипт загружается раньше всего и в нем удобно инициализировать самые важные переменные
Или я чет не догоняю?
Аноним 20/10/24 Вск 15:03:04 980577 444
>>980571
Глобальный скрипт (он же синглтон) создаёт экземпляр, но не создаёт класс (ну, по крайней мере, именованный, так-то любой скрипт это класс, к которому можно обратиться по пути к файлу). Скрипт с class_name создаёт класс с именем, но не создаёт экземпляр класса сам по себе.
Соответственно, в синглтоне можно использовать объекты и обычные функции. В скрипте-классе - только статические. Однако если сделаешь var sooqa = SOOQA.new(), то у полученного объекта можно будет использовать обычные функции и переменные, но тогда они будут находиться в созданном объекте sooqa, а не во всём классе сразу.

Примеры, когда оно может понадобиться в смысле глобальности:
Синглтон - для словаря состояния игры, для хранения настроек.
Скрипт-класс - для библиотеки вспомогательных функций.

шиз-синглтоны-не-нужны будет против Обычно синглтоны используются в обоих случаях, а скрипт-класс - когда надо именно что описать класс, из которого потом будут создаваться ресурсы или ноды. Например:
class_name Breakable
extends RigidBody2D
# дальше описываешь логику разбиваемости
или:
class_name CharacterData
extends Resource
# дальше @экспортируешь поля в этом ресурсе

С первым примером ты сможешь создавать ноды Breakable прямо в редакторе. Со вторым - персонажу дать какую-то настраиваемую инфу через @export var char_data: CharacterData
Аноним 20/10/24 Вск 15:05:59 980578 445
>>980577
Добавлю ещё.
Ты даже можешь содать класс
class_name SOOQA
extends Node
а потом создать скрипт
extends SOOQA
и его сделать синглтоном.
Но это изврат, конечно.
Аноним 20/10/24 Вск 15:30:59 980582 446
>>980555
Все же игровые движки не для этого делаются изначально, можно даже в этих тредах найти десяток случаев когда гуй не позволял что-то сделать, например уменьшить маргин вокруг текста на кнопке - >>933070 →
Там есть еще всякие другие нюансы типа поддержки скринридеров.
Аноним 20/10/24 Вск 15:52:40 980585 447
>>980577
>>980578
Так-с, ну вроде понял. Спасибо за объяснения
Аноним 21/10/24 Пнд 12:00:52 980684 448
Я только сейчас узнал что дабл клик на иконке ноды в дереве сцен перетаскивает камеру на эту ноду. Удобно охуеть.
Аноним 21/10/24 Пнд 12:47:20 980700 449
pepeyaizo.jpg 89Кб, 638x934
638x934
Кстати, а кто-нибудь из вас задумывался/делал/знает о том, как не "сломать" сохранения? Например, при некорректном завершении игры.

Возьмем такой пример:
Типа, вот у нас есть сущность A (текущая локация) и сущность B (массив с оружием игрока)
У каждой есть какое-то состояние.
Есть процесс сохранения:
A -> игрок заходит на локацию -> сохранение актуальной локации в A
B -> игрок получает новое оружие ->сохранение актуального оружия в B


И предположим случается ситуация, когда сущность A и B связаны. Например, игрок заходит на локацию A и должен автоматически получить новое оружие в B. И вот в этот момент происходит экстренное закрытие игры. И процесс сохранения "сломался":
A -> игрок заходит на локацию -> сохранение актуальной локации в A (тут все ок)
B -> игрок получает новое оружие -> приложение закрывается -> новое оружие не сохраняется в B

И после запуска игрок начнет на новой локации, но без нового оружия.

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

Понятно, что тут можно выдавать оружие после захода на уровень, или проверять наличие перед запуском и т.п. и т.д. Но это просто пример из головы, чтобы было понятно.
Аноним 21/10/24 Пнд 12:52:30 980702 450
>>980700
Слом сохранений после краша я и в ААА играх видел. Базы данных, не смотря на их транзакционную природу, тоже бывает разваливаются после падения сервера. Всегда есть шанс упасть так, что либо все посыпется, либо ты потеряешь последнюю транзакцию. Выбирай второй путь, проверяй валидность сейва и не давай его грузить если он помят.
Аноним 21/10/24 Пнд 15:23:14 980746 451
Гайс, хочу начать делать 3д игры, есть какие-нибудь простые программы для 3д лоу поли моделирования, и чтобы оттуда можно было спокойно переносить модели/анимации в годот?
Сейчас ебусь с блендером, и это какой-то ад, где непонятно даже как удалить анимацию.
Аноним 21/10/24 Пнд 16:22:23 980759 452
>>980746
>как удалить анимацию
1. Нажми на крестик, чтобы открепить анимацию.
2. Выбери очистку лишнего или переоткрой файл.
Анимация без "пользователя" не сохраняется.

>простые программы для 3д лоу поли
https://duckduckgo.com/?q=easy+3d+low+poly+modeling

>спокойно переносить в годот
obj для простейшего и gltf для анимаций.
Аноним 21/10/24 Пнд 16:27:42 980760 453
>>980746
Я в блокбенче делаю. А самое простое напрямую в годоте с помощью csg мешей.
Аноним 21/10/24 Пнд 16:32:22 980761 454
>>980700
>при некорректном завершении игры
На сохранении:
1. Переименовываешь last.save в prev.save.
2. Сохраняешь игру в last.save.
На загрузке:
1. Если игра не находит last.save, грузит prev.save.
2. Если last.save повреждён, грузится prev.save.
Можно хоть 10 предыдущих хранить.

>новое оружие не сохраняется в B
Тогда у тебя конца файла не будет -> сейв сломан.

Больше волнуйся о загрузке в новой версии игры.
Аноним 21/10/24 Пнд 16:48:43 980771 455
>>980759
>>980760
Спасибо, посмотрю блокбенч, выглядит просто
Аноним 21/10/24 Пнд 17:01:33 980773 456
>>980542
>Испуг от крипера называется скример
Скример - это внезапное появление. Крипер пугает присутствием даже на поверхности, когда он в 15 метрах от твоего новенького красивого домика.

>пещеры страшные, а поверхность нет
Но пещеры в Майнкрафте не страшнее поверхности...

>фотографии каких-то пустых пространств
>ирл любые аниматроники пугают сами по себе
Это вообще никак не относится к хоррорам:
https://ru.wikipedia.org/wiki/Лиминальное_пространство
https://ru.wikipedia.org/wiki/Зловещая_долина
Эти эффекты субъективны и работают на 30% людей максимум, потому что у них с мозгами что-то не так. Банальные зомби и роботы не должны пугать своим внешним видом - это какая-то проблема с психикой. Впрочем, древние люди много чего пугались из-за неопытности, может быть, в этом тоже проблема? Деревенщине покажи автомобиль - испугается, а к функционально аналогичной лошади он привык уже.

Короче, проблема в субъективности. А если хорроры субъективны, то и тестировать их бесполезно... 30% испугается твоих "лиминальных пространств" или "потрёпанных роботов", а 70% хмыкнут и скажут: "симулятор ходьбы по комнатам с роботами - херня, придумай какой-нибудь другой, фановый геймплей". Повезёт, если твою игру купят только целевые 30%.
Аноним 21/10/24 Пнд 17:28:55 980775 457
>>980773
>Эти эффекты субъективны и работают на 30% людей максимум
Верный способ отличить нпс от не нпс.
Аноним 21/10/24 Пнд 18:16:54 980781 458
лампово.mp4 305Кб, 960x540, 00:00:30
960x540
пруф.png 16Кб, 540x400
540x400
>>980542
>покажи, что ж там у тебя такого страшного
Сделал ламповую МЕХАНИКУ мигающих лампочек.
Только попробуй возразить, что это не механика...
P.S. Включил свет для записи. А лампа мигает...
Аноним 21/10/24 Пнд 19:24:43 980789 459
>>980577
>Глобальный скрипт (он же синглтон)
В Godot/GDScript невозможно создать полноценный синглтон, потому что нет способов запретить создание дополнительных экземпляров класса. Вся суть этого антипаттерна в запрете создавать экземпляры, а не в глобальном доступе. На попытку вызвать Input.new(), например, Godot справедливо ругается.

У полноценного синглтона ты можешь сделать так:
>var global = Global.new()
И получить ЕДИНСТВЕННЫЙ существующий объект вместо отдельного экземпляра этого класса.

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

Состояние игры - совокупность состояний систем и объектов игры. Не нужно сваливать всё в кучу типа:
>var chest_in_the_room_to_the_left_from_the_door_on_the_second_floor_in_the_building_next_to_the_shop_is_opened: bool
Потому что забудешь и запутаешься.

Ещё хуже что-то из разряда "var chest_69b: bool". Ты ж синглтоны из-за лени используешь - лень печатать...

Аналогично с настройками. Если какая-то настройка принадлежит чему-то одному, этот кто-то должен быть единственным хранителем настройки. Глобальными настройки могут быть, только если они действуют на большинство элементов (тема GUI, биндинги клавиш). Нужно избегать свалки настроек типа:
>var chest_color_in_the_room_to_the_left_from_the_door_on_the_second_floor_in_the_building_next_to_the_shop: Color
Потому что забудешь и запутаешься.

Разве это не очевидно? Вряд ли ты новичок, который считает, что если что-то легко написать - будет так же легко и поддерживать на протяжении многих лет.

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

Алсо, "autoloads" в Godot кривые и похожи на костыль, который когда-то очень давно сунули, а убрать теперь нельзя из-за того, что много проектов сломаются. Собственно, главная проблема с синглтонами - наговнокодив однажды, изменить потом тяжело.

Т.е. твоя "chest_69b" в настройках/состоянии игры отвечает непонятно за что, но если её случайно неправильно изменить - игра ломается непонятным образом, и ты потратишь кучу времени на поиск проблемного кода в неизвестном месте. А корень проблемы - в создании глобальной сущности, что не должна была быть глобальной изначально.

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

Но, если ты делаешь только простые игры за месяц, заполняя их в основном картинками - тогда ты вряд ли когда-нибудь осознаешь проблему с синглтонами.
Аноним 21/10/24 Пнд 20:42:13 980793 460
>>980773
>>980789
Воу-воу, так ты один и тот же анон. Ну, всё становится на свои места.
Крч не вижу смысла дальше пережёвывать эти несчастные хорроры. Все аргументы озвучены, дальше уже идёт повторение по кругу. Стороны остались при своём, но мудрый читатель сможет сделать выводы, если захочет. Не будем больше засирать годотред чем-то не относящимся к Годоту напрямую.
Аноним 21/10/24 Пнд 21:17:09 980796 461
Аноним 22/10/24 Втр 12:08:03 980860 462
>>980793
>Не будем больше засирать годотред чем-то не относящимся к Годоту напрямую.
Согласен. Тем более что уже сказано, что хорроры субъективны, а о вкусах спорить бесполезно.

>всё становится на свои места
Чего становится? Ты мне скажи, зачем новичкам рекомендуешь обмазывать проекты автолодами ("синглтонами", которые не синглтоны, а костыль конкретно Godot), если от этого в будущем у них проблемы будут? Это всё равно что предлагать новичку объявлять глобальные переменные вместо использования аргументов функций для передачи локальных данных. Что-то из разряда:
>var a; var b; var c
>func sum() -> void: c = a + b
>func _process(delta) -> void: a = delta; sum()
Вот скажи мне, тебе такой код нравится? Почему? Синглтоны по сути то же самое: хранят неизвестные данные неизвестно где, а корректность твоего кода в другом месте зависит от корректности синглтона.

Я просто неоднократно на эти грабли наступал в прошлом и не хочу, чтобы другие шли по ним же. Проблема становится очевидной, когда начинаешь разрабатывать что-то сложнее условной "змейки", продолжая обмазываться глобальными костылями.
Аноним 22/10/24 Втр 13:19:57 980877 463
>>980860
У тебя просто баттхерт от того что в голове насрано ООП из какого-то языка который ты знаешь и ты пытаешься натянуть этот язык на годот. В годоте есть автолоад и есть сигналы и есть ноды. А ты думаешь какими-то синглтонами, классами. Да, это можно делать, но как ты и сам заметил - это не путь годот. В годоте мы инстансим ноды и управляем ими с помощью сигналов. Все наследования и интерфейсы можно настроить прямо в дереве нодов.
Аноним 22/10/24 Втр 13:27:02 980878 464
>>980860
>корректность твоего кода в другом месте зависит от корректности синглтона.
Более того, корректная работа твоего кода зависит от любой другой функции, плагинов, библиотек, от самого годота, от системы на которой он работает и вообще, представляешь!
Аноним 22/10/24 Втр 14:13:51 980883 465
>>980877
В любых языках бывают антифичи, если они возможны, это еще не значит что ими надо пользоваться.
Аноним 22/10/24 Втр 19:27:03 980916 466
Если игра падает с ошибкой хочу показывать окошко со всеми логами, которые обычно пишутся в лог-файл и в консоль. Зачем? Чтобы не гонять бета-тестера искать логфайл, который как всегда хуй знает где. Есть идеи как это реализовать попроще?
Аноним 22/10/24 Втр 20:21:40 980917 467
>>980916
Отбой, сделал с помощью нейронки консоль, выводящую логи на игровой экран и поставил ее подгружаться самой первой.
Аноним 22/10/24 Втр 21:04:46 980924 468
image.png 34Кб, 1149x203
1149x203
>>980916
Лог файл там где и положено (либо настраиваешь местоположение в настройках проекта)
https://docs.godotengine.org/en/stable/tutorials/io/data_paths.html#accessing-persistent-user-data-user
Например если ты напишешь такой батник, или другим способом запустишь процесс, например из гдскрипта OS.execute()
start %APPDATA%\Godot\app_userdata\DUMER\logs
То у тебя откроется папка логов соответствующей игры.
Аноним 22/10/24 Втр 22:21:17 980940 469
Ньфандлер вопрос.

Чем годот лучше/хуже юнити?
почему именно годот?
Аноним 22/10/24 Втр 22:46:01 980946 470
>>980940
Годот проще в изучении. В юнити слишком много функционала. Если твоя цель не пилить AA, то выбирай годот.
Аноним 22/10/24 Втр 22:50:06 980948 471
Привет. Есть класс A, у него есть наследник B. A -> B. Есть типизированный массив экземпляров A, где при переборе, в зависимости от того, является ли экземпляр класса A экземпляром класса B или нет, немного меняется поведение. Проверяю через ключевое слово "is". И возникла проблема. Я создал класс C, являющийся наследником класса B, и экземпляры класса C попали в первый массив с экземплярами A. Мне нужно, чтоб экземпляры C обрабатывались как экземпляры B, ведь они наследники также и B. Но "экземляр C is B" выдает false. Как решать?
Аноним 22/10/24 Втр 23:00:07 980950 472
>>980948
А, все, нашел is_class(string). Странно, что поведение у него отличное от кейворда is. Да и принимает он строку. Но хоть что-то.
Аноним 22/10/24 Втр 23:04:21 980952 473
>>980948
Способов то много, но скорее всего таким инструментом пользоваться не надо, потому что ты себя загонишь в полный ад.
Но если говорить в рамках ООП. Во-первых, по твоему описанию ты дублируешь механизмы ООП. Если у тебя поведение разное, то оно и должно описываться в перегруженных функциях самих классов, а не проверятся извне через is, да это и медленнее скорее всего. У каждого класса должны быть свой say(): meow() или say(): bark(), а не общий say() который проверяет is cat: meow() elif is dog: bark()
Во-вторых, ты можешь просто воспользоваться логикой. Ну типа ты мог бы проверять не is C, а not is A. Но это все равно приведет к аду.
В-третьих есть еще всякие инструменты типа Class.get_global_name, get_instance_base_type и так далее
Но в целом наверняка это можно сделать без ООП, какими нибудь компонентами.
Аноним 22/10/24 Втр 23:07:00 980953 474
>>980952
Компоненты на самом деле никогда не противоречили ООП, я хз какой шизоид это придумал а остальные подхватили.
Аноним 22/10/24 Втр 23:27:23 980959 475
>>980953
Это вообще никак не противоречит сказанному. Но можно переформулировать "это наверняка можно сделать без наследования".
Аноним 22/10/24 Втр 23:28:42 980960 476
>>980940
Вообще, для таких вопросов тут на доске целый тред есть, не рекомендуется их спрашивать в тредах движков.

>Чего становится?
А то, что с тобой спорить бесполезно, ты игнорируешь неудобные аргументы, подстраиваешь чужие формулировки под свою логику и разбиваешь соломенные чучела, которые сам же и выстраиваешь. Другими приёмами демагогии тоже пользуешься, просто эти три прям выше присутствуют.
Аноним 22/10/24 Втр 23:29:28 980961 477
Аноним 23/10/24 Срд 01:58:39 980987 478
>>980952
Спасибо за рекомендации. Я знаю, что это не по ООП-шному. Посижу подумаю.
Аноним 23/10/24 Срд 13:28:05 981013 479
>>978396
Поздно рыпатца. Вы все уже зашкварены. Петушары.

Кстати тюринг тоже из этих был. Так что вдвойне петушары.

Единственное верный способ не зашкваритца это надеть лапти и вязать лукошки.
Аноним 23/10/24 Срд 13:36:01 981014 480
>>980953
> какой шизоид это придумал
Школьник, который предыдущие джва года нахваливал ЕЦС по всем тредам гдача. Щас чот притих. Повзрослел видать.
Аноним 23/10/24 Срд 17:34:49 981054 481
>>981014
Строй табличку 2 на 2, если у тебя понимание вызывает затруднения. Итого возможны: ООП с компонентами, ООП без компонентов, компоненты без ООП, что-то без ООП и компонентов.
Аноним 23/10/24 Срд 18:00:36 981060 482
Аноним 23/10/24 Срд 22:22:39 981103 483
>>980877
>в голове насрано ООП из какого-то языка
Начинал вообще с чисто процедурного кода, на ООП перешёл только спустя много месяцев процедурки. Проблема с глобальным доступом к чему-либо не зависит от парадигмы, в которой ты работаешь.
>и ты пытаешься натянуть этот язык на годот
Godot, ВНЕЗАПНО, целиком построен на ООП и даже принуждает к ООП - в GDScript отсутствует способ объявления процедур/функций отдельно от класса.
Вот статья Хуана с официального сайта:
https://godotengine.org/article/why-isnt-godot-ecs-based-game-engine/#why-does-godot-not-use-ecs
>Godot uses more traditional OOP by providing Nodes, that contain both data and logic. It also makes heavy use of inheritance.
Godot == ООП. Это база, это знать нужно.
>В годоте есть
Ну есть и есть. В других языках оператор goto есть:
https://ru.wikipedia.org/wiki/Goto#Критика
>сигналы
Их обычно называют событиями, т.е. Events, и они применяются в любом современном ООП языке.
https://ru.wikipedia.org/wiki/Событие_(объектно-ориентированное_программирование)
>ноды
Это базовые классы и их экземпляры (объекты).
>В годоте мы инстансим ноды
Создаём объекты - экземпляры классов.
>управляем ими с помощью сигналов
Это событийно-ориентированная архитектура:
https://ru.wikipedia.org/wiki/Событийно-ориентированная_архитектура
Аноним 23/10/24 Срд 23:29:57 981109 484
>>980950
>is_class(string)
Этот метод работает только с базовыми классами:
https://docs.godotengine.org/en/stable/classes/class_object.html#class-object-method-is-class
>Note: This method ignores class_name declarations in the object's script.
Обсуждение этой темы:
https://github.com/godotengine/godot/issues/21789

>>980948
>"экземляр C is B" выдает false.
Странно. У тебя там не сломался кэш скриптов? В некоторых случаях Godot забывает, какие скрипты от каких наследуются, и тогда самым простым рабочим решением будет: сбросить кэш, перезапустить Godot.

И в чём проблема добавить ещё одну проверку?
>_ elif node is B or node is C: ...
Если сброс кэша не поможет решить этот баг.

>>980952
>У каждого класса должны быть свой say(): meow() или say(): bark(), а не общий say() который проверяет is cat: meow() elif is dog: bark()
Зависит от задачи. Ты рассматриваешь ситуацию, в которой ты вызываешь метод объекта. Но в другой ситуации тебе нужно сделать что-то снаружи этого объекта в зависимости от его класса. Банальная сортировка как пример:
>for animal in animals:
>_ if animal is Herbivore: herbivores.add_child(animal)
>_ elif animal is Predator: predators.add_child(animal)
В данном примере мы не можем сделать метод "put_yourself_in_category()", потому что тогда все наследники Animal должны будут знать о нодах в какой-то совершенно посторонней сцене - обычно требуется абстрагировать животных от этого.

Если дерево наследования такое:
>Animal
>_ Predator
>_ _ Cat
>_ _ Dog
Тогда "animal is Predator" должно выдавать true и для Cat, и для Dog, а не только для Predator. Ведь, по логике наследования, Cat и Dog являются Predator.

>сделать без ООП, какими нибудь компонентами
1. Компоненты никак не противоречат ООП.
2. Там в любом случае ООП. В базе движка.

Компонентами ты будешь делать как-то так:
>for animal in animals:
>_ if "diet" in animal.traits: # есть компонент диеты?
>_ _ match animal.traits["diet"]: # проверяем значение
>_ _ _ "plant": herbivores.add_child(animal)
>_ _ _ "meat": predators.add_child(animal)
Это разве не ООП? Это всё то же ООП. Но вместо наследования используется экземпляр Dictionary с методами и данными, встроенный в объект animal. Использование метода add_child() класса Node тут вообще никак не изменилось - значит, это ООП.

Если хотел написать "без наследования", так и пиши.
Аноним 23/10/24 Срд 23:46:31 981110 485
>>981109
>put_yourself_in_category
Конечно так делать не надо, а вот отвечать какой они категории, без наследования - вполне. Что-то типа get_category, а там хоть битовые флаги, хоть json, хоть sqlite.
>Если хотел написать "без наследования", так и пиши.
Вообще-то позже я так и написал, а еще и тебя поправлю:
> Компоненты никак не противоречат ООП.
Я и не писал такого. Использовать компоненты без ООП не означает, что они противоречат.
Аноним 24/10/24 Чтв 00:49:24 981115 486
>>980513
>работа для средней студии на пару лет
А с чего такой вывод, интересно?

Что нужно для геройского шутера?
1. Одна карта на CSG примитивах.
2. Один режим игры с win/lose условием.
3. Базовый контроллер героя: бег, прыжок.
4. Пара героев с парой разных способностей.
5. Простейший авторитарный сервер...
Меня беспокоит только сервер. Никогда не делал.
Аноним 24/10/24 Чтв 01:47:04 981118 487
Мне приснилось, как этот тред ушел в бамп лимит, а его почему-то не перекатывали. Только щас понял, что это был сон, когда зашел чекнуть что там с новым тредом. Блять, такая хуйня мне еще никогда не снилась.
Аноним 24/10/24 Чтв 01:56:40 981119 488
>>981118
Мне однажды снилось что я игру релизнул и заработал на этом. Вот это хуйня так хуйня.
Аноним 25/10/24 Птн 01:10:27 981289 489
Срочно делайте игры
Аноним 25/10/24 Птн 04:12:55 981298 490
image.png 71Кб, 894x461
894x461
image.png 79Кб, 855x269
855x269
Пачиму через change_scene_to_packed не меняется сцена на наследуемую? С любой другой все ок, как и с наследуемой через scene_to_file. А с packed нет, хотя в туторе именно так
Аноним 25/10/24 Птн 11:00:03 981325 491
>>981115
Ну и получишь и не преальфу, и не тестовый прототип даже. Смысл?
Аноним 25/10/24 Птн 12:51:51 981330 492
>>981298
Возможно упакованная-наследуемая подтягивает куски из родителя? А может в туторе ошибка.
Аноним 25/10/24 Птн 12:52:59 981331 493
Узнал что твинам можно устанавливать процесс мод. Айдл и физика.
Аноним 25/10/24 Птн 13:07:33 981332 494
>>977039 (OP)
Можно как-нибудь отключить сортировку по Y для одной конкретной ноды?
Аноним 25/10/24 Птн 13:37:31 981334 495
>>981298
Никогда не пользовался инхеритед сценами. Всегда с ними что-то да по другому происходило.
Аноним 25/10/24 Птн 13:41:25 981335 496
>>981332
И какой же результат ты хочешь получить отключив сортировку? Неопределенный? Всегда сверху?
Аноним 25/10/24 Птн 13:45:17 981338 497
>>981335
Чтобы всегда был под тем, что сортируется. Как другие ноды, которые не являются дочерними Y-sort. Я знаю, что могу выставлять Z-index, но тогда мне придется проставлять его в большей части нод, что не очень адекватно звучит.
Аноним 25/10/24 Птн 14:01:20 981342 498
>>981338
Сделай два слоя ysort. Один внизу (сверху в древе сцен), другой наверху (ниже в древе сцен). Ноды которые "под" отправляй на первый, которые "над" на второй.

У меня на трешке была игра с шестью такими слоями, лол.
Аноним # OP 25/10/24 Птн 14:15:31 981343 499
Предлагайте арт для переката, а я через часок-другой подскочу. Ну всё, обнял, приподнял, на созвоне.
Аноним 25/10/24 Птн 14:17:15 981344 500
>>981338
Ну а если z-indexc задавать только самой этой ноде? Или не добавлять ее под y-sort? Не знаю что будет если ноде выставить set_as_toplevel и поменять z. А еще есть z as relative. Что если именно этой ноде сделать.
Аноним 25/10/24 Птн 14:24:09 981346 501
bianca-peixinho[...].jpg 602Кб, 1920x2716
1920x2716
hq720.jpg 65Кб, 686x386
686x386
picturepc6a2329[...].webp 111Кб, 1200x769
1200x769
изображение.png 1026Кб, 860x924
860x924
>>981343
Такая была?
Еще есть 4, но не знаю откуда оригинал
Аноним 25/10/24 Птн 14:26:21 981347 502
>>981325
>Смысл?
Чтобы было где реализовывать девочек-монстров?

Узнал, что hero shooter может быть синглплеерным.
Т.е. можно сервер вообще не делать - ещё проще!
Аноним 25/10/24 Птн 14:27:34 981348 503
image.png 1145Кб, 1400x1400
1400x1400
image.png 672Кб, 1100x824
1100x824
Аноним 25/10/24 Птн 14:31:16 981349 504
>>981348
>The argument "delta" is never used...
ТОП КЕК + ЖИЗА! ОП, ставь эту!
Аноним 25/10/24 Птн 14:39:17 981351 505
>>981347
Можно по локалке или same-screen зделоть
Аноним 25/10/24 Птн 14:50:03 981352 506
dd40155057c4d2e[...].jpg 33Кб, 400x400
400x400
g.jpg 138Кб, 1000x1128
1000x1128
16801145174970.png 993Кб, 1024x723
1024x723
Картинка из 35-го треда, просто захотел сделать мем.
Аноним 25/10/24 Птн 15:04:14 981354 507
>>981298
>хотя в туторе именно так
В каком? Это официальный?

>change_scene_to_packed
>change_scene_to_file
Эти функции подходят только очень простым играм, сколько-либо большие проекты их не используют. Практически то же самое, как если сделать так:
>scene.queue_free()
>scene = load("res://path/file.tscn").instantiate()
>root_node.add_child(scene)
На практике тебе обычно нужно больше, чем это, и поэтому эти функции не подходят многим играм.

Наследуемые сцены иногда глючат, но не страшно.
Аноним 25/10/24 Птн 15:04:44 981355 508
>>981352
Поиграл бы с ее вулканом, если понимаете о чем я.
Аноним 25/10/24 Птн 15:12:40 981356 509
>>981338
Ты лучше скажи, зачем тебе загонять спрайт под все остальные спрайты. Он же тогда невидимым будет?

Может, тебе CanvasLayer нужен отдельный?
Аноним 25/10/24 Птн 16:58:30 981367 510
>>981342
К сожалению, это рушит всю структуру моего дерева.

>>981356
Оно не должно быть под всеми спрайтами, а только под теми, которые сортируются. Например, он будет рисоваться над тайлмапой с полом, но под персонажем игрока.
ПЕРЕКАТ Аноним # OP 25/10/24 Птн 18:35:51 981388 511
1729870506367.png 271Кб, 1000x420
1000x420
Настройки X
Ответить в тред X
15000
Добавить файл/ctrl-v
Стикеры X
Избранное / Топ тредов