Программирование


Ответить в тред Ответить в тред

Check this out!
<<
Назад | Вниз | Каталог | Обновить тред | Автообновление
397 47 250

gamedev /gamedev/ Аноним 22/02/18 Чтв 23:18:44 11445361
John-Carmack.jpg (31Кб, 450x302)
450x302
Тред о разработке игр для тех, кто брезгует заходить в /gd.

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

#gamedev #геймдев #(разработка игр) #игры #unity #godot #ue4 #unreal #lua
Аноним 22/02/18 Чтв 23:56:21 11445562
Я тебе скажу, анон, по секрету. Всю жизнь мечтаю писать игры. У меня дохуища годных идей. Но волею судеб приходится заниматься базами данных.
Аноним 23/02/18 Птн 02:59:14 11446223
>>1144536 (OP)

как-то в универе писал для курсового игору на directx, 3 дня исправлял баг когда мышью двигаешь камеру, а она продолжает двигаться некоторое время когда перестал мышкой двигать, ну его нахуй такие ебануе баги вылазят
Аноним 23/02/18 Птн 05:51:24 11446414
Щас засрут тред знаменитыми вебмками, димасиком и распидором.
Аноним 23/02/18 Птн 09:01:37 11446515
Ну валяй. Что тебя интересует из алгоритмов?
Аноним 23/02/18 Птн 10:43:33 11446826
Возможно сделать peer to peer мультиплеер без мастер-сервера? И как клиент вообще определяет, что какой-то комп в другом городе нажал "создать игру" (без мастер-сервера) ?
Аноним 23/02/18 Птн 12:21:39 11447347
>>1144682
Если пиры выбирают среди себя мастера, кое-как наверное ещё возможно. Иначе же, если топология другая, будет говно, так как очень большие пинги через несколько пиров. В целом, во множестве игор, где вместе с игрой поставляется сервер, позволяют запустить сервер руками, а через агрегатор этот сервер становится видим всему интернету. Сами клиенты уже подключаются непосредственно к серверу, взяв у агрегатора его IP. Примеры: контрстрайк, факторио, майнкрафт, тысячи их. То же своего рода p2p, так как сам агрегатор, издатель игры, сервера не держит.

Насколько мне известно, в первом старкрафте была serverless архитектурка. Но она очень зависима от качества сети, это только для LAN. Там по сути все подключены ко всем одновременно.
Аноним 23/02/18 Птн 14:35:53 11447938
>>1144682
если совсем коротко: то в современной сети где ipv4 - нет
Аноним 23/02/18 Птн 14:53:37 11447999
>>1144734
Благодарю, пойду читать подробнее.
>а через агрегатор
Агрегатор это что? Как работает? Не нахожу в поисковиках(ru и en) такого термина.

>>1144793
Придётся делать сервер для самостоятельного запуска, в таком случае.
Аноним 23/02/18 Птн 15:57:03 114481110
>>1144682
Тебе в любом случае нужен какой-то entry point в твою п2п-сеть. Если нет мастер-сервера - все равно придется вместе с программой класть список известных и стабильных нод сети, через которые уже можно находить все остальные ноды. Короче, в контексте этого треда никакого смысла в такой еботне нет, мастер-сервер пишется буквально в две строчки (просто сохраняешь\отдаешь список игровых серверов).
Аноним 23/02/18 Птн 17:40:32 114485411
>>1144682
Дум в 93 году работал именно так.
Аноним 23/02/18 Птн 17:50:46 114486212
>>1144536 (OP)
Думаю, начинать надо с модов на те игры, которые тебе нравятся. Потом начинать делать игру с нуля.
Аноним 23/02/18 Птн 19:00:30 114491013
Как сделать динамическую двумерную тайловую карту из гексагонов (шестиугольников)? https://www.redblobgames.com/grids/hexagons/ прочитал

Допустим, все вычисления у нас ведутся в кубических координатах. В экранные координаты переводим только на этапе рендеринга. Я так понимаю, у нас есть два варианта:
1) Считаем для каждого видимого гексагона его центр в экранных координатах, применяем трансформацию камеры, после этого рендерим квадратный спрайт в нужном месте. В квадратный спрайт впихнут гексагон, лишние обрубки прозрачные, спрайты перекрываются. При клике по карте можно использовать обычный метод определения кликнутого спрайта (обычно уже реализован в рендер-либе) - тогда клик заденет либо 1 спрайт (ок), либо 2 (тогда считаем, центр которого ближе к месту клика).
2) То же самое, только вместо гексагонов впихиваем в спрайт треугольники. Каждый гексагон состоит из трех треугольников, можно делать плавные переходы между разными типами поверхности без ручной отрисовки кучи гексагональных спрайтов.

Что меня тут напрягает:

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

- перекрывающиеся тайлы. Из-за этого могут быть проблемы с производительностью или еще какие-то подводные?

- зум\скейл. Опять же, с зумом все целочисленные координаты по пизде пойдут.

Как обычно это делают? Спрайты\тайлы вообще подходящее решение для гексагональной карты?
Аноним 24/02/18 Суб 01:39:44 114504214
>>1144910
Я пробовал строить сетки (и не я один) и никаких проблем со смещением в половину гекса не испытывал (щели и т.п.).
Как прокрутка привязана к форме тайла и чем она будет отличаться от прокрутки квадратных тайлов вообще не пойму.
Аноним 24/02/18 Суб 01:52:33 114504415
>>1144910
Если у тебя рендер не 3d и без AA, то округление можно проконтролировать. Иначе делай сетку вплотную состыкованных тринглов с текстурами.
Аноним 24/02/18 Суб 01:53:45 114504616
>>1145042
При прокрутке будут вылазить нецелочисленные координаты, которые нужно будет округлять, я же вроде писал.
Аноним 24/02/18 Суб 02:16:17 114505117
>>1144793
Да не, всё можно в ipv4. Проблема в том что broadcast пакеты не выходят за пределы NAT. Никто не даст тебе зафлудить весь интернет широковещательными анонсами игровых серверов. Так что все кто будет что-то там кудахтать про то как раньше всё работало и какое сегодня всё криворукое, должны вспомнить что раньше только в локалке и играли.
Аноним 24/02/18 Суб 02:34:10 114505818
Ночи, Антоши!
Раз тут обсуждается и "архитектура", вылечите меня, пожалуйста, я уже не могу.

Суть проблемы:
Игра на юньке (но не суть). Есть некие "прожектайлы" (пули, лазеры, хуязеры...) и они используются разными сущностями (игроком и разными врагами). Очевидно, что эти прожектайлы хранятся в пуле (pool) и реюзаются.

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

Игра типа Space Invaders. Есть некие прожектайлы (типа пули). Для ускорения взял уже готовый простенький синглтон-пул (мне ранее велели зарекаться от синглтонов, но для ускорения...), который извлекает по прототипу (а внутри на самом деле даже проще -- по имени прототипа).
И вот я сделал простой компонент, который производит выстрелы как у игрока, так и у врага, только у игрока по кнопке, у врагов по таймеру, извлекая из пула-синглтона нужный прожектайл. Назовём его Shooter.
Ни класс игрока, ни класс врага не знает о своём Shooter-е. Я инстанциирую врагов, но не их Shooter-ы. Последнего может даже и не быть во враге, например. Прожектайл в свою очередь летит пока не попадет в цель или невидимую стену за экраном и сам себя же возвращает в пул. В этом вроде бы удобство компонентной системы, компонент может быть, а может его и не быть, и он живет своей жизнью.
Но вся эта "красота" разбивается о необходимость ею управлять.
Например: когда игрок потерял жизнь, нам нужно убрать все выпущенные прожектайлы с экрана (вернуть в пул). Но они же живут своей жизнью и ничего не знают о игроке и о его смерти.

Кто всем этим должен управлять?

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

Как быть?

У меня были идеи, но они мне кажутся то уродливыми, то костылями, то излишеством. Вот они:

1) Дописывать какой-то фасад над пулом, который при получении из пула любого объекта проверяет все его компоненты на тип и реализацию разных интерфейсов (уродство).

2) Расширить пул параметром для каждого прототипа указывать в какой трансформ вкладывать его инстансы при извлечении из пула (иерархическая вложенность объектов в сцене, если кто не знаком с Unity, как коробка в коробке). Тогда на конкретный трансформ можно будет повесить дополнительный скрипт, который сможет манипулировать своими чайлдами. Этот метод мне кажется костылём и взять проект побольше, это -- костыль 146% и никогда не знаешь кто и для какой фичи в будущем какой какой трансформ решит сделать родительским для того или иного прожектайла.

3) Dependency Injection. Это тот самый способ, который "излишество" (грузить дополнение по коду бОльшее, чем сама игра) и одновременно "более-менее", т.к. с ним я знаю как более-менее красиво всё порешать. Но как-то же раньше без DI аналогичные вещи решались. Я хочу научиться этому мастерству использования паттернов правильно.
Аноним 24/02/18 Суб 03:22:53 114507719
>>1145058
>Например: когда игрок потерял жизнь, нам нужно убрать все выпущенные прожектайлы с экрана (вернуть в пул). Но они же живут своей жизнью и ничего не знают о игроке и о его смерти.
Ээ... https://docs.unity3d.com/ScriptReference/Object.FindObjectsOfType.html
Написано же - с вопросами по движкам пиздуйте в соответствующую парашу.

Аноним 24/02/18 Суб 08:04:29 114510920
Libtcod + Python или Squidlib + Clojure?

Есть ли какая-то книга по дизайну и написанию рогаликов?
Аноним 24/02/18 Суб 08:53:36 114511421
>>1145109
>говно + моча или моча + говно
ncurses + C
>Есть ли какая-то книга по дизайну и написанию рогаликов?
rlgclub.ru
Аноним 24/02/18 Суб 09:41:32 114511922
nqcoop2.png (101Кб, 808x626)
808x626
Аноним 24/02/18 Суб 09:59:30 114512723
Как в компонентной системе (ecs) делать баффы/пауерапы/дебаффы?
Аноним 24/02/18 Суб 13:43:09 114518724
>>1145077
Анонам с таким внимательным чтением рекомендуется самим пиздовать к параше, потому что вопрос был о том, как бы правильней организовать это всё архитектурно, чтобы всё было управляемо и в идеале поддерживало такую охуенную фичу, как портируемость, потому что хороший код как раз должен быть максимально отвязан от движка. И вот я пытаюсь выяснить каким должен быть этот хороший код. Смею предположить, что подобные задачи управления инстансами решались и за рамками юнити.

Предложенное -- это конечно тоже выход, но это и очередной костыль.
Аноним 24/02/18 Суб 14:34:05 114522125
>>1145119
Он работал уже на TCP что тоже было не очень.
Потом вышел QuakeWorld и сделали как надо
Аноним 24/02/18 Суб 19:42:00 114540826
>>1145187
Ты какую-то хуйню несешь, ей-богу. Если выкинуть всю воду из твоего поста, то он сведется к вопросу: "как мне удалить проджектайлы, если в моих объектах ссылка на них нигде не хранится?"

Тебе и отвечают: выбираешь из сцены все объекты с соответствующим компонентом и делаешь с ними что хочешь. Почитай, блин, что такое ecs.
Аноним 24/02/18 Суб 19:45:41 114541027
Аноним 24/02/18 Суб 21:53:11 114549128
>>1145221
Спасибо. Там IPX ещё кажется был даже, хех.
Аноним 27/02/18 Втр 11:49:30 114681529
>>1145696
>есть аналоги для написания костылей вне игровых движков?

http://hiasm.com/
Аноним 27/02/18 Втр 12:35:16 114684430
>>1144910
>Допустим, все вычисления у нас ведутся в кубических координатах.
Допустим, мы будем срать на потолок. Используй X/Y, тебе будет проще.
>Я так понимаю, у нас есть два варианта:
Абстрагируйся от квадов/треугольников и рисуй просто мэш. Это не та проблема, над которой нужно долго корпеть. Хит-тесты можно сделать просто аналитически.
>Из-за этого вроде как могут быть ошибки при округлении, ну и в итоге между тайлами на карте будут черные просветы.
Значит, не округляй, рисуй не целочисленно.
Аноним 27/02/18 Втр 12:57:58 114684831
>>1146844
>Используй X/Y
У гексагональной сетки нет никакого однозначного X/Y, так что непонятно, что ты тут вообще хотел сказать. Зачем ты отвечаешь, если не шаришь?

>рисуй просто мэш
>речь о 2д и спрайтах

>не округляй
Тогда и будут черные просветы. Не шаришь - не лезь, пожалуйста.
Аноним 27/02/18 Втр 13:12:09 114686132
>>1146848
>У гексагональной сетки нет никакого однозначного X/Y
Есть, как и у всего, что можно нарисовать на экране.
>речь о 2д и спрайтах
То есть, про тайлы из трёх треугольников я написал, да? Ну тогда определись сначала, что у нас есть.
>Тогда и будут черные просветы.
Нет, не будут. Ну то есть, конечно, это зависит от твоей рендер-либы, возможно, она вообще сама фильтрует твои спрайты вместо того, чтобы отдать это OpenGL/DirectX, и делает это коряво - тогда про зум вообще можно забыть - но 99% рендер-либ такой хернёй не страдают.
Аноним 27/02/18 Втр 13:20:55 114686933
>>1146861
>Не шаришь - не лезь, пожалуйста.
Аноним 06/03/18 Втр 16:07:21 115069334
Как в ECS реализовать стены, холмики, цветочки и прочие (интерактивные, Карл!) элементы ландшафта?

С одной стороны, логично сделать KISS (тупо и в лоб): каждый холмик - энтити с соответствующими компонентами. С другой стороны, Капитан Очевидность мне подсказывает, что это будет не очень-то эффективно - плюс нужно делать culling, нужно делать динамическую подгрузку, нужно делать симуляцию в фоне, и в итоге у одного холмика-цветочка все равно куча разных представлений вмест одной энтити.
Аноним 07/03/18 Срд 02:23:26 115098435
>>1150693
Стены-холмики - это просто одна сущность из двух компонентов - модель + коллизия. Culling, динамическая подгрузка - это всё забота компонента модели. А зачем ты усложняешь?
Аноним 07/03/18 Срд 15:52:27 115116136
>>1150984
>Стены-холмики - это просто одна сущность из двух компонентов - модель + коллизия.
Я этот подход и описал в своем посте с пометкой "KISS".

