Предыдущая часть: Карта в игре отображается вот так: Это просто набор плоских плиток. Но для придания "объёма" к некоторым стенкам и объектам пририсовываются тени. Обозначу их пока что схематически: Уже стало лучше. Такие тени можно назвать процедурными, потому что они вычисляются динамически для каждой плитки в зависимости от того, какие соcеди её окружают. А точнее, не окружают, а находятся слева, сверху и слева-сверху. Вот все возможные конфигурации: И в целом задача ясна: при рисовании плитки нужно посмотреть, в каких сочетаниях находятся три соседние плитки, и нарисовать соответствующую тень. У автора в оригинале для этой цели используются полупрозрачные битмапы в уже готовом виде, например: Я же буду рисовать тени процедурно, тем более что это ничем не будет отличаться от блиттинга битмапа, только без битмапа. Можно заметить, что угловая внутренняя тень состоит из вертикального и горизонтального сегмента, которые сами по себе тоже варианты тени. Так что возникает соблазн собират