Учусь программировать. Знакомлюсь в теорией поиска пути.

Nov 07, 2014 10:14

ч.2 Учусь программировать. Кубочанки
Наигравшись с кубочанками и освоив первый, пусть и простенький алгоритм, мне захотелось чего то большего. Границы моего незнания моментально расширились. Ведь чем больше знаешь - тем больше не знаешь )). Кубики это конечно прикольно, но разные формы намного круче. Мечтой стало создать нечто похожее из видео предыдущего поста. Перелопатив кучу форумов, понял, что нужно двигаться в сторону алгоритма "марширующих кубов". Но эта тема оказалась практически закрытой. В интернете масса статей на русском и английском, но как оказалось большая часть текста - это вода. Четкого описания нет практически нигде (в чем я убедился через несколько месяцев). Как ни пытался я разобраться в этой теме по найденным источникам толку не было никакого. Мой разум отказывался воспринимать информацию. Я заваливал форумы вопросами, но либо это тема оказалась либо закрытой, либо делиться наработками и наводками никто не желал. В основном были отписки на оффициальные источники и мануалы, в коотрых неискушенному программным кодом и алгоритмами мозгам легко заблудиться. Проколупавшись несколько дней в бесполезных попытках, я отложил это до лучших времен, ведь есть еще масса неизученных и интересных вещей.


Прошло около полутора месяцев моего знакомства с игровым движком и языком C#.
Середина лета, больше всего меня летом бесят комары. И тут возникал дикая мысль, а попробую-ка я забацать симулятор этого противного насекомого. Хех, я приступил к своей кривой реализации задуманного. Запилилв первоначальную логику управления насекомым, я столкнулся с тем, что нужны хотя бы примитивные модельки людей.
Сразу скажу, что модельщиков знакомых у меня нет, а качать готовые желания не было. Поэтому, отложив код, я открыл для себя бесплатную програмку по 3Д моделирования "Blender". Процесс изучения основ моделирования оказался весьма интересным и я даже не заметил, как пролетела почти неделя. Я моделил деревья, цветочки, бочки и другую уродскую дребедень, сделал даже небольшого динозаврика(правда без текстурок), которого чуть-чуть анимировал.


А дальше была тестовая моделька человечка (тоже без текстур), которую я слепил за пару тройку часов, движения которому прикрутил из готового пака Free анимаций движка.

Переместив эту модельку в сцену, я столкнулся с проблемой - необходимо не просто движение человечков, а нужно чтобы они как бы жили своей жизнью, ходили по тропинкам, дорогам, а комар бы летал и кусал их. Так же человечку нацепил кучу триггеров, для нескольких видов обнаружения персонажа-комара, а так же чтобы можно было присобачиваться к конкретной части тела человечка ))).

Так я пришел к так называемым WayPoints - точкам на местности по которым бы двигался персонаж. Первым вариантом - были простые кубики между которыми протягивалась невидимая линия, по которой двигался персонаж. Я расставил несколько таких тропинок и посмотрел, что же получилось.

image Click to view



Чтож челочечки зашагали по тропинкам, тот который бежит - бегает вокруг озера )).
Тогда я подумал, а почему не упростить и немного не автоматизироваться прцоесс растановки этих точек, и вообще сделать некий инструмент, который бы позволял быстро и удобно расставлять путевые точки на сцене.

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

Кому интересно можно почитать моя тема про создание инструмента путевых точек

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

На видео 300 физических объектов, которые двигаются по путевым точкам, произвольно выбирая себе дорогу - этакий симулятор траффика. Есть еще видео где 1000 нефизических объектов проделывают тоже самое. ТАк же его с легкостью можно передлать под "Башенки" или какие нибудь простенькие гонки.

image Click to view



Позднее я немного усовершенствовал код, позволив передвигаться и по сферическим объектам типа планеты.
Это был первый самодельный алгоритм-велосипед :)). Проект с комаром я забросил, поскольку модельщиков у меня нет знакомых, а сам я делаю фигурки как криворукая макака. Да и нет у меня желания делать что-то простое. Я все грезю мечтами о полностью изменямом мире.
Чтож начало положено...

ч.4 Учусь программировать. Настоящий поиск пути. А*.

алгоритмы, Учусь программировать, программирование, gamedev, unity3d

Previous post Next post
Up