>Culling, динамическая подгрузка - это всё забота компонента модели.
А теперь представим, что у меня, ну, скажем трехслойная карта 1000х1000. Сильно мне поможет выгрузка одних только моделей? Не думаю, анон. Hence the question.
Аноним 07/03/18 Срд 17:38:44 115122737
15179281324240.png (2267Кб, 1508x932)
1508x932
>>1145696
>Или задроты не могут распрощаться с emacs
Аноним 07/03/18 Срд 19:27:16 115127638
>>1151161
>Я этот подход и описал в своем посте с пометкой "KISS".
Прости, братиш, мой телепатийный аппарат в ремонте.
>А теперь представим, что у меня, ну, скажем трехслойная карта 1000х1000. Сильно мне поможет выгрузка одних только моделей? Не думаю, анон.
А что ты ещё хочешь выгружать? Можешь создать тестбэд да проверить. А можешь не проверять и просто посмотреть на чуваков, которые пришли к успеху: https://www.youtube.com/watch?v=oup3dSeGAhM Это, правда, не про стриминг, а про дроу-коллы, но подход понятен - они нихуя не выгружают, рисуют всю возможную хуйню во фрустуме почти без отсечения и гребут бабки лопатой.
Аноним 07/03/18 Срд 19:34:03 115127939
>>1151161
Добавлю ещё, что коллизии весят мало, и выгружать их смысла, как правило, нет - в GTA, например, коллизия хранится всегда вся для всей карты.
Аноним 07/03/18 Срд 20:45:45 115129840
>>1151276
>Прости, братиш, мой телепатийный аппарат в ремонте.
Ээ? Система видения-чтения, видимо, тоже барахлит чутка?

>каждый холмик - энтити с соответствующими компонентами.
>Стены-холмики - это просто одна сущность из двух компонентов

>>1151276
>А что ты ещё хочешь выгружать?
Ну я же написал выше: у меня на карте, допустим, 10^9 объектов, их и хочу выгружать.

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

>>1151279
Я таки подозреваю, что коллизии там хранятся не на каждый тайл, а геометрически на каждое здание, разве нет? Это на порядки меньше данных. А все маленькие объекты типа машинок выгружаются буквально сразу после пропадания из поля зрения.
Аноним 08/03/18 Чтв 10:36:35 115142341
image.png (1276Кб, 1200x628)
1200x628
>>1151298
>На чем там этот пубг?
на уече очевидно же

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

или ты как этот шизойд который вечно будет чего то хотеть, вместо того что бы сделать >>1144556
>У меня дохуища годных идей
ВСЕ САМ!!1
Аноним 08/03/18 Чтв 10:41:58 115142442
>>1151298
>что коллизии там
элементарные, конвексные

>на каждое здание
которую в свою очередь модулярное, колизия на 4 вершины — охуеть не встать, да анон?
Аноним 08/03/18 Чтв 17:12:56 115160643
Аноним 08/03/18 Чтв 17:56:29 115165144
>>1151606
> using a third-party physics library (PhysX) ... a lot of maths, creativity and approximative hacking. The graphical part was much easier to implement, warping is basically just a vertex shader displacement, requiring objects to be evenly tesselated.
Аноним 08/03/18 Чтв 18:17:47 115166945
>>1151606
>vertex shader
первая мысль и конский фалоф
Аноним 08/03/18 Чтв 18:30:34 115168846
>>1151651
>>1151669
Ну как сделать рендеринг я еще представляю, а колизии и физика?
Аноним 08/03/18 Чтв 18:39:12 115169647
>>1145127
У энтити должен быть вектор компонентов типа IEffect, с каким-нибудь методом DoEffect(). И система просчета бафов, которая будет рассчитывать результаты эффектов.
Аноним 08/03/18 Чтв 18:39:32 115169848
image.png (1111Кб, 1024x576)
1024x576
>>1151688
кстати вертекс шейдер не трогает колизию, по крайней мере в уече по дефолту

а ебать я с SImpleGrassWind спутал, а если там дисплейсмент, то хуле нет, читай ебать что такое теселяция

хотя помню накачал RDTешных текстур и с теселяцией и большим оффсетом кароче нихуя колизия незаработала на моих буграх, но мне тогда пофиг было, наверняка где нибудь лежит жутко дорогущая галка
Аноним 08/03/18 Чтв 18:40:48 115169949
>>1145408
Почему нельзя просто попросить пул деактивировать свои объекты?
Аноним 08/03/18 Чтв 18:57:18 115172650
>>1151688
С физикой скорее всего глобально ничего не происходит. Берем карту с обычным евклидовым пространством, размещаем в нем 2 точки, задаемся определенным радиусом, получаем "капсулу". Если физический объект при расчете перемещения оказывается в ней, то нехитрыми умножениями на вектор ускоряем перемещение объекта. Искажения картинки маскируют факт изменения скорости и ускорения, и у зрителя создается иллюзия, что ему необходимо преодолеть меньшее расстояние, а на самом деле он просто перемещается в нем быстрее.
Соответственно можно замедлять игрока, чтобы растянуть пространство.
Аноним 08/03/18 Чтв 19:11:09 115173551
>>1151423
>>1151424
Анон, ты бы вопрос прочитал для начала.
Аноним 08/03/18 Чтв 21:01:38 115180652
>>1151726
Если стягивать точки перпендикулярно движению, то уже простым ускорением/замедлением не обойтись.
Аноним 08/03/18 Чтв 21:16:56 115181553
>>1151726
еще можно с фовом поиграть
Аноним 09/03/18 Птн 09:34:29 115203254
Аноним 09/03/18 Птн 16:16:41 115225555
>>1152032
https://www.youtube.com/watch?v=ztAg643gJBA

ты не тот видос включил, там какое то цифроебство, вот в этом четко показано что это торус ибаный, и демка под видосом, бери и реверси
Аноним 09/03/18 Птн 16:50:09 115228556
>>1144536 (OP)
Пагни, учусь на заочке. Нужно делать курсовик по Компьютерной графии на юнити.

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

С юнити знаком поверхностно. Поясните за генерацию ландшафта из файла. Есть ли какие гайды или видеоуроки?
Аноним 09/03/18 Птн 16:54:48 115229457
>>1152285
Ты не догадался ввести этот запрос на английском, не?
Аноним 09/03/18 Птн 17:50:13 115235358
2018-03-0917-43[...].png (658Кб, 1248x851)
1248x851
>>1152285
>генерацию ландшафта из файла
шли их нахуй, скажи преподу что юнька распиаренное говно для пидоров и безмозглых детей которые могут только пиздить ассеты со стора, а ты тупо не хочешь шквариться

а вообще любопытно где в рахе тискают юньку и задают по ней курсовые? и почему ты при этом в этом не шаришь лол!?
Аноним 09/03/18 Птн 19:44:30 115245959
>>1152285
По посту нихуя не понятно что там у тебя в файле.

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

Если у тебя в файле обычная карта высот и регулярная сетка то все элементарно
Делаешь сетку по этому гайду
http://catlikecoding.com/unity/tutorials/procedural-grid/
и смещаешь нужные точки.
Аноним 10/03/18 Суб 12:26:33 115283560
Анон, такой вопрос.
Вот в играх есть состояние. Например: игровое меню, настройки, игровой процесс, экран проигрыша и тд.
Понятно что писать портянки switch-case не дело и тут дело вступает наследование.
При каких-то условиях мы можем перейти из одного состояние в другое.
Есть базовый класс GameState, от него наследуются другие состояния. По идее они о друг друге ничего знать не должны, но как сделать переход из одного в другое?
Аноним 10/03/18 Суб 13:33:58 115285961
>>1152835
На чем пишешь? Потому что этот процесс при использовании либ/фреймворков или движков слишком разный.
Аноним 10/03/18 Суб 13:38:28 115286362
Аноним 10/03/18 Суб 13:57:52 115287363
>>1152863
Лучше конечно посмотри доки твоей либы, может там уже есть что то готовое.
Если я тебя вообще правильно понял, то допустим есть какой нибудь менеджер стейтов, который имеет активный стейт и вызывает его в геймлупе. Еще менеджер имеет инициализированные поля всех возможных стейтов (логика, настройки, меню и пр.). Стейт хранит ссылку на менеджер. Тогда например в меню по нажатию кнопки старт можно сменить стейт через manager.setState(manager.game). Никаких свичей и ифов.
Аноним 10/03/18 Суб 14:08:24 115288264
>>1152873
В либе SFML нет ничего подобного.
Буду думать, короче.
> Тогда например в меню по нажатию кнопки старт можно сменить стейт через manager.setState(manager.game)
Может быть так, за исключением того что у стейтов будет имя строкой.
И переход будет такой: managerState.SwitchTo( "gameplay" );
Ну или как-то так.
Аноним 10/03/18 Суб 14:41:27 115289565
Game Preview St[...].webm (1780Кб, 1280x720, 00:00:16)
1280x720
>>1152835
>При каких-то условиях
>игровое меню
onStart

>настройки
ESC_keypressed

>игровой процесс, экран проигрыша
health<0

блять вот элементарно все, но ТЫЖ ПРОГРАММИСТ, тебе надо подрочить сука, аж тресет блять, всем похуй на твои задачки, они делаются за 5 минут в лапше, в игре не это главное

Аноним 10/03/18 Суб 16:43:02 115299366
>>1152835
>Понятно что писать портянки switch-case не дело и тут дело вступает наследование.
Проиграл. ООПервокур не палится. Гугли про ECS, анон. Предпочитай композицию наследованию. А лучше вообще забудь, что оно у тебя есть. Это прописные истины, анон.

А по твоему вопросу - внезапно, посмотри на любой фреймворк для клиент-сайда в браузере, или даже на любую standalone-либу для клиент-сайд роутинга. В интернетах эта тема разжевана для нубов тыщу раз, а тебе как раз нужно сделать то же самое.
Аноним 10/03/18 Суб 17:30:34 115302267
Поясните есть ли книги с современными алгоритмами и подходами в cloth simulation, fluid dynamics,ffur/hair simulations чтоб это все было для риалтайма?
Аноним 10/03/18 Суб 18:09:55 115305468
Аноним 10/03/18 Суб 23:24:18 115320869
>>1153054
Спасибо, как раз на компе валялась, планировал почитать ее очень нескоро.
Там в разных номерах разные алгоритмы? У меня gpu pro 7(нашел там в конце про флюиды), есть ли смысл заиметь остальные номера или это типа как старые издания?
Аноним 12/03/18 Пнд 20:32:22 115469970
>>1153208
Есть. В каждом номере свой набор бест практисов. Помни, что часто алгоритмы придумываются задолго до того, как их начинают активно использовать. С графикой это вдвойне верно, в рилтайм постепенно переезжает всякое добро из fx.
Аноним 14/03/18 Срд 21:44:37 115583171
>>1144556
Таж хуйня, столько идей, столько мыслей, до какого нибудь скрипта(
Аноним 15/03/18 Чтв 16:23:11 115609472
>>1151227
Пиздец! Это же ад какой-то! Реально это кому то нравится? Не проще скриптом делать или такое не предусмотрено?
Аноним 15/03/18 Чтв 19:20:33 115622473
>>1156094
скоро завезут питон, а пока да, нужно напрячь извилины и узнать что такое локальные переменные макросы и функции
Аноним 16/03/18 Птн 00:11:52 115643574
>>1156224
Не понимаю, зачем всё это делают, зачем понижать планку для вкатывальщиков? Если дегенерат не в состоянии освоить основы С++ для скриптинга, то с вероятностью 99% он в любом случае не сможет высрать ничего дельного, дай ему хоть самые продвинутые визуальные инструменты и упрощенные языки. А тот, кто способен сделать что-то годное, его и скриптинг на С++ остановит, хватит усидчивости разобраться, для этого не нужно углубляться в язык слишком далеко и изучать все 1.5к страниц Страуструпа.
Аноним 17/03/18 Суб 15:49:14 115733475
>>1144536 (OP)
Как лучше всего сохранять энтити-компоненты в скуль-базу? Каждый компонент целиком в жсон-поле запихивать?
Аноним 19/03/18 Пнд 08:44:41 115872576
>>1144536 (OP)
Как бы правильней реализовать систему items в игре? Планируется много неизменяемых и часть динамически генерируемых.
Я думаю что-то из этого:
- для всего отдельный класс, ножи, камни, пистолеты, применять наследование и интерфейсы...
- декораторы?
- вместо отдельных классов создать конфиг файл, в котором будут описаны все предметы.
Аноним 19/03/18 Пнд 15:40:33 115893177
>>1158725
>класс
>наследование
Из Индии капчуешь? ECS гугли.
Аноним 21/03/18 Срд 21:30:24 116030278
>>1158725
Хуйня, потом заебешься править. Коммон практис - сначала определять свойства объектов, а затем контейнером собирать в один объект. Если свойства динамические, то определяй интерфейсы поведения. Хочешь потом легко расширять - скрипты в помощь.
Аноним 26/03/18 Пнд 16:14:11 116299279
Не тонем.
Аноним 06/04/18 Птн 18:52:41 116923480
Нужен легковесный, но гибкий GUI для одной хитровыебанной десктопной проги. Спрашиваю здесь потому, что слышал про какой-то Scaleform, который уже вроде как не поддерживается Autodesk-ом, но его до сих пор используют в некоторых игровых движках и в нулевых использовали в десятках, если не сотнях приличных игорей. Тяжело ли его встраивать? Возможно ли это сейчас вообще?
Аноним 06/04/18 Птн 19:03:23 116924081
15106927954080.png (121Кб, 736x736)
736x736
>>1169234
>Нужен легковесный, но гибкий GUI
Electron?
Аноним 06/04/18 Птн 19:05:20 116924182
14204910220560.jpg (81Кб, 811x561)
811x561
Аноним 06/04/18 Птн 19:24:15 116924683
>>1169240
В том-то и дело, что хочу избежать такой участи.
06/04/18 Птн 20:17:12 116926784
>>1169246
Честно говоря, вообще непонятно, чего ты хочешь и при чем тут та флешовая поделка, которую ты упомянул. У тебя есть конкретные ограничения по памяти? Ты не можешь кутэ (efl? javafx?) использовать?
Аноним 06/04/18 Птн 20:47:23 116927485
>>1169267
Qt - нет тех фич, что мне нужны. Код на крестах, или причудливом декларативном недоjs.
JavaFx - я ебал такое на джаве делать, пользовать xml-говноразметку и вообще что-то связанное с jvm пользовать.
EJL - это вообще для встроенного миниатюрного говна, а не пеки.

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

Scaleform интересен тем, что поддерживает swf, значит можно пилить что-то на спижженом Flash/Animate, или их бесплатным аналогам. Единственная (наверное) альтернатива - Adobe Air, который уступает ему по производительности.
06/04/18 Птн 21:19:41 116929486
>>1169274
Смузи отхлебнул уже?
Аноним 06/04/18 Птн 21:26:12 116929687
>>1169294
Если эта хуйня не взлетит и больше ничего не найду, то придется взять електрон и таки отхлебнуть.
Аноним 06/04/18 Птн 21:46:19 116930488
>>1169296
Да нет, я имел в виду Ъ-значение этого слова, в смысле разработчика, который руководствуется категориями типа "нравится - не нравится", "хочется - не хочется" при выборе инструментов, а не рациональными критериями. Просто со стороны это выглядит как "фуу джава)) фуу кресты)) фу для говна)) фуу css))", причем требования так и не были озвучены: в одном посте легковесный тулкит нужен, в другом уже "это вообще для встроенного миниатюрного говна, а не пеки". Завязываться на флеш в 2018 выглядит не очень разумным решением. Эир вообще нужен для кроссплатформы в мобильники, при чем он тут? Короче, получается "посовейтуйте то, не знаю что, и вообще я уже определился, так что идите нахуй". Ээ... ну... ок?
Аноним 06/04/18 Птн 22:06:04 116931889
>>1169304
А кто просил советовать что-то для UI? Я только объяснил для чего оно мне (для десктопа, а не игоря, это важно, очевидно) и спросил, пойдет ли вот эта конкретная хуйня с учетом того, что её Autodesk больше не поддерживает.
И да, в сравнении с недохромиумом, это легковесный тулкит для UI.
>руководствуется категориями типа "нравится - не нравится", "хочется - не хочется" при выборе инструментов, а не рациональными критериями
Это и есть рациональные критерии. Почему я должен ебать себе мозг отвратительнейшей джавой, или вообще плюсами, когда я хочу всего лишь запилить красивую морду? Я не хочу. И пытаюсь найти альтернативу получше. Что тут нерационального?
>Завязываться на флеш в 2018 выглядит не очень разумным решением.
Если будет смысл поддерживать поделку, то UI всегда можно перепилить, если вдруг это зачем-то понадобится, потому что он гвоздями как раз не прибит.

Я знаю, что сделал хуйню спросив такое на борде, ведь с этим имели дело разве что только разработчики некоторых движков и относительно старых игрушек. И хуй теперь их найдешь, особенно здесь.
Аноним 06/04/18 Птн 22:49:37 116934590
>>1169318
>спросил, пойдет ли вот эта конкретная хуйня
В сотый раз повторяю, что ты никаких требований так и не озвучил, чем тебе не подходят альтернативы не объяснил, так что со стороны это "посовейтуйте то, не знаю что, и вообще я уже определился, так что идите нахуй".

>И да, в сравнении с недохромиумом, это легковесный тулкит для UI.
>флеш поверх юнити\уеча
>легковесный тулкит для UI.
))

