Войти
ФлеймФорумРазработка игр

Почему для игр нужно писать дегрокод (4 стр)

Страницы: 1 2 3 4
#45
(Правка: 17 ноя 2022, 3:32) 9:10, 16 ноя 2022

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

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

#46
14:40, 16 ноя 2022

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

#47
15:28, 16 ноя 2022

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

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

#48
0:09, 17 ноя 2022

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

#49
0:19, 17 ноя 2022

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

#50
12:30, 17 ноя 2022

Выскажу свое видение ситуации. Может такое кто-то уже говорил.
Смотря какой сложности проекты будут в прицеле у инди разработчика. Есть проекты где кодобаза не важна, это всякие квестовые бродилки и прочая синглплеерная хрень, в наше время это называется "авторские проекты", где повествование и арт - главная ценность, в таком проекте, как правило, мало кода и механик, но много контента, он не предполагает развития по функционалу и здесь 99,9% можно и нужно говнокодить. Всякие матч3 и прочую казуальную дрянь тоже можно отнести к этому типу.
Второй тип проектов - со средними в реализации механиками, которые надо улучшать и расширять для геймплея. В этом типе проекта говнокд может его похоронить, если проект распухнет по функционалу и растянется на дистанцию больше года, когда говнокод начнет о себе напоминать. Однако если стартануть с какого-то шаблона, и расширять его, даже говнокодом, то какие-то РПГ или стратегжки возможно выпустить, главное быстро стабилизироваться по функицоналу, это тоже ближе к авторским проектам, и разумеется синглплеер онли.
И есть 3-й тип проектов, обычно это убийцы ВоВ, Линеек, доты, овервотчей и тому подобных проектов. Это сложнейшие проекты по функционалу как таковому + там еще сетка. За такое браться без опыта и знаний просто противопоказано говнокодерам ибо расширять и допиливать механики можно только с очень хорошей кодобазой в которую и после 1-2 лет работы можно заходить без страха. По иронии новички и говнокодеры берутся обычно именно за такие проекты.

#51
12:37, 17 ноя 2022

i4ugui
> там еще сетка
Ты хотел написать секта?

#52
12:38, 17 ноя 2022

samrrr

Ты хотел написать секта?

Network, multiplayer = сетка.

#53
13:19, 17 ноя 2022

i4ugui
> Это сложнейшие проекты по функционалу как таковому
Фишка в том, что подобные рекомендации нужны как раз для сложных проектов.

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

#54
13:30, 17 ноя 2022

}:+()___ [Smile]
> Ни одна задумка не выдерживает столкновения с реальным миром без изменения,
Хз я обычно пишу код один раз, ну может два, если концепт кардинал но нужно поменять.

#55
14:47, 17 ноя 2022

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

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

#56
15:34, 17 ноя 2022

}:+()___ [Smile]

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

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

#57
15:36, 17 ноя 2022

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

#58
16:29, 17 ноя 2022

#!
> мне обычно приходится зачищать код написанный на скорую руку после того как
> доказана его работоспособность
Я заранее знаю что мой код будет работать. У меня же не ААА где есть 999 причин почему нельзя просто за час написать сотню строк.

#!
> тут должен быть троллфейс из твоей аватарки
Такой?
Изображение

#!
> переименовать практически всё в более понятное
Replace all существует, это не рефакторинг а просто позвать одну операцию и всё.

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

#!
> разгрузить заголовочные файлы чтобы там был самый минимум необходимого
Чё, IWYU для слабаков?

#!
> ввести более строгую типизацию (актуально для типов индексов чтобы не
> перепутать их между собой)
Если ты не чтишь Core Guidelines, то это только твои проблемы.

#!
> выкинуть неиспользуемое
То-есть ты пишешь код, который потом ненужен? Зачем?

Страницы: 1 2 3 4
ФлеймФорумРазработка игр