![]() |
![]() |
Bokul |
![]()
Сообщение
#1
|
![]() Гуру ![]() ![]() ![]() ![]() ![]() Группа: Пользователи Сообщений: 1 117 Пол: Мужской Реальное имя: Богдан Репутация: ![]() ![]() ![]() |
Хочим работать... Давайте!
Иерархия - это скелет. От нее будет зависит быстрота и надежность дальнейшей разработки, по этому решил подключить всю команду. Сам пытался объединить свои идеи в логическую цепочку, но как видите... т.е. не видите результаты ![]() ![]() И-так, поехали! Пока моя картинка всего происходящего в логике игры таковая: Есть игровой мир, где протекает жизнь наших юнитов (дома тоже относятся к этой категории, надо подумать над оружием). У каждого з них есть свой интеллект - способ реагировать на событие, собирать информацию (сенсорные органы СО). Его мы обзовем Ai юнита. Он позволяет игроку и глобальному Ai (для игрового мира нету разницы между ними) не следить за каждым шагом их подопечных, а задавать более общие задания: патрулировать или охранять территорию или, даже просто, стоять, ведь при этом задействованы их органы чувств, постоянно собирающие и анализирующие информацию. Все эти разведданные направляются в очередь сообщений (структуры хранения данных на этом этапе не обсуждаем). В этих данных может храниться вся информация о юните, а также все что он воспринимает своими СО. Таким способ мы реализовываем односторонние средство общения между игровым миром и Ai с игроком, создавая вспомогательный транзитный уровень. Т.е. моя цель - поделить всю игру на логические уровни, что позволить каждому заниматься тем, что умеет, а в случае смены инструментов, локализовать изменения. 6 уровней 1 игровой мир ИМ: все что "живет", Ai юнитов 2 централизации информации о ИМ: различные структуры данных, с него снимают информацию уровень вывода и ИИ 3 ИИ 4 уровень вывода: монитор 5 уровень ввода: мышка, клава 6 уровень управления ()или уровень команд), чем-то похож на 2-ой, так как служит промежуточным между ИМ с ИИ и уровнем ввода Ну, пока вот... ![]() PS для тех, кто не в курсе - сайт Обреченных http://doomed-game.narod.ru/ Сообщение отредактировано: Bokul - 5.04.2007 7:44 -------------------- Лао-Цзы :
Знать много и не выставлять себя знающим есть нравственная высота. Знать мало и выставлять себя знающим есть болезнь. Только понимая эту болезнь, мы можем избавиться от нее. |
![]() ![]() |
Archon |
![]()
Сообщение
#2
|
![]() Профи ![]() ![]() ![]() ![]() Группа: Пользователи Сообщений: 618 Пол: Мужской Репутация: ![]() ![]() ![]() |
После обсуждения с Hardcase`ом система притерпела изменения. Во первых рекомендую прочитать статью об уровнях исскуственного интеллекта: http://pmg.org.ru/ai/ai_rt.htm.
Уровни World и Environment слились. Общие очереди команд были признаны ненужными. Теперь у каждого юнита есть своя очередь приказов. В последствии специальный обработчик (он включен в объект юнита), последовательно считывает эти приказы и вызывает соответствующие методы. 1 World. Включает в себя все внутриигровые объекты, карту, объекты на ней, юнитов, здания... 2 Game. Главный элемент. Отвечает за внутриигровую логику. В целом, все как в предыдущем посте. 3 Human/AI - можно, их, конечно, разделить... но с точки зрения Game, Human и AI идентичны. Human получает информацию из World, затем выводит ее на экран с помощью уровня Graphics. Также он реагирует на нажатия клавиш/движения мыши и дозаписывает юнитам/зданиям команды в их очереди приказов. AI действует аналогично, только информацию он не на экран выводит, а использует ее, чтобы выработать стратегию действия и отдать юнитам нужные приказы. 4 Graphics. Графический движок. Народ, включайтесь. Без обсуждения мы ничего не родим ![]() -------------------- Close the World...txeN eht nepO
|
![]() ![]() |
![]() |
Текстовая версия | 15.07.2025 1:59 |