Электронные рыбы в компьютерном аквариуме

Рубрика:

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

Совершеннейшая человеческая мысль лежит в основе каждого движения, каждого элемента поведения живых организмов, будь то рыбы, беспозвоночные или растения. Рыбы могут нереститься, а получаемое потомство генерируется самим компьютером по известным и оригинальным алгоритмам, созданным нашими соотечественниками. Помимо работы по "гибридизации" и размножению рыб любитель в считанные минуты может смоделировать любые комбинации подводного мира исходя из имеющихся в памяти компьютера вариантов грунта, растительности и других элементов внутреннего ycтройства аквариума.

Компьютерный продукт El-Fish в версии на английском языке уже выпущен и успешно продается на американском и европейском рынках. К сожалению, пользоваться этим электронным аквариумом может лишь владелец сравнительно мощного и быстродействующего компьютера 386,486, а чтобы сгенерировать рыбу на компьютере 286, понадобится 6-8 часов. Тем не менее надеюсь, что читателей заинтересует статья и сама компьютерная игра El-Fish.

С.Кочетов


В апреле 1993 года на рынке компьютерных игр в США и Европе появляется новый продукт El-Fish (электронная рыба), созданный российской компанией "Аниматек". В США El-Fish выпускается американской компанией "Maxis", в Европе - английской компанией "Mindscape".

Этот продукт относится к разряду игр, получивших название toy (игрушка), то есть таких игр, которые не ставят перед пользователем задачу достижения какихлибо количественных результатов, а служат для развлечения, получения эстетического удовольствия.

Основной замысел El-Fish дать возможность пользователю почувствовать себя в роли любителя-аквариумиста. Конечная цель состоит в том, чтобы вывести красивых, отвечающих его индивидуальному вкусу рыб, создать наиболее подходящий для этих рыб дизайн аквари ума. Далее El-Fish автоматически анимирует (оживляет) объекты в аквариуме, и на экране компьютера возникает картина, очень похожая на настоящий аквариум с плавающими рыбами, движущимися рачками, водорослями, камнями, кораллами и т. д. В отличие от реальной жизни в компьютере нет ограничений на количество и разнообразие рыб, декоративных элементов, самих аквариумов.

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

Редактор аквариумов, являющийся частью продукта, позволяет создать практически любой интерьер, подобрать музыку. При этом можно использовать фотографии и слайды реальных объектов, чтобы наши аквариумы были максимально схожи с настоящими домашними водоемами.

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

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

Для создания соответствующих алгоритмов в "Аниматеке" был собран коллектив высококвалифицированных специалистов по многим отраслям знаний. В результате примерно трехлетней работы ими были разработаны все необходимые составные части El-Fish, который признан одним из наиболее сложных и интересных продуктов компьютерных игр (в 1993 году попал в десятку лучших игр в США).

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

Обычно пользователь El-Fish начинает с ловли рыб. Вы забрасываете удочку в озеро и вылавливаете первых жителей своего будущего аквариума. Как правило, эти рыбы не отличаются изысканностью форм и яркостью окраски. По своему внешнему виду они напоминают "обычную" в общем представлении рыбу.

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

В нервом случае в качестве отправной точки выбирается рыба, которая чем-то (формой тела, плавников, расцветкой и т.п.) нравится вам. После того как определен "прародитель", запускается процесс эволюции, и через некоторое время перед вами появляются восемнадцать потомков. Для получения большего разнообразия потомков можно задавать "степень схожести" с "прародителем" по форме и цвету, то есть варьировать при фиксированной форме расцветку или при фиксированной расцветке - форму рыб; можно менять и то, и другое. Если какая-то из появившихся рыб вас заинтересовала, вы сохраняете ее и продолжаете процесс эволюции. Особенно понравившуюся рыбу вы можете снова использовать в качестве "прародителя", продолжая процесс до тех пор, пока не получите рыб, отвечающих вашим требованиям.

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

Получив рыб, достойных населять ваш аквариум, надо научить их плавать. Для этого необходимо сгенерировать 220-230 изображений. характеризующих различные положения рыбы при поворотах, подъемах и т.п., с учетом изменения освещенности различных участков тела рыбы, правильности его деформации в процессе движения.

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

Итак, интересующая вас рыба выведена, анимирована и вы переходите к работе в аквариуме. Для создания или изменения интерьера можете выбрать грунт из предоставляемого вам каталога (около 50 образцов), задник (около 50 различных типов). Теперь надо посадить растения (фиксированные в предоставляемой базе данных или сгенерированные из числа эталонных типов). Кроме того, в аквариум можно поместить камни, ракушки, коряги и т.д. Широкий набор таких объектов также представлен в соответствующих базах данных. Редактор интерьера аквариума позволит вам убрать лишние объекты, изменить расположение тех. которые вам нужны, закрепить за аквариумом музыку, под которую будет происходить просмотр (встроенный генератор музыки дает возможность это сделать).

И наконец, приступаем к заселению аквариума. В него можно помещать ранее анимированных рыб и других обитателей.

Если вас не удовлетворяет прилагаемый набор объектов для дизайна аквариума. вы сами можете сделать любой объект, нарисовав его в графическом редакторе типа Paiтt Brush или отсканировав слайд, фотографию. Программы, поставляемые вместе с El-Fish. конвертируют эти объекты в доступный для El-Fish формат.