Pull to refresh
22
0

Software developer

Send message

Лабиринты: классификация, генерирование, поиск решений

Reading time44 min
Views81K

В этом классическом посте подробно рассказывается о самых популярных способах создания и прохождения лабиринтов. Статья разделена на четыре части: классификация, алгоритмы генерации, алгоритмы решения лабиринтов и другие операции с лабиринтами.

Классификация лабиринтов


Лабиринты в целом (а значит, и алгоритмы для их создания) можно разбить по семи различным классификациям: размерности, гиперразмерности, топологии, тесселяции, маршрутизации, текстуре и приоритету. Лабиринт может использовать по одному элементу из каждого класса в любом сочетании.
Читать дальше →
Total votes 82: ↑82 and ↓0+82
Comments13

Классические алгоритмы генерации лабиринтов. Часть 2: погружение в случайность

Reading time12 min
Views31K


Предисловие


Первая часть

Итак. Оценив отклик аудитории Хабра и разобравшись с делами, я принялся за написание второй статьи из цикла. Реакция публики оказалась значительно позитивнее моих предположений, а значит, мы продолжаем разговор на одну из любопытнейших тем процедурной генерации – создание лабиринтов.

В этой части мы поговорим о том, что же такое случайная и псевдослучайная генерации, какие алгоритмы могут дать нам равновероятно ничем не похожие друг на друга лабиринты и в чем их минусы. Героями нашего сегодняшнего приключения станут алгоритм Уилсона и алгоритм Олдоса-Бродера для создания случайного остовного дерева (Uniform Spanning Tree). ОСТОРОЖНО ТРАФИК.
Читать дальше →
Total votes 47: ↑47 and ↓0+47
Comments25

Разработка Unity плагинов для iOS и Android

Reading time23 min
Views4K
Есть куча ситуаций когда одной Unity недостаточно и нужно использовать возможности платформы. Банально, но до сих пор, в Unity нет работы с галерей и камерой из коробки. Понятно, что Unity не ограничивается мобильными платформами, но 60-70% всех мобильных игр, как бы говорят:

image
Читать дальше →
Total votes 9: ↑9 and ↓0+9
Comments5

Простое объяснение симуляции жидкости в реальном времени

Reading time28 min
Views14K
image

Эта статья представляет собой простой и интуитивно понятный разбор симуляции жидкостей для программистов и технических художников. Вместо сложных математических выражений я постараюсь дать вам простое геометрическое понимание физики жидкостей. Реализация выполнена на вычислительных шейдерах Unity 3D, однако общие идеи не привязаны к конкретным технологиям.

Код проекта можно найти на моём Github.


Ресурсы, посвящённые симуляции жидкостей, могут быть очень пугающими. Помню, что когда я впервые прочитал статью о ней и увидел уравнения Навье-Стокса, то был в ужасе. Со временем я понял, что сама тема совершенно не сложна. На самом деле, если бы вам дали задачу написать собственный симулятор жидкостей, то вы, вероятно, написали бы что-то подобное на основании интуитивного понимания работы жидкостей. Если, посмотрев на уравнения Навье-Стокса, вы подумали «ага, понятно», то вы, возможно, быстрее бы реализовали симуляцию жидкости, прочитав работы, перечисленные в конце этой статьи. Я же попытаюсь не использовать сжатое выражение и объяснять всё как можно медленнее.
Читать дальше →
Total votes 45: ↑45 and ↓0+45
Comments8

Свой CI/CD для Unity

Reading time5 min
Views9.3K
image

Сейчас я расскажу, как выглядит процесс разработки на Unity в маленькой gamedev компании и как мы его улучшаем и автоматизируем. Всё-таки 2020 год на дворе, хватит уже мышкой водить…
Читать дальше →
Total votes 7: ↑7 and ↓0+7
Comments5

Ник Бостром: Живем ли мы в компьютерной симуляции (2001)

Reading time30 min
Views52K
Я собираю все самые важные тексты всех времен и народов, влияющие на мировоззрение и формирование картины мира («Онтол»). И вот тут подумал-подумал и выдвигаю дерзкую гипотезу, что этот текст более революционный и важный в нашем представлении об устройстве мира, чем коперниканская революция и работы Канта. В рунете этот текст (полная версия) находился в ужасном состоянии, я его немного причесал и, с разрешения переводчика, публикую для обсуждения.

image

“Are you living in a computer simulation?”


by Nick Bostrom [Published in Philosophical Quarterly (2003) Vol. 53, No. 211, pp. 243-255. (First version: 2001)]

В данной статье утверждается, что по крайней мере одно из трёх следующих предположений является истинным:

  • (1) весьма вероятно, что человечество вымрет до того, как достигнет «постчеловеческой» фазы;
  • (2) каждая постчеловеческая цивилизация с крайне малой вероятностью будет запускать значительное число симуляций своей эволюционной истории (или ее вариантов) и
  • (3) мы почти определенно живём в компьютерной симуляции.

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

1.Введение


Многие произведения научной фантастики, а также прогнозы серьёзных футурологов и исследователей технологий предсказывают, что в будущем будут доступны колоссальные объёмы вычислительных мощностей. Предположим, что эти предсказания верны. Например, последующие поколения со своими сверхмощными компьютерами смогут запускать детальные симуляции своих предшественников или людей, подобных своим предшественникам. Поскольку их компьютеры будут настолько сильны, они смогут запускать много подобных симуляций.
Читать дальше →
Total votes 22: ↑17 and ↓5+12
Comments213

Автоматизируем сборку iOS приложений с помощью Fastlane

Reading time6 min
Views43K

Как часто нам, iOS разработчикам, приходится собирать приложение для загрузки в iTunes Connect App Store Connect? В процессе этапа активного бета-тестирования приложения нужно оперативно фиксить баги и поставлять обновленную сборку для тестирования. А также необходимо скачивать сертификаты, Provision profiles, прокликивать много разных галочек и кнопочек при каждой выкладке нового билда.


К счастью, есть такой замечательный инструмент, как fastlane, который помогает нам автоматизировать ручные действия мобильного разработчика.


В этом посте я расскажу: что такое fastlane и как быстро начать его использовать в своих iOS проектах.

Читать дальше →
Total votes 11: ↑11 and ↓0+11
Comments10

Information

Rating
Does not participate
Location
Санкт-Петербург, Санкт-Петербург и область, Россия
Registered
Activity