Этой статьёй я хотел бы начать цикл уроков, посвящённый простой процедурной генерации ландшафта.
Для кого это?
Эти алгоритмы вряд ли впечатлят уже бывалых программистов, однако начинающим в алгоритмике они могут прийтись по вкусу. Вы только освоили свой первый язык? Вы хотите писать алгоритмы, но не знаете, с чего начать? Вы хотите впечатлить свою маму? Если ваш ответ "да" - эти статьи для вас!
Что нам понадобится?
Большое желание, понятие алгоритмики на уровне восьмого класса, среда разработки Pascal Abc, минимальные знания этого языка.
Многих мой выбор может удивить, в связи с тем, что язык не особенно отличается мощью и функциональностью. Но в данной ситуации он подходит хорошо, и это обусловлено двумя факторами - высокой читаемостью кода и простотой в понимании менее опытными программистами.
Что будет в этом курсе?
Будут описаны несколько основных алгоритмов, которыми для генерации двумерного и трёхмерного ландшафта пользуюсь лично я. Они дадут вам базовое представление о том, как строятся алгоритмы подобного вида, а так же будут отличной почвой для ваших собственных наработок.
Как это будет выглядеть?
Уроки максимально сжаты, дабы не тратить символы на очередное объяснение того, почему пиксель квадратный, а строятся по схеме: алгоритм-краткое объяснение-некраткое объяснение-код примера. Те, кто сразу поняли краткое объяснения могут без промедлений преступить к делу, а те, кому требуется более подробно узнать про алгоритм, перед тем, как понять его, расширенное объяснение будет как нельзя кстати.
От себя хотелось бы добавить, что алгоритмика - это крайне простая но при этом очень интересная наука, а постигать её - одно удовольствие. Однако, те несколько алгоритмов, которые мы рассмотрим, являются неплохой основой, но хороший ландшафт не может строится исключительно на них.