Привет, анон. Как-то скроля Интернеты наткнулся на списое игр, которые нужно написать по порядку для максимального профита, начинался он с Понга и заканчивался Думом вроде. Так вот я проебал скрин с ним, заново найти не могу. Посему решил запустить тематический тред, где аноны будут постить названия игр, клоны которых нужно написать новичку для получения тех или иных навыков. Пожалуй начну:1) Понг - управление, базованя работа с графикой2) Тетрис - разбор механики игры, работа со сложными фигурами и их коллизия3) Змейка - реализация изменяющегося тела, коллизия с его частями, генерация на карте еды и препятствий4) Мари - механика платформера, графика, 2Д камера5) Дум - механика шутера, 3Д (2,5Д) камераЧто пропустил?
>>209072 (OP)1) Слишком резкий переход к триде и вообще к графике.2) Дум надо писать на софтварном рендере, без всяких там опенглов. Желательно на си, не стоит им пренебрегать, приучает к дисциплине и хорошей архитектуре.3) Первые три игры лучше делать без графония, в консольном режиме, чтобы изначально сконцентрироваться именно на геймлее, графика может подождать.4) На четвертом пункте можно перейти к графониуму, изучить SDL, например.5) Между третьим и четвертым пунктом не хватает ascii-рогалика. Здесь можно отточить гейм-дизайн, алгоритмы (процедурная генерация), геймплей, тайминг, рпг-составляющая, можно взять готовую механику типа d&d и попробовать реализовать. Отсутствие графона позволит сосредоточиться на геймплее.6) В четвертом-пятом пунктах желательно добавить мультиплеер.
>>209086> Дум надо писать на софтварном рендере, без всяких там опенгловДумаю тут на вкус и цвет, то есть если собрался разобраться в низкой начинке - пили так, а если просто захотел накидать графоуний и трудится над геймплеем, почему бы не пойти в опенгл?
>>209088>почему бы не взять юнити
>>209088Тогда нет смысла ориентироваться на дум, т.к. дум это не полноценное 3д, а софтварный рендер со своими особенностями. Если брать opengl, то уже есть смысл делать что-то на уровне квейка или анрила.>>209098Unyti не даст понимания того, как вещи устроены внутри, как строится архитектура приложения. Можешь хоть до посинения таскать ассеты по сценке, но так ты вряд ли выйдешь за пределы копипаста туториалов и воровства ассетов.
>>209072 (OP)>>209086Слишком резкий переход к играм и программированию на ЭВМ вообще.1) Изучаем математику с геометрией - это база вообще всего2) Изучаем математический анализ и линейную алгебру - потребуется во многих областях, и в физике, и далее в графике3) Изучаем физику и электротехнику - чтобы понять как вообще работают электросхемы, а также монитор и прочие сопутствующие вещи4) Изучаем информатику - базовые понятия о работе компьютера; можно уже попробовать строить простейшие алгоритмы в блок-схемах5) Изучаем архитектуру ЭВМ и программирование на ассемблере - чтобы понимать как компьютер на самом деле работает6) Изучаем высокоуровневые ЯП и различные паттерны и парадигмы - можно писать простейшие приложения7) Изучаем прилегающие к области разработки игр предметы - психология, маркетинг, менеджмент и пр.8) Обучаемся геймдизайну9) Можно уже написать первую свою простейшую игру (напр. угадай число от 1 до 100)
>>209101>но так ты вряд ли выйдешь за пределы копипаста туториалов и воровства ассетов. Ну, так больше времени будет на разработку геймплея, а не на кодинг.
>>209101У тебя какое-то извращенное понимание ПО_ХАРДКОРУ. На деле одно другому не мешает а наоборот помогает. Ктож тебе не дает таскать ассеты мышкой и смотреть как устроина юнити/уе4. И одновременно писать этот твой софтрендер на сишке чтоб как кермак. Тебе нужно и то и то. Так что переставай кривить нос и качай юньку. А то пиздец нубы пошли, змейку написать только в планах. Но уже с презрением смотрят на лучшее что дала индустрия.Короче от того что бы сделаешь сначала змейку на юнити, а потом сделаешь такую же на голом DX9 + ЩинАПИ с тебя мягко говоря не убудет.
>>209102>5.1 Конструируем компьютер. На verilog, например.>6.1 Придумываем ВЯП и пишем для него компилятор.
>>209107>и смотреть как устроина юнитиТi ахуел? Это закрытая и огромная система.
>>209109>8.1 Контруируем игровую консоль
>>209106Разработка геймплея == кодинг. Без кодинга ты себе только анус можешь разработать.
Слишком специфично. У каждого свой путь, универсальных гайдов нет.Вот этого >>209102 будешь слушать - игру таки не напишешь.Выбери из старых 2д игр свои любимые, штук 10, и спроси у анона, клон которой сделать легче всего. И делай, сядь и делай сразу что хочешь, гугли, что непонятно, и так хотя бы до уровня альфы, никого больше не слушай.
>>209072 (OP)Коллизии фигур начинаются с марио, а не с тетриса и змейки, аутист. То простой двухмерный массив, где одна ячейка соответствует кубику фигуры или хвоста змейки.
>>209113программистишка, пожалуйста...
Кароч, делай, что хочешь.
>>209110http://unity3d.com/learn/tutorialshttp://docs.unity3d.com/Manual/index.html
>>209107>unyti>dx9>winapiСпасибо, но я под линуксом сижу, мне спермотехнологии неинтересны.И писал игры посложнее змейки еще в девятом классе.Этот прав - >>209110Зачем нужна закрытая система, создатели которой не сделали на ней ни одной игры, а основная модель монетизации - продажа ассетов лохам, которые потом собирают из них говно вроде air control?Если я захочу взять готовый движок, то возьму что-нибудь опенсорсное, анрил тот же.>>209117Ну давай, расскажи, как ты собрался делать ГЕЙМПЛЕЙ без кода. Как ты собрался описывать игровые правила? Даже в unyti нет кнопки "сделать заебись".
>>209107а зачем вообще писать рендеры, если можно просто взять и подключить к проекту любую кроссплатфоменную либу типа bgfx?вы ебанутые? или вы и физику/звук сами пишете?
>>209072 (OP)На самом деле все зависит от твоих целей. Даже внутри компаний по разработке игр есть разделения программеров. Кто-то графику пишет, кто-то механикой игры занимается, кто-то сетевой код пилит, еще один за интерфейс отвечает, кто-то вообще скрипты клепает.Каждая из областей довольно глубока, и на ее изучение может уйти достаточно много времени.Лучше сначала определиться чему именно ты хочешь научиться, потом уже думать или спрашивать на форумах что для этого надо.
>>209122>но я под линуксом сижуЗачем тебе помогать если ты не будешь делать игры? Только спермогосподам доступны нормальные инструменты разработки игр.
>>209123Почему бы и нет? Никто не говорит, что все игры нужно писать с нуля без использования сторонних либ.Но как минимум один раз, в учебных целях, можно написать самому, и рендер, и физический движок, и пространственное аудио.Всё это можно изучить за вполне разумное время, и уже потом смотреть готовые либы/движки с полным пониманием того, что происходит внутри и как всё работает.В ОП-посте ведь обозначена цель поднять скилл кодинга, а не высирание в маркет очередного унылого говна на unyti в сжатые сроки.>>209129Я не ОП, просто мимокрокодил, мне не надо помогать. За линуксом будущее, даже валв к этому пришел и переписал движок и свой тулчейн под него.В тот же стим уже моветон выкладывать сперма-онли игры.А насчет "нормальных инструментов", в мире unix их намного больше для полноценной разработки, системы контроля версий, различные отладчики, статические анализаторы, скриптовые языки и системы сборки, всё это намного удобнее, чем в сперме, и доступно из коробки. Ну-ка, назови мне аналог cachegrind'a под спермой, например.
>>209128Это понятно, сам я года два назад закончил потуги над консольными игорями, сейчас это все дело вспомнил, но пошел тепер по пути художника, дрочу кубы, фигуры и это всё. А в ОП посте я писал о списке игр, необходимых мамкиному прогеру и комнатному разрабе, который соло собирается пилить игори дома. Вот.
>>209133>За линуксом будущееКогда наступит это будущее, через 20 лет? А мог бы игры делать.>переписал движокОго. Габен изобрел мультиплатформу.>В тот же стим уже моветон выкладывать сперма-онли игры.В стим не моветон выкладывать даже слепленные за 2 дня на коленке игры.>А насчет "нормальных инструментов", в мире unix их намного больше для полноценной разработки, системы контроля версий, различные отладчики, статические анализаторы, скриптовые языки и системы сборки, всё это намного удобнее, чем в сперме, и доступно из коробки.Что то я игр запиленных на твоих прыщах не вижу.>назови мне аналог cachegrind'aВот давай без этих понтов, мол я знаю слова из петушиного языка, а ты нет.
>>209142> В стим не моветон выкладывать даже слепленные за 2 дня на коленке игры.Только если ты хочешь попасть к Стерлингу на озалупление.>>209133> За линуксом будущее, даже валв к этому пришел и переписал движок и свой тулчейн под него.Там органические проблемы с ДРМ и защитой от пиратов. Только как ещё одна платформа для f2p игр, предпочтительно онлайновых. Тем более что в основных движках есть функция "собрать для Линукс".> А насчет "нормальных инструментов", в мире unix их намного больше для полноценной разработкиА Substance Designer/Painter туда уже перенесли? Без этого текстуры сейчас никто не рисует.>>209122> Ну давай, расскажи, как ты собрался делать ГЕЙМПЛЕЙ без кода. На бумажках. С гейммастером. Даже компьютер не нужен для прикидок "как игра должна работать".> Зачем нужна закрытая система, создатели которой не сделали на ней ни одной игрыЗа тем что на ней сделали сотни игр. Дальше включается эффект масштаба, а на заработанное бабло юнити наняли крутых людей делать всё с движком правильно.
>>209072 (OP)Месяц будешь искать эту картинку, потом месяц будешь её лелеять, а потом так и не начнёшь учиться кодить. Просто начни курить основы, а не пытаться осилить этот список, тем более писать свой рендер для дума.
>>20910210) Умираешь
>>209207С подливой))
>>209072 (OP)Сделай тетрис с клоном марио. Потом изучай всякие паттерны и архитектуру. Программирование игры в целом обычное программирование с парой важных особенностей. При условии что программирование - это твой.Иначе сделай тетрис с марио, купи что нибудь вроде PlayMaker для Юнити и фигач.
>>209072 (OP)>списое игр, которые нужно написать по порядку для максимального профитаДля профита надо выбросить из головы это устаревшее дерьмо и посмотреть на современные инди. Понг, пиздец, ПОНГ он собрался делать. Тетрис, змейка... Значит смотри, учу тебя как надо: открываешь субшоту тигсурса или любого крупного сайта. Смотришь на картинки, видишь что-то хорошее и несложное идешь и делаешь похоже. Тут тебе и технологии соответствующие сегодняшнему дню и идеи и геймплей и графика. Перенимай лучшее.Учиться делая змейку и тетрис - все равно как архитектору на первом курсе землянки рыть. Бесполезно, эти навыки и знания устарели.
>>209072 (OP)Самый прям максимум пруфита для новичка это будет доделывание игры до более-менее завершенного вида. Т.е. сделать не только механику (голую механику сделать - это хуйня), а вот запрогать ГУИ, всякие менюшечки, сохранения какие-то, т.е. чтобы по-человечески было, это надо много навыков и сил иметь. Первый раз откровенный говнокод получится, а в следующий раз вы уже подумаете, стоит ли такое дерьмо делать, что сам потом не разберешься, или может как-то красиво все можно закодить, начнете думать об архитектуре, о разных паттернах и прочем.
>>209250>открываешь субшоту тигсурсаМог бы и прямо сказать - берешь и пилишь пиксель-хуинди-метроидванию.
>>209274>откровенный говнокод получитсяпро рефакторинг кода не слышал?>начнете думать об архитектуреи игры станет делать некогда, ведь рефакторинг может стремиться к бесконечности
>>209276Но я не это сказал.Смотри что популярно, какие жанры, какие движки, вот это я сказал. Так ты получишь актуальный в 2016-м опыт и навыки.Что тебе припекает от стиля графики и от разновидности жанра - твои проблемы, никого не ебёт.
>>209279Сам же предложил - сам же говоришь, что говно.На первых проходных проектах нет смысла останавливаться и выдрачивать их, они все равно будут говном, сделал быстренько, понял что не так - пилишь следующий. На начальном этапе так можно достигнуть хорошего роста.
>>209285как ни крути, а опыт приходит со временемскилл нужно задрачивать 24/7, а если уделять этому менее 4х часов в день, то лучше ассеты мышкой таскать, не особо напрягаясь
Что-то не знаю. Я вот хочу игру сделать, кодить не умею, но у меня есть ЮНИТИ, зачем морочиться со всем этим чтобы сделать по хардкору какую-то змейку, если ты можешь делать вместо этого сами игры а не их код...
>>209777Как ты собрался делать игры без кода, долбоёб? Даже в юнити надо программировать геймплей, просто там всё проще, чтобы даже даун разобрался.
>>209784Ну вот я и разобрался. Скажем адвенчура, что там надо программировать? Пойнт энд клик? В юнити есть встроенный поиск путей, надо только написать скриптец на пару строчек чтобы перс ходил по сцене. Что еще?Вот и нахуя мне это все тобою выше написанное изучать годами?
>>209250>Бесполезно, эти навыки и знания устарели.Нет. Игровой цикл, переходы между разными состояниями игры, оценка результата, баланс - всё то же самое что и в больших играх. Только меньшего масштаба.>>209279Можно легко завести код в необслуживаемое состояние. Особо этим грешит Юнити.>>209795Правильное хождение перса может легко уехать за многие тыщщи строк комплексного кода. Даже когда путенахождение и анимации уже есть. Но по идее ты можешь взять что нибудь вроде Playmaker и делать всё мышкой.
>>209819Давай все же без абстрактных правильных хождений, суровая реальность такова: в адвенчуре обычно пойнт-н-клик, кликнул мышкой, перс бежит в это место. Если в юнити не было бы поиска путей, да, пришлось бы писать A* самому и тут действительно надо быть кодером. Но в данный момент это "пара" строчек - сделать рейкаст из камеры через курсор и присвоить таргету навмешагента по кнопке мыши. Многоходовочка готова. Единственное что может усложнить ситуацию это неровные поверхности, там какие-нибудь заморочки с инверсной кинематикой на ногах.>Но по идее ты можешь взять что нибудь вроде Playmaker и делать всё мышкой.Так и делал, пробовал плеймейкер и Uscript, пелеймейкер удобная наглядная машина состояний но не хочется левые дллки в игру добавлять, тем более что в юнити и так есть машина состояний, юскрипт визуальное программирование, мне в целом нравится подход такой, ноды можно писать на том же C# и это все довольно просто.
>>209843Трюк начинается когда ты показываешь игру и тебе говорят что персонаж "ходит как в штаны насрал" или ещё что нибудь. Загораживает нужные предметы и вообще движется "не так". У меня однажды в достаточно тупом 2Д скроллере код отвечающий за перемещения/прыжки занимал несколько сот строк. Только так удалось достичь ощущения что персонаж движется "правильно".
>>209086>>209072 (OP)>>209102Начать стоит вообще с добычи кремния.