>отвратительнейшей джавой
>вообще плюсами
>рациональные критерии
)))

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

>И хуй теперь их найдешь, особенно здесь.
Кажется он начал что-то подозревать, угу.
Аноним 07/04/18 Суб 00:25:37 116941691
>>1169345
Вопросов о требованиях и выборе среди других тулкитов не было, пока ты не начал отвечать. Вопрос был такой
>Тяжело ли его встраивать? Возможно ли это сейчас вообще?
Также я уточнил, что это не игра и встраиваться оно будет как раз не в игровой движок (там в юнитях и анрилах уже давно всё встроили за меня).
По поводу целесообразности пользования крестов и бляцкой джавы для быстрого создания интерфейса со свистелками, анимациями, векторными графенами и прочей хуйней… я просто промолчу.
Только что спиздил их SDK. Посмотрим что из этого получится.
Аноним 30/04/18 Пнд 15:08:19 118204992
Бамп нахуй блять
Аноним 14/05/18 Пнд 14:59:39 118967393
изображение.png (3Кб, 376x202)
376x202
Помогите с алгоритмом придумайте за меня
Есть два двухмерных массива, заполненные цифрами. Задача - из второго массива перенести в первый данные, которые попали в красную область. Размеры красной области равны размеру первого массива. Красная область может иметь произвольное расположение во втором массиве, но всегда как минимум пересекает одну ячейку. Делаю камеру.
Аноним 14/05/18 Пнд 15:02:52 118967794
>>1189673
Нулевые координаты камеры в каком угле?
Аноним 14/05/18 Пнд 15:35:25 118969295
>>1189673
Гугли либы на твоём языке по работе с массивами, а именно stacking. Например в питоне это делается с помощью numpy
np.vstack((a,b)) к массиву a снизу добавляет строку или несколько b
np.hstack((a,b)) к массиву a сбоку добавляет столбик или несколько b
Ну и отрезать там тоже просто.
Аноним 14/05/18 Пнд 16:28:58 118970796
>>1189673
А в чем проблема-то? Из каждой строчки берешь подмассив, копируешь, все.
Аноним 14/05/18 Пнд 17:09:16 118973097
Аноним 14/05/18 Пнд 17:11:24 118973198
2018-05-14-1510[...].png (8Кб, 566x405)
566x405
Аноним 06/06/18 Срд 02:43:44 120373299
15193307243800.jpg (31Кб, 450x302)
450x302
Распидорахены из /gd настолько жалкие, что ходят пиздить оп-пики в божественный /pr: https://2ch.hk/gd/res/503094.html

Ссы на школьников из /gd, анон, насмехайся над ними. Байтоеб хуже пидораса, а /gd-распидорахен хуже байтоеба. /gd - раздел чмырей и унтерменшей, /pr - раздел здорового белого человека. DEVS VULT
06/06/18 Срд 16:28:33 1204001100
Аноним 10/06/18 Вск 14:29:30 1207045101
>>1206847
Потому что важны не фичи движка, а игры.
Аноним 11/06/18 Пнд 15:56:08 1207725102
Сап, девелоперы. Вопрос по canvas, нихуя не всекаю, как при количестве фреймов близких к 10 сделать годную анимацию при 60 фпс? Ну то есть 60/10 = 6, 6 раз отображать одну и ту же картинку подряд ебанутая хуйня, но например в Дибале 2 очень плавно все. Ну тут даже похуй на канву, просто сам принцип не понятен.
Аноним 11/06/18 Пнд 15:58:43 1207727103
>>1144556
Ты это я. Пилю потихоньку в свободное время для души, но времени всегда не хватает.
Аноним 11/06/18 Пнд 19:09:17 1207876104
>>1207725
Ну отображай не шесть, а пять раз подряд. Или четыре, например. Или три.
Аноним 12/06/18 Втр 11:40:54 1208230105
>>1158725
1. Таблица со всеми предметами, включая дефолтные свойства
2. Все те места, где эти предметы лежат, должны иметь какой-то контейнер, тот же джейсон или хмл. Тоже с параметрами.
3. По данным из (2) создаешь экземпляры классов в рантайме. Структуру классов продумывай сам, очевидное наследование и абстрактные классы.

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

Прогрузка уровня будет выглядеть так:
Лезешь в сохраненку, дергаешь оттуда все контейнеры на уровне, ищешь их экземпляры в "сцене", кладешь в них предметы.
Сам уровень (предметы на полу) и инвентарь гг можно просто представить как отдельные контейнеры.
Если сохраненки нету, то лезешь в "дефотную" сохраненку.

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

Аноним 12/06/18 Втр 11:57:01 1208237106
>>1145058
Тэгай пульки при выпускании, тем же тэгом что висит на трансформе, к которому привязан твой Shooter.
При попадании по игроку, деактивируй все пульки с тэгом игрока.
При попадании по врагу не делай ничего.
Аноним 12/06/18 Втр 12:38:26 1208272107
>>1156435
Сейчас вайтишников пугает сама надпись "С++". Им всякие жсы и питоны подавай.
А визуальное программирование вообще непонятно для чего существует. Вот реально не пойму, для чего.
Ну боишься ты управления памятью, возьми джаву или додиез, хотя на уровне вкатывания особой разницы нету, как по мне.
Могу ошибаться, потому что 1,5к страниц Страуструпа не читал
Аноним 12/06/18 Втр 14:16:19 1208317108
>>1208272
> Сейчас вайтишников пугает сама надпись "С++". Им всякие жсы и питоны подавай.
Почему так?
Аноним 12/06/18 Втр 14:52:51 1208336109
Как убедить себя что Юнити/ Уныл Энжин это хорошо и перестать говнокодить свои йоба движки для 2д игр?
Аноним 12/06/18 Втр 15:44:07 1208387110
>>1208336
Попробуй сделать аналог какой-нибудь игры самому и на готовом движке.
Сравни скорость и простоту разработки.
Тот же кокос2д, корона и тд под 2д хорошо заходят
Аноним 12/06/18 Втр 16:55:35 1208435111
>>1208317
Потому что это говноязык.
Аноним 12/06/18 Втр 19:08:57 1208536112
>>1208387
>кокос2д
еще жив?
t. не писал на нем уже 4 года
Аноним 12/06/18 Втр 20:37:17 1208587113
>>1208317
Потому что язык для синьоров.
Аноним 14/06/18 Чтв 10:40:54 1209597114
>>1208336
Почитать про NIH-синдром.
Аноним 14/06/18 Чтв 17:20:07 1209871115
>>1208387
Только стандартные игры. Например, у меня обычно программная генерация графики, на это не расчитан ни один движок. Получается удобнее на голом ГЛ делать в конечном счете, чем бороться с архитектурой движка.
Аноним 14/06/18 Чтв 18:46:46 1209910116
1494549330145.jpg (14Кб, 319x331)
319x331
А эмуляторы соснолек к геймдеву относятся?
Аноним 15/06/18 Птн 17:14:54 1210497117
>>1209910
Что пишешь? Меня вот интересует тема разработки игр для старых nintendo и sega, но я всего лишь веб девелопер.
Аноним 15/06/18 Птн 18:40:13 1210556118
>>1209910
Пишешь на си или си++? Где учился этому?
Что за хуйня на пике?
Аноним 15/06/18 Птн 19:01:45 1210566119
Хотел в перезвони-треде спросить, но он уплыл, поэтому спрошу тут.

Сколько зарабатывает в среднем джун разраб на юнити в ДС? Сам я веб-разработчик, но всякие ноды.жс и реакты-хуякты уже в печёнках сидят. Хочу пилить игры, но вакансий в веб-геймдеве на всяких кокосах2д-жс с гулькин нос, поэтому обратил внимание на юнити. Вакансий джунов на юнити без опыта - куча. Но есть проблема - недавно переехал в Москву, изначальный бюджет достаточно большой, но деньги постепенно проедаются, а значит денежный вопрос стоит на первом месте, хотелось бы не только юнити-джуном стать, но и ещё с голоду не помереть.
Аноним 17/06/18 Вск 01:44:34 1211509120
image.png (213Кб, 1424x771)
1424x771
image.png (219Кб, 1537x921)
1537x921
image.png (66Кб, 574x1015)
574x1015
свободное общение говорили они, нуну ебать

ладно придется писать в треде с нерелевантным оппиком сука лучи поноса гадкой моче


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

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



(Автор этого поста был забанен. Помянем.)
Аноним 17/06/18 Вск 01:58:03 1211519121
>>1211509
калькулюс
линейная алгебра
mathematics for 3d game programming and computer graphics (lengyel)
opengl red book
Аноним 17/06/18 Вск 02:15:16 1211527122
>>1211519
>калькулюс
>calculi ≈ камни в мочевом пузыре
попроще братух, мне тройки по всем предметам рисовали

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

17/06/18 Вск 16:08:25 1211779123
Аноним 17/06/18 Вск 19:18:31 1211935124
17/06/18 Вск 19:22:00 1211939125
>>1211935
Это не матан как таковой во всей его необъятности, а "основы матанализа и интегрального исчисления", по-русски как-то так будет. "Калькулюс" короче и проще.
Аноним 22/06/18 Птн 00:27:13 1214923126
>>1210497

Я не пишу игры. Хотя в планах попробовать сделать игру для денди и ром на C с помощью компилятора cc65.
Аноним 23/06/18 Суб 02:28:03 1215571127
Пилю свой движок на OpenGL и GLut который рисует текстурированные квадраты на экране. Собственно вопрос про загрузку и освобождение текстур: как всё это лучше организовать? Выгружать ли при смены сцены полностью, выгружать ли динамически в зависимости от времени последнего обращения, использовать ли счётчик ссылок и удалать сразу при обнулении? А может удалять лишь из видеопамяти, кэшируя при этом сами данные из файла для минимизации обращений к диску? Как во всяких взрослых двигателях поступают?
Аноним 23/06/18 Суб 02:49:51 1215574128
Аноним 23/06/18 Суб 15:41:57 1215803129
>>1144556
как только примешься за работу поймешь что все твои идеи уровня грабежа корованов и реализации не подлежат
Аноним 23/06/18 Суб 15:52:13 1215816130
Предложите свои варианты самых ебанутых и хардкорных движков для визуальных новелл. Какие есть варианты кроме 1c и excel?
Аноним 23/06/18 Суб 16:16:56 1215838131
Может ассемблер?
Аноним 23/06/18 Суб 17:27:00 1215874132
>>1215571
Тебе желательно иметь два режима: динамическая подгрузка и статическая. При втором режиме клиентский код должен иметь полный контроль над подгрузкой ресурсов. Ну то есть у тебя будет РесорусМенеджер и два подкласса, если ты ООП.

