Комментарии 17
Ну а в целом мне кажется проблема надумана. Если это кукуруза посаженна человеком, то повторяемость — норма. А если трава, то можно было бы ее вообще клочками, как в степи сделать, ну или разные модельки садить. Не совсем понятно, зачем нужны «равномерно распределенные без промежутков кактусы» или что это… картинку из игры б нормальную глянуть.
получить поле без дырок при обзоре вдальЗачем? Вблизи все равно дырки есть, так что хочешь — не хочешь, а что-там под травой рендерить все равно придется. На скриншотах это вообще не трава, а кактусы какие-то.
Если эти кактусы посажены человеков (в статье упоминается кукуруза), то ровно и с промежутками — это норма:
Если это дикие кактусы — то ненадо ничего заполнять ими равномерно… клочками (случайными группами) смотрелось бы намного естественнее:
Семплы для 8x msaa мне кажутся идеальными кандидатами:
А вот собственно сам паттерн я набросал в пеинте:
Можно сделать узор и поболее чем из 8 точек, 1024 как в статье. Точно не знаю как называется эта последовательность, Bayer Matrix, Hammersley Point Set, Van der Corput sequence, Bit-reversal permutation или ещё как-нибудь.
Можно посмотреть на получающиеся точки здесь:
http://holger.dammertz.org/stuff/notes_HammersleyOnHemisphere.html#subsec-hammersleyvisual
Хорошая штука, но мне кажется что не очень подходит для этой задачи.
Скрины, которые приведённые для случайных распределений выглядят визуально даже немного приятнее, чем то что у него в итоге получилось.
Если учесть, что к этому ещё должен быть прибавлен рельеф местности, камни и прочее… В реальности даже напротив проплешены очень часто наблюдаются, а поля полностью равномерно одной и той же травой редко встречаются крайне и то, часто даже они, во первых высажены рядами, во вторых имеют вкрапления сорняков и прочего. И да, даже в таких полях «проплешены» бывают.
Один из успешных разработчиков игр (кажется Дерек Ю) писал, что вообще не следует тратить время на то, что игрок никогда и не заметит (позитивный или негативный эффект, неважно).
Так автор и не скрывает сомнительную ценность собственно результата. Однако он, как мне показалось из текста, считает, что приобрёл ценный опыт.
Я, к примеру, сейчас учусь, и задача, заданная мне на дом с очень высокой вероятностью не будет использована в реальном продуктиве. Как есть — точно не будет. Всё ради опыта.
"Надо всю жизнь учиться" — это же не только про книжки почитать.
Точно так же не стоит ограничивать себя в обучении только тем, что точно будет использовано в текущей работе. Вот я учусь программированию на джаве, а работаю некромантом на Delphi 7. Мне не учиться джаве? Или мне не рефакторить проект и не использовать git потому, что пользователи не оценят? Пусть не ценят, а мне зато в кайф и на пользу. Под настроение и при возможности и просто "в кайф" засчитывается. Автор себе засчитал, молодец, пусть возьмёт с полки пирожок.
Про то, на что стоит тратить время — это очень сильно зависит от цели. Есть бизнес-правила создания игр, и есть бизнес-правила саморазвития. Они иногда могут не совпадать, и цели у разных людей разные. Каждому своё. Когда цели совпадают — можно примерить решение на себя. Когда цели разные — порадовался за человека и пошёл дальше, а не так, что "в интернете кто-то не я". Они все не "я", это нормально...
Но, как написано в статье, он один из программистов. То есть имеется команда, разделение задач, планы, сроки, дедлайны, возможно зарплаты.
И тут я начинаю разрываться на части:
1. С одной стороны разработчик молодец — проработал деталь окружения до того состояния «идеала», которое ему показалось достаточным. Приобрел ценный опыт. Улучшил общее качество игры, так как из мелочей все отношение к продукту и складывается. Написал интересную познавательную статью, которая к тому же позитивно повлияла и повлияет на PR игры.
2. С другой, он потратил время на то, что дополнительной ценности в игру приносит очень мало (мне так показалось, возможно это очень важно). А мог потратить это время на другие более важные задачи: оптимизация скорости работы; исправление ошибок; добавление новой сущности/механики в игру.
Я не знаком с этим проектом и его командой, но я слежу за некоторыми другими долгими разработками многообещающими проектами. И эти проекты просто тонут в подобных мелких улучшалках, так и не дойдя до релиза. В итоге у некоторых уже прошло 8 лет такой вялой разработки, и у многих в итоге все заканчивается еще печальнее: брошенный проект перегоревшего разработчика и разочарованные подписчики. Меня подобные финалы печалят и не хотелось бы видеть повторение этих историй от таких увлеченных людей, как автор статьи.
Но соглашусь с ранними комментариями: первоначальный вариант выглядит естественнее.
Проблема Небраски