Месячный архив: Ноябрь 2014

Генерация лабиринта и его прохождение

В предыдущей статье я описал метод генерации лабиринтов из связанных комнат разных размеров. На этот раз мы  разберём другой способ генерации лабиринтов, в котором лабиринты будут получаться классической формы. Кроме того, я расскажу о том, как находить самый короткий путь между любыми двумя точками лабиринта.

(далее…)

Генератор уровней

Я решил что следующую игру буду делать с генерируемыми уровнями и сделал некоторые наброски алгоритма для рандомной генерации лабиринтов из связанных комнат разных размеров. Процесс генерации выглядит следующим образом:

Сам алгоритм проще описать картинками нежели кодом:

(далее…)

Многомерные динамические массивы и многомерные векторы

Решил написать для себя маленькую шпаргалку по созданию двухмерного и трёхмерного динамического массива и таких же многомерных векторов (STL vector), но понял, что она будет полезна не только мне, поэтому я решил поделиться ей с вами :)

Двухмерный вектор

#include <vector>
using std::vector;

#define HEIGHT 5
#define WIDTH 3

int main() {
  vector<vector<double> > array2D;

  // Устанавливаем размерность (HEIGHT x WIDTH)
  array2D.resize(HEIGHT);
  for (int i = 0; i < HEIGHT; ++i)
      array2D[i].resize(WIDTH);

  // Помещаем некоторые значения
  array2D[1][2] = 6.0;
  array2D[3][1] = 5.5;

  return 0;
}

(далее…)