>>1215816
>визуальные новеллы
>gamedev
Аноним 23/06/18 Суб 18:10:31 1215896133
Аноним 23/06/18 Суб 18:26:25 1215907134
Как писать игры для демосцены?
Аноним 23/06/18 Суб 21:38:54 1215984135
>>1215907
Пальцами по клавиатуре долбить.
Аноним 24/06/18 Вск 08:09:01 1216172136
>>1215574
Спасибо. А достаточно вежливо будет с моей стороны попросить указать конкретные места? Я просто нуфак совсем в этом деле, а там тонны чужого байтокода.

>>1215874
>Тебе желательно иметь два режима: динамическая подгрузка и статическая.
Я про само нутро больше интересовался. Снаружи-то у меня попроще, всего три функции: загрузить, попользовать, освободить. Сейчас там совсем наивно реализованно, через счетчик использования при обнулении которого текстура полностью финализируется.
Аноним 26/06/18 Втр 01:35:52 1217518137
>>1208317
Потому что за десятки лет навертели стандарт на стандарт так что некоторые стандарты уже как отдельные языки. Но тебе нужно знать все особенности, даже самого древнего как говно мамонта стандарта, потому что именно на этом тебя подловят, и именно с этим ты скорее всего будешь работать.
Аноним 26/06/18 Втр 01:40:19 1217521138
>>1210556
>Что за хуйня на пике?
я думаю снусмумрик
Аноним 26/06/18 Втр 10:09:58 1217570139
image.png (179Кб, 1278x712)
1278x712
>>1208272
>Ну боишься ты управления памятью, возьми джаву
нахуй ты такая ограниченная пидорашка?

люди делают для других что бы те ПОЛЬЗОВАЛИСЬ, как нибудь бы пользовались, а не убегали с воплями - ебал вас в рот, я не кодер

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

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

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

Аноним 26/06/18 Втр 12:27:54 1217611140
>>1217570
Спешите видеть: сиришотка-макака порвалась.
Аноним 26/06/18 Втр 14:08:25 1217654141
image.png (39Кб, 150x150)
150x150
>>1217611
>пик с лапшой
>сиришотка-макака порвалась
Аноним 26/06/18 Втр 15:20:56 1217681142
>>1217570

Вот это полыхание неосилятора
Аноним 26/06/18 Втр 16:15:06 1217697143
>>1208272
>Ну боишься ты управления памятью, возьми джаву или додиез, хотя на уровне вкатывания особой разницы нету, как по мне.

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

https://wiki.unrealengine.com/Garbage_Collection_Overview
Аноним 26/06/18 Втр 17:50:09 1217725144
image.png (100Кб, 1060x415)
1060x415
>>1217697
дело не в ГК, все(кроме упити шкальников) видели парагончик и фортнайт на йосе, фремрейт и графон заибись когда руки не из сраки

просто на злоебучих крестах невозможно быстрое и кайфовое прототипирование
Аноним 26/06/18 Втр 22:49:18 1217953145
>>1208587
Но пишут на нем одни студенты
Аноним 26/06/18 Втр 22:51:09 1217958146
>>1217725
>фортнайт
взял ты такой на собственном движке, который знаешь до дыр, сделал мультяшную игру - и вдруг фпс в небеса! кто бы мог подумать?!
Аноним 01/07/18 Вск 23:24:40 1221037147
5
Аноним 02/07/18 Пнд 15:56:35 1221281148
>>1217570
Лол, я как бы юнити-макака сам. И прекрасно понимаю за что платят прокаченным юнити-султанам.
Но это не мешает мне понимать, зачем нужны кресты и почему крестоносцам платят их бабос.
Речь в посте была не о том, что джава лучше чем кресты или додиез.
Я писал о том, что вкатывальщики вообще боятся чего бы то ни было сложнее лего.
мимо >>1208272
Аноним 02/07/18 Пнд 16:02:42 1221283149
>>1217570
А, ну и да, если бы ты работал в качестве программиста на проекте чуть более сложно и большом, чем собственная инди-хуйня, то для тебя не было бы секретом, что программирование оно и в геймдеве программирование. Творчество тут представлено исключительно в том виде, как его понимают бородачи в свитерах.
Аноним 03/07/18 Втр 23:33:56 1222179150
изображение.png (726Кб, 800x450)
800x450
Хочу сделать процедурно генерируемый мир с маленькими элементами как в Lego Worlds.
Интересует как в этой игре сделана отрисовка блоков. Готовые 3D-модели? Рисуются ли они полностью или невидимые полигоны отсекаются?
Как хранится информация?
Аноним 04/07/18 Срд 02:04:55 1222214151
>>1222179
Короче, ты хочешь свой майнкрафт.
Копай в эту сторону.
Аноним 04/07/18 Срд 03:47:07 1222225152
>>1222214
С Майнкрафтом все понятно, алгоритмы уже нагуглил и понял. Там все просто. Тут же сложнее - и детализация намного выше и блоки разнообразнее, и оптимизация хорошая.

Аноним 04/07/18 Срд 13:27:20 1222378153
zmika - Copy2.jpg (481Кб, 1200x675)
1200x675
>>1222225
>и оптимизация хорошая
так может руками сделано потому что ?
Аноним 04/07/18 Срд 13:59:17 1222390154
Аноним 06/07/18 Птн 20:43:12 1223791155
Правда ли, что предпочитаемый version control в крупных конторах - это Perforce? И как вообще белые люди организуют разработку игр - для ассетов отдельные репы или же все вместе?
Аноним 07/07/18 Суб 16:57:23 1224131156
>>1223791
Тебе зачем это?

Если сядешь конторе на шею тебя проведут, пояснят за положняк в хате

а если ты дома в носок дрочешь, то и не похуй ли как?
Майнкрафт это класека Аноним 08/07/18 Вск 07:43:04 1224361157
Спиногрыз давно просит сделать ему мод, собрать сборку и т.д. и т.п. Чужие сборки этот спиноз не признает, надо блядь чтоб все как родное. Не ебу зачем ему это, просто хочу чтоб отстал. Поясните, на каком языке написана эта хуета, что да как пишется, какие подводные при компилировании сборок и т.д. Чтоб я хоть знал с чего начинать
Аноним 08/07/18 Вск 08:58:44 1224363158
Аноним 09/07/18 Пнд 00:18:39 1224798159
.jpg (92Кб, 372x586)
372x586
>>1224361
Совсем не палишься.
Аноним 09/07/18 Пнд 02:49:59 1224864160
>>1224361
Очевидный С++, еблуша. Открой гит майнкрафта и посмотри.
Аноним 13/07/18 Птн 13:37:15 1227168161
>>1146869
Я не понимаю, зачем насиловать мозги, если можно просто прикрутить фейковую хексакарту, которая на самом деле использует X/Y со смещением по центрам хексагонов фиксированным? Сильно хочется смаковать гемморой?
Аноним 13/07/18 Птн 14:06:54 1227196162
>>1224361
Java, для моддинга юзай API Minecraft Forge.
Документация на офф. сайте и на ютубе, гайды по установке там же , как и гайды по декомпиляции мойныча.

Если не умеешь кодить вообще - не лезь. Если нервов мало - тоже не лезь, потому что Фордж делали дауны.

Для знающих: Как можно было не сделать проверку НБТ тегов в хэндлере рецептов? Как можно было не сделать дефолтные контейнеры с проверкой мета предмета? Почему я сам должен это писать? Фордж точно делали дауны.
Аноним 26/07/18 Чтв 15:46:18 1235453163
>>1144734
Мертвопостинг инкаминг
>То же своего рода p2p, так как сам агрегатор, издатель игры, сервера не держит.
Но держит агрегатор. Развал агрегатора = развал всей системы. Подобное было при закрытии GameSpy, например (когда разрабам пришлось в срочном порядке перепиливать игры, но т.к. многие из игр были старыми, до них ни у кого руки и не дошли, хотя понятно, что у старых игр на ентом гейспае было полтора сервера в списке)
Я же так понимаю, вопрошающего надёжность интересовала. Можно оставить клиент-сервер в самой игре, а агрегатор выпилить и заменить на DHT, но это теория конечно
Аноним 26/07/18 Чтв 16:40:45 1235490164
>>1144799
>Агрегатор это что? Как работает? Не нахожу в поисковиках(ru и en) такого термина.
master server

>>1235453
достаточно брать адрес мастер-сервера из конфига
Аноним 26/07/18 Чтв 18:55:21 1235599165
>>1235490
>достаточно брать адрес мастер-сервера из конфига
Как вариант.

Но я ж типичный погромизд, которому важно не "чтобы выполняло задачи", а чтобы было похитровыебаннее.
Аноним 05/08/18 Вск 16:24:52 1241333166
Какие есть годные книги по компьютерной графике?
Аноним 05/08/18 Вск 17:55:53 1241394167
Аноним 05/08/18 Вск 18:21:32 1241424168
>>1241394
Ты имеешь ввиду OpenGL Programming Guide?
Аноним 05/08/18 Вск 18:29:14 1241433169
>>1241333
Real time rendering
Physically based rendering
Аноним 05/08/18 Вск 22:55:53 1241661170
.png (670Кб, 543x835)
543x835
.png (1212Кб, 698x901)
698x901
.png (869Кб, 667x820)
667x820
Аноним 06/08/18 Пнд 09:16:42 1241795171
Аноним 06/08/18 Пнд 21:55:24 1242260172
Посоветуйте инфы про поиск в пространстве. Про пространственные хеши, деревья и вот это всё. Желательно с бенчмарками, которыми мне лень самому обмазываться. Быстрый гуглинг говорит что-то неочевидное.

Моя задача состоит в оптимизации сетевой части. Надо собрать игроку данные о его ближайших соседях в заданной области. Перебирать всё - сложность очевидно квадратичная. Есть всякие древа со звёздочками и без звёздочек, есть пространственные хеши, есть кокието кривые. Некоторые из них хорошо работают для редко меняющихся данных. Всякие геохеши и подобное. Они вроде как не особо подходят же.
Аноним 06/08/18 Пнд 22:45:51 1242286173
Аноним 06/08/18 Пнд 23:33:33 1242318174
>>1242286
Why? Какая сложность вставки/удоления/поиска? Как с эффективностью по памяти/кешу? Оно вообще норм в 2D?
Аноним 07/08/18 Втр 19:00:53 1242598175
>>1242260
Внезапно, у тяна (rimworld который) есть туториал на тему того, как он пилил то самое, что ты спрашиваешь, как раз в 2д, можешь глянуть.
Аноним 07/08/18 Втр 22:10:00 1242720176
>>1242598А можно ссылочку?

На самом деле я уже начал сам изучать. Запилил пока наивный Spatial Hash Map. 1к поисков из 100к по 500 штук примерно 30 лямов нанопопугаев (с учётом полного пересоздания индекса), но это не точно. Без сравнения с чем либо бенчмарк бесполезен.

Ещё увидел реализацию чего-то похожего на k-d древо и попробую с этим сравнить.
Аноним 08/08/18 Срд 04:47:43 1242804177
>>1242720
Наивное хеширование против k-d древа. Побеждает k-d древо.
Аноним 08/08/18 Срд 21:59:52 1243251178
>>1242598
Не нашел ссылку. Там есть что-то стоящее?

>>1242260
Таки сам погуглил и уточню. Что лучше?
- Hierarchical Spatial Hash Grid
- Linear/Implicit k-d Tree
- Linear/Implicit Quadtree

Судя по всему HSHG будет эффективнее в мутабельной версии, а джва остальных будет норм пересоздавать каждый фрейм. По идее quadtree быстрее, чем k-d tree и у обоих расход памяти O(n).

У меня уже есть реализация k-d tree и она вроде норм. Строится каждый фрейм в 1.5 раза медленнее, чем наивный Spatial Hash, однако поиск происходит за наносекунды (плюс-минус O(log(n)) же) и совсем не ест память. Там от 12, 16 или 24 байт на элемент (от 2x float + uint32 до 2x double + uint64). Правда я проверяю всё это на рандомных точках и запросах.

Я пока не знаю, есть ли что-то профитное у HSHG. А ещё я видел упоминание Z-order curve в контексте quadtree (по крайней мере об этом есть упоминание в педевикии). Это тоже требует изучения.

Некоторое нагугленное:
https://www.gamedev.net/forums/topic/661021-quad-trees-vs-r-trees-vs-spacial-hashmaps/
https://en.wikipedia.org/wiki/Quadtree
https://medium.com/@agafonkin/a-dive-into-spatial-search-algorithms-ebd0c5e39d2a (я оттуда портанул k-d древо)
https://en.wikipedia.org/wiki/Z-order_curve
https://gist.github.com/kirbysayshi/1760774

Ещё гуглятся всякие исследования™, но я не силён в чтении этого дерьма.
Аноним 24/08/18 Птн 18:43:11 1251918179
>>1144556
> ...но волею судеб приходится заниматься базами данных.
Ключевой момент - "судеб".
Лан бы що судьбы, то хер с ним
Аноним 24/09/18 Пнд 18:48:50 1269645180
Не тонем, смываем залетное говно с нулевой.
Аноним 25/09/18 Втр 11:04:13 1269874181
>>1242318

Если для отсечения графики - то в 21 веке не очень, если для абстрактных сущностей как у тебя - то не подойдёт совсем, нужны полигоны, по которым пространство будет рассекаться, а у тебя там абстрактные 2д-сущности.

Quadtree тебе будет в самый раз.
Аноним 10/10/18 Срд 02:41:18 1277126182
Я хочу научиться писать Читы для игр но не могу наити мануалы .Если конкретно то есть одна игра.Нужно сделать так чтобы при запуске она показывала изображение какое Я захочу.Как мне это сделать?Я так понял что надо писать dll и инжектировать ее в процесс.Реквестирую детальное объяснение или работающи пример
Аноним 10/10/18 Срд 03:29:51 1277129183
>>1243251
Так ты гугли на геймдевелоперских форумах.
https://gamedev.stackexchange.com/questions/87138/fully-dynamic-kd-tree-vs-quadtree
Вот чел написал что я хотел написать (про хэши я не знал, но не стал бы их советовать все равно).
1. Kd-дерево хорошо для статических целей, для динамических лучше quad-дерево с минимальным порогом.
2. Вообще kd-деревья хороши для сильно многомерных пространств, для 2 и 3 quad и octo деревья симпатичнее, хотя не всегда эффективнее
3. Но если у тебя задача найти не ближайших соседей, а есть ли соседи в радиусе R, то тебе вообще не деревья нужны, а грид из квадратов. При перемещении объекта он делает floor(obj.x/shirina_kvadrata), и записывает себя в соответствующую ячейку, удаля себя из той из которой он ушел. При поиске в радиусе r ты просто проходишь по всем ячейкам и получаешь список объектов.
4. Хэши эффективны только для приблизительных расчетов
Аноним 10/10/18 Срд 08:35:50 1277174184
>>1277126
Изображение в смысле лого? Заставку первичную.
Я хрен знаю. Код необходимо видеть, иначе наверное никак.
IDA pro попробуй дизассемблер.
Запусти через него свою игру, и наблюдай какие процессы работают в тот или иной момент игры.
Но результат там на сколько я знаю ты в ассемблерном коде получишь
Аноним 15/10/18 Пнд 08:33:27 1279233185
1539183325547-0.jpg (13Кб, 530x530)
530x530
Анон. Анон.
Такие дела.
Нужно написать игру. Клон Героев 3 на пхп.
Так вот.
Прошу тебя дать ссылки на статьи с алгоритмами написания, с планировкой написания различных частей и тд.
У меня опыта в написании никакого нет, даже самых простых программ.
Аноним 15/10/18 Пнд 09:00:12 1279241186
Аноним 15/10/18 Пнд 09:17:50 1279244187
haha ai blyat.webm (394Кб, 360x356, 00:00:03)
360x356
>>1279241
Охуенный подъеб, пиздец, нахуй иди.
Аноним 15/10/18 Пнд 15:53:47 1279505188
200.gif (203Кб, 341x200)
341x200
>>1279233
>Клон Героев 3 на пхп
Аноним 15/10/18 Пнд 16:13:50 1279519189
>>1215816
Берёшь, пишешь загрузчик для 8286. Переходишь в защищённый режим, настраиваешь все прерывания, пишешь драйверы для мыши и клавиатуры, графику пишешь прямо в VGA. И чтобы на дискете помещалось.
Аноним 15/10/18 Пнд 16:59:55 1279538190
>>1279519
кстати это не так сложно как кажется. мимоолдфаг.
Аноним 15/10/18 Пнд 17:21:38 1279544191
>>1279505
Да я сам кекнул с запросов препода, но деваться некуда.
Аноним 15/10/18 Пнд 18:11:50 1279557192
А правда, что в геймдеве все очень плохо с современными методологиями разработки?
Что системы контроля версий прижились только пару лет назад, что код - все еще каша гениальных мыслей какого-нибудь местного аутиста с файлами по 2000 строк кода?
Что про паттерны и солидопарашу можно даже не заикаться, год обжекты и суперклассы во все поля?
Аноним 15/10/18 Пнд 18:30:39 1279573193
>>1156224
Лучше бы дотнет официально завезли, сразу же бы перекатился со сраного юнити на УЕ4.
Аноним 15/10/18 Пнд 18:39:01 1279578194
Аноним 15/10/18 Пнд 19:03:44 1279588195
>>1279557
Да, именно так все и есть. А еще они до сих пор считают своим долгом заново изобретать редактор и ide для каждого нового фреймворка.


Справедливости ради - те же системы контроля версий (читай гит) плохо для гд приспособлены, так как там обычно в куче и бинарники, и исходники, не очень удобно.
Аноним 15/10/18 Пнд 19:08:13 1279593196
15368655978450.png (643Кб, 737x815)
737x815
>>1279544
>Да я сам кекнул с запросов препода
Да и препод этот не твой, а одного твоего друга, да?
Аноним 15/10/18 Пнд 19:12:02 1279594197
Аноним 15/10/18 Пнд 19:24:20 1279599198
>>1279538
Согласен. Но ощутить, что значит бутстрапить самого себя (даже если это всего 100 строк простого ассемблера), должен каждый.
Аноним 25/10/18 Чтв 15:05:04 1284280199
>>1277129
Мне показалось проще использовать именно что статику. Т.е. я создаю каждый тик древо поиска целиком с нуля. По мимо этого мне надо хранить историю за прошлые полсекунды. Ибо это сервер, а не клиент. В 95% случаев мне нужно узнать, кто тут рядом с игроком стоит, чтоб лишнего не отправлять.
вкатывальщик 25/10/18 Чтв 23:13:20 1284569200
Для вката наметил тему для разбора. Эта тема - масштабирование пиксельной графики. Меня всегда бесили эти алгоритмы в играх, потому что куда ни глянь - там эта мазня. Берут текстуру и превращают всё в мерзкий градиент. Эти градиенты везде, где есть компьютерная графика. Ненавижу, блядь, градиенты!

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

// Из знакомых примеров знаю лишь то, как изображение проецировалось на экраны телевизоров. Телевизионная сетка значительно визуально улучшала качество изображения. Также, в мс-дос, когда делали видео, часть видосов была для экономии места перекодирована так, что были пропущены строки. И по какой-то причине это визуально воспринималось как более качественная картинка, чем если без этих строк. В старом divx-player был примитивный улучшайзер, он подмешивал случайный шум к картинке: точно также, картинка казалась более качественной, хотя это такое же шакальное изображение. Что у этих решений общего? При всей видимой статичности благодаря этим решениям визуализируют одну и ту же шакальную текстуру совсем иначе, превращая эту текстуру на выходе в, грубо говоря, несколько совсем разных текстур.
Аноним 26/10/18 Птн 01:19:22 1284620201
Аноним 27/10/18 Суб 23:59:53 1285677202
Посоветуйте литературу, по которой я смогу максимально эффективно разобраться, как работать с directx 11 или 12. То есть меня больше интересует не рендеринг графики, а тонкости работы с api. Знаю, что реквест странный.
Аноним 28/10/18 Вск 01:58:13 1285734203
Screenshot2018-[...].png (650Кб, 1017x949)
1017x949
Аноним 04/11/18 Вск 21:03:28 1289759204
C#
Пишу вот инвентарь на юньке и интересно как сделать инвентарь с ситемой ячеек.
К примеру в стиле 7.62 или Е5.
Если с простым инветарём всё понтно, то как сделать инвентарь где предметы могут занимать не один слот, а скажем 1х2 или 4х4
Аноним 04/11/18 Вск 21:30:29 1289768205
Хотел бы влиться в какую-то тиму, чтобы чему-то научиться. Может реальных тасков навалят, чего-то пояснят. Где искать такие тимы?
До этого занимался работой со звуком.
Аноним 05/11/18 Пнд 20:30:14 1290256206
Аноним 05/11/18 Пнд 22:42:34 1290305207
>>1290256
А как их в с# то обьявить.
И как найти скажем элемент по определённому номеру. Нигде не нашёл.
Аноним 06/11/18 Втр 03:50:38 1290479208
>>1289768
>влиться в какую-то тиму, чтобы чему-то научиться
обучение денег стоит
копи деньги (грузчиком, например, или жопой если ты симпатяга)
находи ментора
Аноним 21/11/18 Срд 00:01:16 1298523209
>>1284569
Копай себе в очко, сука. Можно более четко мысли выражать?
Rust #5 Аноним 22/11/18 Чтв 15:44:15 1299616210
rust-card-dark-[...].png (586Кб, 1500x2250)
1500x2250
1*gX8CmP0eETkwY[...].png (37Кб, 1207x826)
1207x826
7n0p07jc25c11.png (188Кб, 2040x632)
2040x632
friends-of-rust.png (531Кб, 1920x1234)
1920x1234
Rust — невероятно быстрый язык для системного программирования без segfault'ов и с гарантиями потокобезопасности.

ИТТ мы можем объяснить базовые и продвинутые концепции языка, и
программирования в целом, поможем вкатывающимся, подскажем что
выбрать для веба, игр или спасибо абу блокчейна.

https://www.rust-lang.org

> Пачиму helloworld весит как моя мамка?!1й
https://lifthrasiir.github.io/rustlog/why-is-a-rust-executable-large.html

Читать
Оф. книга, она же растбук
https://doc.rust-lang.org/book/
https://rustbyexample.com/
Очень хорошая книга, отлично зайдет после растбука:
http://shop.oreilly.com/product/0636920040385.do

Упражнения
https://exercism.io/tracks/rust
https://github.com/crazymykl/rust-koans

Писать
IDE
https://areweideyet.com/
Вебня
http://www.arewewebyet.org/
Игры
http://arewegameyet.com/
Etc
https://wiki.mozilla.org/Areweyet

Список интересных проектов
https://github.com/rust-unofficial/awesome-rust

Новости
Компиляция всего, что произошло за неделю
Иногда постят вакансии
https://this-week-in-rust.org/
Сколько вешать в лайках
https://github.com/trending/rust

Оп рекомендует:
https://www.amethyst.rs/
Аноним 22/11/18 Чтв 15:45:14 1299617211
>>1299616
Бля, сорян. Промахнулся.
Аноним 14/12/18 Птн 11:58:18 1310987212
screen73.png (989Кб, 1000x750)
1000x750
Кто-нибудь знает нормальный подход к реализации шаблонов стрельбы у врагов в шмапах?
Аноним 06/01/19 Вск 03:29:19 1321488213
Как мне настроить rad studio для работы с directx?Куда кидать ddraw.lib и другие библиотеки если их не видит ?
Аноним 14/01/19 Пнд 14:53:20 1326581214
>>1144536 (OP)
> #unity #godot #ue4 #unreal
> Вопросы по Unity и прочим движкам ... Буду репортить, ибо нехуй
Аноним 14/01/19 Пнд 15:03:04 1326584215
Допустим я хочу накинуть генетический алгоритм и для полного пердежа нейросети для ИИ в играх, который должен выполнять действия типо "принести\подать + рыть туннели + убегать от врагов + общаться с другими подобными и передавать им расположение объектов. Есть ли вообще смысл использовать эту ебалу, или это глупая идея и проще банально запрограммировать это все? И 2й вопрос, как в ДНК закодировать действия объектов, чтобы при смене единички\нуля они начинали немного по-другому действовать?
Аноним 15/01/19 Втр 12:53:27 1327079216
Делаю 2д игру под андроид. Из за моего говнокода и минимального опыта в гейдеве на звонилках фпс падает до 40, когда надо 60. Так вот, как нормальные люди вообще делают? Нужно ли делать расчеты физики и рендер в отдельных тредах, или мне нужно оптимизировать код, кешировать рендер и оставить все в одном треде?
Аноним 16/01/19 Срд 00:38:43 1327559217
>>1327079
Профилирующих, ищи утечки.
По поводу тредов - зачем рендер выносить в отдельный тред, если он завязан на игровой цикл?
Аноним 16/01/19 Срд 00:40:05 1327560218
>>1327079
У тебя сборщик мусора мусор не уходит собирать?
Аноним 16/01/19 Срд 06:55:27 1327623219
>>1327560
Дело в том что мусора то и нет, просто за итерацию производится куча вычислений.

>>1327559
>зачем рендер выносить в отдельный тред, если он завязан на игровой цикл
Логично.

В общем спасибо за помощь, теперь знаю в каком направлении думать.
sfml fullscreen Аноним 19/01/19 Суб 20:58:05 1330376220
Есть непонятность с SFML 2.5.1 в с++

Создаю окно:
sf::RenderWindow window(sf::VideoMode::getDesktopMode(), "", sf::Style::Fullscreen);

После чего рисую текст случайного цвета на экране.
Цвет меняется каждый раз перед вызовом window.display();

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

Вопрос: откуда эти задержки и почему их нет, когда окно создаётся в режиме sf::Style::Default ?
Аноним 19/01/19 Суб 21:54:14 1330424221
>>1144910
Некроответ. Покури catlikecoding, там роскошный туториал по гексагонам есть, поймет даже конченый дебил. Там от самого старта до генерации довольно круто выглядящих ландшафтов, в основе которых лежат гексагоны. Лучше ты точно нигде не найдешь.
Аноним 07/02/19 Чтв 22:58:49 1343683222
quat - Copy.JPG (53Кб, 813x242)
813x242
Я слегка в шоке. Чо, реально используют углы Эйлера? Есть же божественные кватернионы, что неужели так сложна?
Аноним 08/02/19 Птн 00:15:18 1343716223
>>1343683
Тебе же написали - художникам удобнее мыслить "таак, теперь накреним эту хуевину на 10 градусов", чем ебаться с кватернионами.
Аноним 08/02/19 Птн 01:02:36 1343735224
>>1343683
>Чо, реально используют углы Эйлера? Есть же божественные кватернионы
Ну так чтобы построить кватернион, тебе и надо будет или углы Эйлера использовать или ось+угол. В какой-нибудь юнити ты делаешь rotation = Quaternion.fromEuler( 10, 0, 0 ).
Аноним 08/02/19 Птн 03:35:19 1343755225
>>1343735
>надо будет или углы Эйлера использовать
Смысл весь теряется же. Схватишь gimbal lock какой-нибудь, в космическом симуляторе, например.
Аноним 09/02/19 Суб 11:10:10 1344406226
Untitled.png (6Кб, 575x370)
575x370
>>1144536 (OP)
Есть вопрос про сабпиксельную растеризацию типа msaa. Зачем нужна эта дискретность типа 4x, 8x? Нельзя ли прямо на месте интерполировать цвет отношением площадей пикселя (цвета который в буфере и цвета полигона)?
Аноним 10/02/19 Вск 18:04:59 1345214227
>>1344406
Считать отношение площадей не заебешься?
Аноним 11/02/19 Пнд 01:08:53 1345419228
>>1344406
>Нельзя ли прямо на месте интерполировать цвет отношением площадей пикселя (цвета который в буфере и цвета полигона)?
Можно, но тогда тебе придется все пиксели сортировать по глубине, потому что альфа-бленд не коммутативный.
Аноним 11/02/19 Пнд 01:12:53 1345421229
>>1343755
Я о том, что сразу кватернион ты из головы не напишешь как константу, он сложный для понимания. Тебе нужен какой-то человекопонимаемый формат (углы Эйлера, ось-угол, матрица ориентации), чтобы из него сконструировать кватернион, который ты потом будешь использовать.
Аноним 15/02/19 Птн 20:08:36 1348405230
Какие на джаве более лучшие библиотеки для рогулек на аски-графике? Достаточно только рендера. Погуглите за меня.
Аноним 15/02/19 Птн 21:36:03 1348475231
>>1345421
>сразу кватернион ты из головы не напишешь как константу
(sin(ф/2)u, cos(ф/2)) Почему нет?
Аноним 15/02/19 Птн 22:43:15 1348507232
Аноним 24/02/19 Вск 11:39:29 1353778233
Кто-нибудь в сурс энджине копался? Стоит лезть в эту помойку? Быстро глазами пробежался, вроде простой такой движок, но в некоторых местах пиздец все сыро и хуй пойми как сделано. Что думаете?
Аноним 24/02/19 Вск 11:55:10 1353793234
>>1353778
На нем же нихуя не делают вне Valve. Скорее всего инфы никакой нормальной не нароешь, если нет прямого выхода на разрабов. А сидеть и самому разбираться в движке который никому ненужен помоему не очень идея.
Аноним 24/02/19 Вск 13:14:41 1353838235
Аноним 25/02/19 Пнд 09:23:31 1354609236
Ананасы кто в теме.
Расскажите как делали делают пиратские сервера, в частности к вову. Да, в курсе что есть открытые проекты и всё такое.
Но меня интересует больше в общих чертах всё это.
Как узнавали что что игра передаёт в пакетах? Как такое реверсят? Плюс от версии к версии структура пакета может меняться. Например я слышал что, начиная с Катаклизма аддон такой к вову пакеты шифруются RSA в 4096 бит, но тем не менее есть себе сервера.
Как вообще придумывают проектируют такую сложную систему как сервер? С чего начинают кроме регистрации юзеров?
Аноним 25/02/19 Пнд 10:57:48 1354647237
>>1354609
>Как узнавали что что игра передаёт в пакетах? Как такое реверсят?
Есть софт чтобы перехватывать траффик. Реверсят посылая в клиент такие же пакеты и наблюдая, как он на них реагирует.

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

>Как вообще придумывают проектируют такую сложную систему как сервер?

Сервер - это то же самое, что оффлайновая игра, только еще и графический движок писать не нужно. Ну и вместо клавиатуры или геймпада большой вектор сокетов, который ты поллишь.
Аноним 25/02/19 Пнд 12:43:19 1354708238
>>1353778
Исходников сурса же нет, ЕМНИП, только их невнятный SDK.
Аноним 25/02/19 Пнд 12:53:36 1354711239
>>1354647
Если всё так достаточно просто, почему пиратские сервера, часто имеют большое количество багов и отличий в худшую сторону (что-то работает не так, как на официальном сервере)?

мимопроходилинтересующийся
Аноним 25/02/19 Пнд 13:19:09 1354728240
>>1354711
Потому-что одно дело дешифровать и разобрать пакеты с командами, а другое дело с нуля выстроить всю логику игры
Аноним 25/02/19 Пнд 13:34:35 1354749241
>>1354711
Вопрос был про техническую часть, реверс-инжиниринг. ¯\_(ツ)_/¯ Кроме этого есть скрипты, которых тысячи и которые не очень интересны хакерам, которые этим занимаются ради челленжа.
Аноним 25/02/19 Пнд 14:40:21 1354799242
>>1354749
И которые пореверсить в общем случае невозможно.
Аноним 13/03/19 Срд 16:44:06 1363520243
Аноним 13/03/19 Срд 21:41:07 1363668244
Аноним 14/03/19 Чтв 12:34:47 1364075245
>>1145109
Из этих двух по первому больше материалов, а на втором конечно писать приятнее и интереснее (плюс можно потом легко портировать в браузер). Думаю если только вкатываешься в кодинг, то лучше первое, в остальных случаях - второе.
Аноним 14/03/19 Чтв 19:47:20 1364349246
15021877185272.jpg (94Кб, 1280x639)
1280x639
>>1144536 (OP)
Что можете посоветовать вкатальщику, который хочет в дальнейшем работать в геймдеве? В данный момент работаю дизайнером в окологеймдеве вот так вот, да, работал с движками UDK/Unreal/Unity со стороны десигнера, и никак со стороны кодера. Хочется узнать как вообще во все это дело вкатываются программисты, типа поднимают какое-то базовое знание и потом постепенно вкатываются в геймдев или попросту изучают код в рамках какого-то конкретного движка до посинения, и потом устраиваются туда, куда нужны посиневшие в рамках движка люди? Насколько в нынешних реалиях актуальна связка C++ и Unreal 4? Куда не гляну, везде пользуются unity + c#/python даже вот в том месте где работаю я сам., но мне юнити с графисечкой стороны не очень нравится. Либо вообще не смотреть пока ни в какие конкретные области и просто учить плюсы? Хочется узнать у тех, кто занимается этим профессионально, если такие есть.
Аноним 14/03/19 Чтв 21:39:06 1364431247
>>1364349
>Что можете посоветовать вкатальщику, который хочет в дальнейшем работать в геймдеве?
Одуматься.
Аноним 14/03/19 Чтв 21:44:16 1364438248
>>1364431
Ну вообще мне одумываться поздно, я еще и английский учу, и вообще хочу укатываться и вкатываться. Всё совсем плохо. Ну и полный офис геймдев погромистов как бы намекает что не так уж сильно одуматься нужно видимо.
Аноним 14/03/19 Чтв 22:18:08 1364466249
>>1364438
Есть в кодинге области, где работа более тяжелая, а платят меньше, чем в других. Геймдев одна из них. Идти можно только за идею, но при этом сама работа крайне унылая и однообразная, так что энтузиазм быстро испарится. А куча работы и низкая ЗП останутся.
Аноним 14/03/19 Чтв 22:23:47 1364469250
>>1364466
А если с перспективой дальнейшего съеба из россии? Просто хочу на берегу определиться со всеми условиями и дальше уже ебашить не взирая ни на что, понимаю что есть что-то проще плюсов, понимаю что есть области где платят больше и вкатиться легче, вот только уныние от того, что я занимаюсь не интересным мне делом может скатить в говно вообще всё. И я не знаю что мне делать.
Аноним 14/03/19 Чтв 22:33:31 1364476251
>>1364469
С т.з. трактора геймдев тоже не очень привлекателен. Уезжают легче всего крутые спецы с особыми, уникальными, наукоемкими или сильно востребованными скилами. Геймдев же это обычный кодинг, там не нужно рокет саенса, нет ничего особо сложного в массе. Разве что в дебрях графики.
Аноним 14/03/19 Чтв 22:37:28 1364480252
>>1364476
Ну как в итоге люди в геймдеве оказываются-то? Куда не посмотри везде инди, мобайл, кукурузисы, но оно не востребовано и нахуй никому не нужно при этом.
Аноним 14/03/19 Чтв 22:40:54 1364484253
>>1364469
ты не задумывался почему в геймдеве низкие зп? одна из причин та же, по которой по этой линии сложно завести трактор - очень много людей ломится в геймдев, ну вот как ты
Аноним 14/03/19 Чтв 22:41:56 1364486254
>>1364480
Окей, тогда спрошу по другому, если учиться кодингу в unreal на плюсах, знания полученные при этом могут пригодиться в чем-то дальше, в чем-то другом, или только строго для кодинга в unreal?
Аноним 14/03/19 Чтв 23:03:17 1364493255
>>1364486
Общие принципы кодинга пригодятся, конечно. Но на них одних ты далеко не уйдешь. Без какой-то специализации сейчас никак.
Аноним 14/03/19 Чтв 23:07:23 1364496256
>>1364493
Ну чтож пока учусь буду пытаться в геймдев, если совсем ни в какую, уйду в смузи
Аноним 15/03/19 Птн 14:53:36 1364716257
>>1221281
И за что сейчас платят юнити-султанам?
Аноним 15/03/19 Птн 22:12:36 1364982258
>>1364349
>Насколько в нынешних реалиях актуальна связка C++ и Unreal 4?
Очень актуальна не только в геймдеве. Есть большой спрос на всякие демки, интерактивные презентации. Особенно пару лет назад, когда был пик популярности ВР, и каждый мамкин бизнесмен делал ВР-аттракционы.
Аноним 16/03/19 Суб 23:24:44 1365714259
>>1364496
Если нравится то учи конечно, я вот в разработку драйверов пытаюсь вкатиться, понимаю что нахуй никому не нужно + без опыта никуда и не возьмут, ну и похуй! Зато мне интересно.

мимо
Аноним 22/03/19 Птн 02:41:36 1368270260
>>1221283
> Творчество тут представлено исключительно в том виде, как его понимают бородачи в свитерах.
Блупринты не для погромистов, а для геймдизайнеров.
Аноним 22/03/19 Птн 14:31:56 1368449261
>>1284569
>// Из знакомых примеров знаю лишь то, как изображение проецировалось на экраны телевизоров. Телевизионная сетка значительно визуально улучшала качество изображения. Также, в мс-дос, когда делали видео, часть видосов была для экономии места перекодирована так, что были пропущены строки. И по какой-то причине это визуально воспринималось как более качественная картинка, чем если без этих строк. В старом divx-player был примитивный улучшайзер, он подмешивал случайный шум к картинке: точно также, картинка казалась более качественной, хотя это такое же шакальное изображение. Что у этих решений общего? При всей видимой статичности благодаря этим решениям визуализируют одну и ту же шакальную текстуру совсем иначе, превращая эту текстуру на выходе в, грубо говоря, несколько совсем разных текстур.

Основной момент который не понимают создатели фильтров под "ящик из 90х":

https://www.youtube.com/watch?v=Ea6tw-gulnQ
Аноним 22/03/19 Птн 19:36:46 1368560262
>>1368449
Ну есть же CRT Royale вроде, который вроде как физически эмулирует CRT (с различными решётками и всеми делами). Правда я слышал, что для "той самой" картинки лучше около 4К разрешение
Аноним 24/03/19 Вск 03:40:33 1369160263
Ебанутый вопрос, но имеет ли функция преобразования значения из отрезка [a, b] к отрезку [0, 1] общепринятое имя? f(x)=clamp((x+a)/(a+b), 0.0, 1.0). Решил отрефакторить свою мат библиотечку, не могу придумать для нее адекватное название.
Аноним 24/03/19 Вск 03:51:20 1369166264
>>1369160
>f(x)=clamp((x-a)/(b-a), 0.0, 1.0)
Аноним 24/03/19 Вск 04:08:10 1369170265
Аноним 24/03/19 Вск 11:35:40 1369241266
>>1369160
Это сорт оф барицентрических координат для одномерного случая.

l = b - a; // длина исходного вектора
lt = b - t; // длина второго вектора в системе координат первого вектора

bar = l / lt; // их отношение даст нормализованую координату.

Если выхоход за пределы отрезка недопустим, то ее еще нужно клампнуть в [0-1].
Аноним 24/03/19 Вск 13:23:26 1369277267
Аноним 24/03/19 Вск 14:13:26 1369300268
Ананасы, как сделать такое?
Допустим какая-то сущность должна двигаться по заданной траектории по списку тайлов.
Расстояние между двумя соседними тайлами эта сущность должна преодолевать за 1000 мс.
Как это сделать без каких-то дёрганий и чтобы она плавно двигалась?
Аноним 24/03/19 Вск 14:22:47 1369303269
>>1369300
Просто двигаешь, в чем прикол?
Аноним 24/03/19 Вск 15:14:21 1369327270
.png (3Кб, 854x248)
854x248
>>1369303
Пробовал как точно, не помню, кода по рукой нет и получалась хуйня, типа пикрелейтеда.
Чуть дальше намеченного проходит и в итоге накапливается "погрешность" и сущность двигается не по тайлам, как-то около них.
Аноним 24/03/19 Вск 15:23:24 1369331271
>>1369327
Ну ставь ее в центр тайла, в чем проблема-то?
Аноним 24/03/19 Вск 15:46:07 1369345272
>>1144536 (OP)
Все игры нужно разрабатывать на Расте!
Аноним 25/03/19 Пнд 00:00:21 1369636273
M3EIa.gif (1826Кб, 994x632)
994x632
Аноним 25/03/19 Пнд 00:01:21 1369637274
Аноним 25/03/19 Пнд 00:26:34 1369643275
Аноним 25/03/19 Пнд 06:48:46 1369693276
Аноним 25/03/19 Пнд 10:58:29 1369739277
А если я ебошу в гамаке на скриптовом языке программирования GML, то тогда я считаюсь программистом?
Аноним 25/03/19 Пнд 11:09:04 1369741278
>>1369693
Не это блочная разрушаемость. Вангую там у каждого блока коллайдер и некоторая модель энергии, типо если на блок сильно довить, то часть своей энергии он передаст соседям и они тоже сломаются. Наверно есть особый юзкейс для верхних блоков, чтобы имитировать гравитацию.
Аноним 25/03/19 Пнд 11:09:54 1369742279
>>1369643
Все игры нужно разрабатывать на Паскале!
Аноним 25/03/19 Пнд 13:18:15 1369785280
5791db7e03bbf15[...].png (235Кб, 700x700)
700x700
>>1144536 (OP)
> Вопросы по Unity и прочим движкам
> - в соответствующем разделе
>#unity
>#godot
>#ue4
>#unreal
Аноним 25/03/19 Пнд 15:11:16 1369825281
>>1369741
Всмысле блочная? В 2003 разве можно было порезать целый ебаный дом в несколько этажей на куски да еще и с коллиженами своими? Это же времена жифорс ФХ и селеронов на пресскоте
Аноним 25/03/19 Пнд 15:56:20 1369836282
>>1369742
Нет, игры нужно разрабатывать на Расте (не все).
Аноним 25/03/19 Пнд 17:35:35 1369874283
>>1369836
Но раст не нужен. Вот так парадокс. Получается, игры не нужно разрабатывать?..
Аноним 25/03/19 Пнд 20:44:36 1369969284
>>1369825
Я не улавливают твое смущение.

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

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

Вот посмотри годный пример вокселей в 2д(это пиксели, лол):
https://habr.com/en/post/345104/
Аноним 25/03/19 Пнд 20:46:22 1369970285
>>1369836
Игры нужно разрабатывать.
Аноним 25/03/19 Пнд 21:23:55 1369999286
Аноним 25/03/19 Пнд 21:25:19 1370000287
>>1369693
Это просто анимации, а логика по контрольным точкам смотрит, куда попали\где что взорвалось и т.п.
Аноним 25/03/19 Пнд 21:45:10 1370011288
>>1370000
Нет, там можно и куда более мелкие и точечные дыры делать.

>>1369969
Я не верю в порезку. Сейчас анрил4 проседает по фпс заметно если поставить такой дом порезанный на кирпичики на печ1070, а это работало на FX5200 (которая еще не умела в инстансинг)
Аноним 25/03/19 Пнд 22:28:54 1370032289
>>1370011
>куда более мелкие и точечные дыры делать.
Это просто анимации, а логика по контрольным точкам смотрит, куда попали\где что взорвалось и т.п.
Аноним 26/03/19 Втр 00:13:26 1370111290
20190326005015 [...].png (662Кб, 798x664)
798x664
silent-stormsnap.jpg (229Кб, 768x432)
768x432
silentstorm11.jpg (100Кб, 620x465)
620x465
Untitled-1.png (500Кб, 4000x2536)
4000x2536
>>1370011
вот тут эффекты подсказывают разрешение грида для просчета дестракшна. вероятно, все ломаемые стены - это квадраты 1х1 юнит, замапленные на квадрат в uv-спейсе. остальное - просто пропы, которые тупо делают "пуфф!"

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

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

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

результат помножить на матрицу трансформации для этой стены, старый полигон удалить

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

что касается мелких дыр от пуль, то берется звёздочка и вычитается из этого квадратика
тут трикс в триангуляции и случаях, когда дырка на краю. поэтому думаю это отдельная большая проблема, другой алгоритм для разрушения
типа: http://www.angusj.com/delphi/clipper.php

мож как-то проще делалось это всё, хз. те же поксели, что и в вормсе, по сути

короче, надеюсь этот высер окажется хоть чем-то полезным
Аноним 27/03/19 Срд 09:39:34 1370707291
Хочу сварганить демку про сборочную линию.

Какой язык и движок лучше взять? Не планирую 3д и прочее.
Аноним 27/03/19 Срд 10:45:11 1370721292
>>1370707
Унити. В любой непонятной ситуации лучший выбор - Унити.
Аноним 27/03/19 Срд 13:11:07 1370764293
>>1370721
Какой редактор кода ставить? У меня висуал студио не ставиться.
Аноним 27/03/19 Срд 13:15:28 1370767294
висуал сдудио г...
Аноним 27/03/19 Срд 13:25:04 1370775295
>>1370767
Мне нужно, чтобы автоматически распознавало юнити3д и открывало с#.
Аноним 27/03/19 Срд 15:10:34 1370811296
>>1144536 (OP)
Какой стек технологий для вката в геймдев? Все пишут про C# и C++, но я слышал, что и на Питоне с Джавой что-то делают.
Аноним 27/03/19 Срд 17:09:51 1370872297
>>1370811
Возьми движок и вкатывайся.
Если навыков программирования достаточно, то с движком проблем не будет
Аноним 27/03/19 Срд 18:07:04 1370913298
>>1370811
Если рассортировать вещи по сложности, то язык будет где-то глубоко под фасадом api под шконкой.
Аноним 27/03/19 Срд 21:49:15 1371045299
>>1370872
Немного знаком с питоном, слышал, что для программирования надо именно жестко задрачивать C++
>>1370913
То есть, можно вообще без языка что ли?
Аноним 27/03/19 Срд 23:39:03 1371193300
Аноним 27/03/19 Срд 23:40:16 1371195301
>>1371045
Блять. Без языка нельзя. Работа программера — это не о языках. Языки это, сука, просто инструменты. То что ты выучишь как на джаве кнопку сделать тебе нихуя не даст. Учить надо программирование блять.
Сипп это исключение, ибо лучше него для очень многих вещей ещё не придумали. Но зависит от того, где ты хочешь работать, если в мобильный сегмент сидеть на подхвате писать пару методов в месяц, то нахуй тебе ничего кроме питона/сижоп не нужно
Аноним 03/04/19 Срд 10:24:48 1374111302
>>1144536 (OP)
У меня нет идей я тупой.
Хочу написать простую игру типа не смотри на петуху чтобы убедиться, мое это или нет.

Какие есть годные пособия по написанию игры на Java, например? Те чтобы большой проект был разбит на этапы и я сам мог подумать, как что делается, а не тупо копипастить за "гуру"?

Знание ООП на уровне понимания что гуглить - есть
Аноним 03/04/19 Срд 16:29:26 1374366303
>>1371195
И тут ты такой рассказываешь как учить именно программирование (и учить правильно), а не языки.
Аноним 03/04/19 Срд 18:22:10 1374424304
>>1374111
берешь популярный игровой фреймворк, изучаешь доки и примеры, повторяешь с парой фреймворков и движков, профит
Аноним 03/04/19 Срд 18:52:33 1374455305
Аноним 03/04/19 Срд 18:56:45 1374463306
Аноним 03/04/19 Срд 23:18:35 1374675307
>>1371195
Вот этот все правильно написал, не добавить, не отнять.
Аноним 04/04/19 Чтв 14:33:38 1374938308
Аноним 04/04/19 Чтв 15:25:53 1374957309
>>1374366
>И тут ты такой рассказываешь как учить именно программирование (и учить правильно), а не языки.

1) SICP

2) Андре ламот "программирование трехмерных игр для windows" - только после п.1 и при прочтении внимательно сверяйся с прочитанным ранее и понимай где мякотка про графин а где быдлопроцедурное программирование.

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

4) Game Engine Architecture от создателя дрейкфейса - подивиться як байтоебы на соснулях без core i5/core i7 страдают. Ну и подчерпнуть для себя низкоуровневую поеботу, которая пригодится разв в столетие.

Аноним 04/04/19 Чтв 19:50:44 1375082310
суп, есть вопрос:
Есть сервер, есть клиенты и задача их синхронизации.
Правильно ли я понимаю, что на сервере я храню объекты в условной хэшмапе по ключу(uuid, например) и при подключении клиента скидываю ему всё, а дальше просто обновляю то, что изменилось?
Аноним 05/04/19 Птн 19:46:41 1375596311
бамп
Аноним 06/04/19 Суб 21:13:13 1376194312
бампать в тематике не заставляйте
Аноним 15/04/19 Пнд 11:00:30 1381688313
Аноним 16/04/19 Втр 13:15:23 1382221314
>>1381637
>конкурса меряния програмерских пиписек
Самый быстрый фруструм каллинг + софтварный растеризатор.
Нужна Помощь Аноним 03/05/19 Птн 18:57:23 1393499315
screen-shot-201[...].png (1401Кб, 1600x900)
1600x900
Можно ли как-то из Фортнайта стянуть дополнения (а именно Таноса, оружия Мстителей со всеми анимациями, физикой, звуками и т.д.) к эвенту со Мстителями и запихнуть в свой Unreal Engine 4 (который я пока не освоил, но всё же), для своего внутреннего так сказать пользования?
Аноним 12/05/19 Вск 16:19:41 1398385316
Аноним 18/05/19 Суб 20:31:59 1402607317
Аноним 20/05/19 Пнд 23:15:16 1404038318
>>1402607
Хуй его знает. Пишет что доступ к видео из моей страны ограничен.
Аноним 21/05/19 Втр 10:55:58 1404156319
Аноним 21/05/19 Втр 21:12:51 1404399320
Аноним 21/05/19 Втр 22:42:48 1404428321
>>1364466
Откуда инфа? Что то не верится что те кто делают энгрибердсов и прочих жожожамперов сидят на хуяхю
Аноним 21/05/19 Втр 22:48:27 1404433322
>>1402607
Не тупи, это обычная моделька уровня две перпендикулярные текстурки с картинкой "раскаленная пуля ух бля горячо аж жжотса".
Аноним 27/05/19 Пнд 09:27:28 1407188323
>>1208230
>делаешь дефолтный "файл сохранения" в котором по сути прописано состояние игры в начале, он будет иметь ту же структуру
Интересный метод.
Господа, покритикуйте мой вариант:
Начальное расположение элементов на каждом уровне удобно расставлено в редакторе. Никакой файл сохранения не используется. При этом, каждый элемент при своей загрузке, определяет, существует ли он? И если он не существует, он останавливает дальнейшую подгрузку своих данных и выгружается. Если он существует, то чекает своё состояние, расположение и выстанавливает, так же проверяет есть ли у него незагруженные дочерние объекты и подгружает их.
Существование объектов задаётся файлом сохранения, очевидно.
Какие минусы, кроме лишней загрузки?
Аноним 27/05/19 Пнд 10:39:01 1407217324
>>1407188
> Никакой файл сохранения не используется.
> Существование объектов задаётся файлом сохранения, очевидно.
Ты какой-то всратый. Ещё у тебя ООП головного мозга, но это тема для отдельного разговора.
Аноним 27/05/19 Пнд 11:35:57 1407248325
>>1407217
Ты какой-то школьный. А еще ECS - это паттерн ООП (точнее это подпаттерн паттерна data driven, который - паттерн ООП). Deal with it
Аноним 27/05/19 Пнд 12:03:07 1407259326
>>1407188
Чего бля? Испольовать статистику о уровне в качестве сейва? Ты че ебанутый? А если плейор введит импульс 101 и получит божественную залупу, которой не было в сохранении, что тогда?

Все васяны жсон используют для сохранений в котором пишется "мобж аллах, позиция (нан, нан, нан)б хп 834, жопа "разъебана" и n = 234634" при сохранении и в котором читается эта вся инфа при загрузке.
Аноним 27/05/19 Пнд 14:03:31 1407323327
>>1407188
>Для начального расположения никакой файл сохранения не используется.
Слоуфикс
>>1407259
Возможно со слоуфиксом моя идея станет внятнее?
Аноним 27/05/19 Пнд 18:04:48 1407464328
>>1407248
>ECS - это паттерн ООП
Ох, провинциальные школьники уже совсем обезумели.
Аноним 27/05/19 Пнд 19:30:41 1407538329
Аноним 28/05/19 Втр 17:29:54 1408084330
>>1407217
Т.е. ты увидел слово "объект" и у тебя сразу разорвало жопу от того, что ООП ты так и не осилил, а объекты в твоем жалком мирке бывают только в ООП?
Ну, попроси мамку свою тебя пожалеть.
Аноним 09/06/19 Вск 18:48:20 1414170331
Обесните OpenGL только треугольники умеет рисовать? А положение вершин 3д модели уже процессор считает.
Аноним 09/06/19 Вск 20:13:10 1414221332
>>1414170
> А положение вершин 3д модели уже процессор считает
Смотря что, но нет. Вершины обрабатываются вершинными шейдерами (Vertex Shader). Самый примитивный вариант это аффинные трансформации (перевороты, перемещения, изменение размеров), но можно и многое другое делать. Часть вершин возможно придется через CPU просчитывать но тут стараются максимально уменьшить их количество - чем больше вершин на CPU прочсчитывают тем сильнее приозводительность по пизде идет. К примеру скелетная анимация. На CPU просчитывается положение костей, передается в GPU, а там уже на основе костей простчитываются все остальные точки модели. Естественно, если ограничения на анимацию позволяют (если физика не мешает) то и вычисления над скелетом перемещаются в GPU.
Аноним 14/06/19 Птн 22:52:54 1416635333
Ананасы, а как работает анимация в играх?
Я имею ввиду вот что. Те, кто играл в варкрафт 3 наверняка видели что юниту можно приказать атаковать цель, он начнёт замахиваться и ему можно успеть дать команду "Отставить".
В итоге часть анимации воспроизведётся, но атаки не будет.
Как такое делается?
Аноним 14/06/19 Птн 23:03:05 1416639334
>>1416635
проигралась анимация замаха, далее проверяем. если всё ещё бьем - проигрываем анимацию удара

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

в противном случае возвращаем в пассивное положение

рекомендую освоить азы аним графов в уе4. топик на самом деле огромный, можно легко книгу написать
Аноним 15/06/19 Суб 04:29:20 1416717335
Что посоветуете прочесть по искусственному интеллекту в играх? Как научиться делать поведение врагов как в Pac-Man, Lode Runner, Battle City?
Аноним 15/06/19 Суб 12:22:53 1416782336
r1467675SYMXj.jpg (211Кб, 720x736)
720x736
artificial-inte[...].png (93Кб, 500x616)
500x616
>>1416717
> искусственному интеллекту
Первым делом тебе нужно чётко понять, что искуственного интеллекта не бывает, потому что люди толком не понимают, как работает естественный. Затем, если не обижен ангельским, можно посмотреть видосики Томми Томпсона: https://www.youtube.com/user/tthompso/videos , особенно рекомендую про наиболее часто используемые в области паттерны - behaviour tree https://www.youtube.com/watch?v=6VBCXvfNlCM и FSM https://www.youtube.com/watch?v=JyF0oyarz4U .
Аноним 15/06/19 Суб 14:38:37 1416833337
.png (357Кб, 643x645)
643x645
Аноним 15/06/19 Суб 15:57:02 1416857338
Каким способом лучше лочить мышь на (игровом) окне в WinAPI?
Аноним 17/06/19 Пнд 04:30:46 1417493339
>>1417491
классный дизайн лампы
Аноним 17/06/19 Пнд 12:48:26 1417624340
Аноним 10/07/19 Срд 13:43:34 1431546341
уровень.webm (16790Кб, 800x450, 00:00:47)
800x450
Не тонем!
Аноним 15/07/19 Пнд 12:17:07 1435608342
Портирую одно поделие на линупс, возникла проблема. Есть Х окно. Если запустить параллельно поток в котором отслеживается состояние клавы через XQueryKeymap, то окно перестает реагировать на ивенты, т.е. XNextEvent в основном потоке внутри подвисает и перестает что либо возвращать. В винде аналогичное действия выполняют GetAsyncKeyState/GetMessage. Где тут может быть засада?
Аноним 15/07/19 Пнд 13:08:22 1435650343
>>1435608
Решилось добавлением XInitThreads
Аноним 17/07/19 Срд 01:01:43 1437279344
15633110898840.png (296Кб, 534x475)
534x475
Это правда что белорусы - все безигорные чмошники?
Аноним 19/07/19 Птн 21:31:49 1439132345
Посоветуйте годную книгу по opengl на русском. Или правду пиздят, что нужно по туториалам учиться?
Аноним 20/07/19 Суб 08:32:04 1439283346
>>1144622
В современных играх - это не баг, а фича.
Аноним 27/07/19 Суб 20:17:19 1443563347
Второй день пытаюсь оформить торрент https://rutracker.org/forum/viewtopic.php?t=5759180
но там какой-то модератор сначала хотел просто так закрыть раздачу, утверждая что это не одна серия, а теперь докопался до качества. Такое чувство что там бюрократии больше чем гос. аппарате, два пакета правил и целое иерархическое дерево админов.
Аноним 27/07/19 Суб 20:28:05 1443566348
>>1443563
Спасибо, классная ссылка!))
Аноним 27/07/19 Суб 20:28:22 1443567349
Аноним 27/07/19 Суб 20:28:51 1443568350
>>1443563
Прошел по ссылке, не пожалел)
Аноним 27/07/19 Суб 23:04:56 1443623351
>>1443566
Двойной смайл означает что все таки я дебил? Я все сиденье прожег, он второй день отменяет раздачи да закидывает в тестовый форум. Дожили блять, цензура на рутрекере.
Аноним 27/07/19 Суб 23:33:38 1443641352
>>1443623
Просто ты дебил.
Ну и омежное чмо к тому же, что для программистишки неудивительно.
Аноним 28/07/19 Вск 00:12:59 1443659353
>>1443563
ебать там у вахтёра горит с того, что к нему обращаются не на "Вы" (именно, с большой буквы). ору!
Аноним 28/07/19 Вск 01:30:46 1443673354
>>1443641
Думал вы побудете моей армией, ну да ладно, спасибо за отзыв, адиос амигос.
Аноним 28/07/19 Вск 02:24:30 1443688355
Аноним 28/07/19 Вск 13:55:42 1443857356
>>1144536 (OP)
Ищу кого-нибудь для общения вокруг программирования и матана, обмена ссылками и книгами, а так же для парного программирования.
Мои языки C, Python. Считаю что программист из меня так себе.
Сферы интересов: Теория игр, теория принятия решений, Управление и оптимизация, многокритериальное принятие решений, Марковские модели, конечные автоматы, теория графов, теория вероятностей, статистические методы, имитационное моделирование, ии и коллективное поведение и проч.
korbelan@mail.ru
Аноним 02/08/19 Птн 00:14:47 1446307357
Аноним 02/08/19 Птн 11:33:45 1446485358
78db9d6c3fda8c2[...].jpg (14Кб, 300x265)
300x265
Аноним 02/08/19 Птн 13:52:00 1446577359
>>1443857
Давай общаться. Я тоже искал как-то таких людей.
Но обычно ищут когда хоть какие-то идеи есть в голове, которые хочется реализовать
Аноним 05/08/19 Пнд 19:55:18 1448565360
Посоны, а давайте свой игровой движок пилить?
Аноним 06/08/19 Втр 08:41:24 1448764361
>>1448565
Предлагай конкретику.
Аноним 06/08/19 Втр 11:39:25 1448816362
Аноним 06/08/19 Втр 15:29:46 1448921363
>>1448565

быдло пилит ДВИЖОК
элита пилит РЕДАКТОР
синк эбаут ит
Аноним 06/08/19 Втр 15:54:21 1448936364
>>1448565
Лучше свой opengl напишите.
Аноним 06/08/19 Втр 17:11:26 1448980365
>>1448764
Целевая платформа - пека, заточка под опенворлд.
Аноним 06/08/19 Втр 18:16:33 1449036366
>>1448980
Оригинальные предложения будут? Или вы хотите в очередной раз воспроизвести то, что до вас делали десятки (а может и сотни) раз?
Аноним 07/08/19 Срд 01:17:31 1449196367
>>1449036
Оригинальные предложения конечно будут. Есть идея поэкспериментировать немножко с самой концепцией игровых двигателей. Идея заключается в том, чтобы на стадии разработки игры, меньше кодить, а больше "рисовать"/создавать. Нет речь идёт не о так называемых блюпринтах, а о обычном присвоении имён файлам контента. Ну например. Создал ты локацию, дома, дороги, деревья, воду, траву. И добавляешь во все названия стен префикс (w). T.e упрощенно это выглядит прмерно так:
Object(w).3ds
или
Stena215(w).Mdl
Или что-то в этом роде, хоть Blablabla(w).dff. Поскольку двиг во время трансляции контента и кода, всеравно наткнется на символ W в имени файла(/сетки/меша/аудио/изображения/кода/...) и будет воспринимать эту сетку как нечто статичное и скорее всего не разбивающееся в осколки , несветящееся(поскольку нет B, не звучащее (по скольку нет S, имеющее фиксированный уpовень детализации, поскольку нет L1,2,3... и пр групп сеток Level of detailed.
Но вот к примеру эта стена будет иметь приattachенную (с точки зрения моделирования) картину или тот же ковер. Т.е объект временно наглухо закреплённый за другим главным объектом, и который будет дочерним пока на него не по взаимодействовали физически. Вот и назовем этот ковер как нибудь типо blablabla(P20D,) что в переводе на людской означает упасть от 20 кг нагрузки (удар, выстрел и пр) и перейти в стадию тряпичной куклы P20D, ну или в стадию обычного твердого тела типо box P20B.
Есть у меня короче задумки на этот счёт, и не просто задумки, а некая реализация уже есть в виде небольшого консольного приложеница (около 300 строк кода) , которое загружает находящийся рядом с собой блокнотик, в который я аккуратно записал типо список типо объектов, типо существующей сцены, на самом деле сцены нет, но есть заголовки файлов с инструкциями на моём "языке" сценической разметки. Так вот задача моего движка, разобраться что там к чему ещё на стадии интерпретации кода. Пока я по сути не программировал более высокоуровневую логику типо "этот объект повреждён, заменим его другой четкой с вмятиной и пр.. " , пока я колупвюсь в более низкоуровневых дебрях, отвечающих за синтаксический анализ заголовков файлов. Также попутно учу свой двиг разбирать и делить длинные заголовки на скобки и так называемые токины(логически законченные единицы языка). Ведь бывают и такие файлики -
Tree(Tgrass.jpg, FS, O15, L3000-). Что должно заставить двиг обрабатывать сетку tree с изображением дерева, как некий стационарный НЕ динамический объект, способный гореть, и видимый до 3км но далее исчезающий.

всего в моей системе 17 упр символов

При том при сем, шо я довольно большое ударение ставлю именно на логической составляющей движка, мне совершенно похеру на рендер. У меня его своего вообще не будет. Это возгружу на уже имеющиеся достижения гениев графики, будь то directX, opengl, irrlicht, glscene и пр. Их всеравно не перещеголять в скорости рисования треугольников.
Аноним 07/08/19 Срд 06:56:17 1449230368
Аноним 07/08/19 Срд 10:14:20 1449283369
>>1449196
Поздравляю, ты только что ECS.
Аноним 07/08/19 Срд 10:20:25 1449287370
>>1449283
Ну хз. Т.е это уже было кем-то придумано до меня?
Аноним 07/08/19 Срд 15:02:42 1449388371
Аноним 09/08/19 Птн 09:58:36 1450260372
Я уже спрашивал об этом в /gd/, но там собрались какие-то юнитидауны и нормально никто не ответил.
Как вообще в мире gamedev с современными подходами к разработке?
Как там с архитектурой?
Про двенадцатифакторные приложения слышали?
Бизнес-логику от системной логики и данных отделяют?
Гит используют?

Мимо-энтерпрайз
Аноним 09/08/19 Птн 14:44:22 1450492373
>>1450260
Ты шо ебобо, какие 12 факторов в десктопном приложении.
Аноним 09/08/19 Птн 15:28:22 1450518374
>>1450492
А почему конфигурации, зависимости, контроль версий, stateless бизнес-логика, паралеллизм и прочее не относятся к десктопу? Да, они выглядят несколько по-другому, но вообще это всё про хорошую архитектуру и разделение ответственности, беспременительно к вебу (пункт про порты - исключение, его можно было бы переформулировать в "интерфейсы ввода-вывода" к примеру).
Аноним 09/08/19 Птн 19:06:12 1450592375
>>1450260
> Мимо-энтерпрайз-головного-мозга
Тудали ты лезешь?
В геймдеве ничего общего с тырпрайзом нет и быть не может. Вернее, если туда попадает тухлая струя тырпрайза - всё - земля пухом.
Аноним 10/08/19 Суб 13:33:49 1450860376
Аноним 10/08/19 Суб 19:40:52 1451039377
o
Аноним 11/08/19 Вск 01:23:14 1451141378
Аноним 12/08/19 Пнд 19:55:05 1452099379
>>1450860
Неправильно начинаешь понимать.
Аноним 13/08/19 Втр 01:23:01 1452198380
1565076931786.webm (2747Кб, 640x360, 00:00:43)
640x360
>>1450860
>вышедшее из gd
Глубокая аналитика у тебя, слышь.
Аноним 18/08/19 Вск 23:51:26 1455936381
Пишу браузерную игру на js+HTML5(client-side) и C++(server-side). Для нетворкинга использую вебсокеты.

Встал вопрос - как синхронизировать физику?

Я попытался поднять два физических движка: один на стороне клиента, и ещё один - на стороне сервера. Раз в 100мс я отправляю клиенту координаты и линейную/угловую скорости всех физических объектов. По идее всё должно быть чётко, если стейты одинаковые - но нихуя! Физика в браузере как будто считается быстрее, чем физика на сервере, и поэтому физические объекты, например ящики, в браузере падают быстрее, и каждые 100мс дёргаются, возвращаясь к положению, которое у них в данный момент выставлено на сервере. Гравитация одинаковая, maxSubSteps одинаковый, таймстеп фиксированный и тоже одинаковый. Как фиксить?

Если это важно - на клиентах я использую Oimo.js, а на сервере - Bullet 3. Буллет, конечно, есть и для браузера - но он осне медленный в сравнении с Oimo.

Выручайте.
Аноним 19/08/19 Пнд 13:15:38 1456171382
7d599b64a0c2799[...].jpg (12Кб, 323x323)
323x323
>>1455936
> Юзает два разных физдвижка
> Удивляется, что результаты разные
> Моё лицо, когда
Аноним 19/08/19 Пнд 18:01:53 1456348383
>>1456171
Но ведь настройки у них одинаковые, хули они по-разному себя ведут?
Аноним 19/08/19 Пнд 18:04:43 1456349384
>>1456171
Ладно, убедил

Допустим, я интегрирую Oimo.js в C++(потому что не хочу юзать буллет в браузере) - насколько быстро эта хуйня будет работать через V8?
Аноним 21/08/19 Срд 18:23:07 1457801385
Аноним 21/08/19 Срд 22:12:15 1457985386
>>1455936
>Я попытался поднять два физических движка
> Гравитация одинаковая, maxSubSteps одинаковый, таймстеп фиксированный и тоже одинаковый.
>>1456349
>интегрирую Oimo.js
У них рандом участвует в прочетах, даже одинаковые движки дадут разные результаты при одних входяших.
В твоем варианте клиент должен только рендерить, все считает только сервер.
или 1 из клиентов наделен физой пацаны я создал , а сервер остальным транслирует месажи от него, типо если сервер у нас и так загружен хуйней ( жопашный вариант для браузерных клиентов, ибо читКады тебе обеспечаны, а к чужому коду ты ватчеров не напишешь нерационально нормальных ).
>Для нетворкинга использую вебсокеты.
которые работают черезжопу tcp, для реалтайм с большим колличеством объектов ты просто невытянешь по пропускной на клиенте ( будет все лагать пиздец ) даже через локал, там upd как воздух нужен, чего на сколько я знаю, на браузере не организуешь, пока что.
>попытался поднять два физических движка
ты типа пытался этим компенсировать пробелы между пакетами?
Лучше закладывай на отрисовку на клиенте большее время, чем условное ожидание между пакетами.
Аноним 02/09/19 Пнд 16:58:11 1465865387
плохиелюди.webm (3798Кб, 768x432, 00:01:13)
768x432
Бамп
Аноним 11/09/19 Срд 03:57:50 1471565388
мцгодот.webm (7345Кб, 960x540, 00:02:10)
960x540
бамп
Аноним 11/09/19 Срд 13:40:30 1471750389
Поясните за godot.
Аноним 11/09/19 Срд 23:20:48 1472068390
15363296492790.webm (784Кб, 700x392, 00:00:20)
700x392
Аноним 12/09/19 Чтв 13:34:42 1472242391
Аноним 16/09/19 Пнд 13:44:26 1474238392
15686305661346.webm (15735Кб, 640x360, 00:05:54)
640x360
Бамп
Аноним 16/09/19 Пнд 14:21:19 1474296393
Что за формат текстур используется в игре Exanima?
Аноним 17/09/19 Втр 12:33:21 1475165394
>>1474296
Так понял там формат dds с измененным заголовком файла. Почти все текстуры удалось корректно прочитать, кроме некоторых, у которых странный dds формат. Вроде формат похож на DXT5, но текстура почему-то пикселизированная с вырвиглазными цветами получается. Нихрена не понятно.
Аноним 17/09/19 Втр 16:14:51 1475344395
>>1475165
Короче нифига не могу победить этот странный формат. Это какой-то dds, но хрен знает какой. Вроде как первые 32 байта нужно заменить на нормальный заголовок dds-файла и тогда будет работать. Только какой это из форматов dds - нифига не понятно. Разрешение по заголовку вроде 1024x256, но размер файла соответствует DXT5 512x256 c мипмапами.
https://anonfiles.com/7eF4W359nd
Аноним 17/09/19 Втр 17:34:37 1475403396
>>1475165
Может это нормал мапа?
Аноним 17/09/19 Втр 23:41:48 1475745397
>>1475403
Да там есть и карты нормалей и обычные картинки странного формата.
Аноним 17/09/19 Втр 23:44:37 1475749398
>>1475344
Картинка по ссылке скорее всего пожата DXT1 и имеет разрешение 1024x256, но все равно выдает не правильное изображение.
Настройки X
Ответить в тред X
15000 [S]
Макс объем: 40Mб, макс кол-во файлов: 4
Кликни/брось файл/ctrl-v
Стикеры X
Избранное / Топ тредов