Doom3.ru





















    •  Главная

  •  Doom3-форум   •  Прислать новости




  •  Doom3-info



  



  •  Doom3: RoE



  



  •  Статьи



  



  •  Quake4



  



  •  Quake Wars



  




Реклама




Качающаяся лампа

 12.03.2003  02:49  Автор: Whitefox

Перевод статьи опубликованной на сайте Doom3maps.de
Автор оригинала: Onan
Внимание! Автор перевода, лично, разработкой карт никогда не занимался, поэтому в в этом материале возможны некоторые неточности.



Введение

Наиболее впечатляющая новинка в Doom III - перемещающиеся источники света, например качающаяся лампа, которая создаёт эффектные динамические тени. Такими лампами можно легко улучшить свои первые карты, в которых наверняка найдутся подходящие для этого помещения. Если вы уже предпринимали попытки скопировать такую лампу в свою карту, но не понимаете, почему она после этого просто висит, то эта статья для вас. Здесь описано, как сделать так чтобы лампы раскачивались, т.е. вели себя как им полагается, а так же инструкции по копированию всех нужных компонентов ламп в вашу карту.

Как перенести лампу в вашу карту

Найти качающиеся лампы можно в нескольких местах в E3-картах. Одна из них висит в самом начале e3_1. Загрузите e3_1 в редактор, и переместитесь к первой двери. У вас на экране должно быть, что-то вроде этого:


Качающаяся лампа в редакторе

Скопируйте все, что отмечено маркером в вашу карту. Главный элемент здесь, это браш лампы, именно он будет качаться в игре. На нём вы видите прямоугольник с черной текстурой и белой границей. Это так называемая "вспышка"(flare), создаёт эффект лучей под лампой. Выше лампы небольшой черно-синий куб, это якорь(anchor), лампа будет качаться относительно него. Под лампой две пёстрые, чёрно-зелёные рамки. Это спикеры (speakers) - источники звука, один отвечает за гудение, другой за поскрипывание при раскачивании. Вокруг лампы расположено несколько источников света (белые восьмигранники), вы нуждаетесь только в одном из них, под названием basement_swinglight. Узнать имена элементов можно в "меню объектов" (окно Еntity)


Меню объектов

Вы должны выбрать (SHIFT + leftclick) все описанные элементы, вставить их в свою карту и переместить в то помещение где собственно должна находится раскачивающаяся лампа. Обратите внимание, что все элементы должны находится внутри комнаты, если якорь будет находиться за её пределами, вы получите сообщение об ошибке. Теперь сделаем deselect всем выделенным объектам (ESCAPE). Вместо копирования всего этого, вы можете использовать уже специально вырезанную заготовку лампы (prefab), которую можно скачать отсюда. Сохраните файл в директории base/prefabs. Теперь заготовку лампы можно загрузить в редакторе, выбрав в меню edit->load prefab

Настройка пути к файлу сценария

Движение лампы не определено в .map-file. Если заглянуть в каталог base/progs/e3 в нем для каждой карты вы найдете файл с окончанием .script, в котором и определяется движение лампы. Для своей карты вы можете просто использовать уже существующий файл. Единственное условие - нельзя переименовывать элементы лампы, потому что файл сценария адресует их по именам, которые эти элементы имеют на карте e3_1. Теперь определите в редакторе, что ваша карта должна использовать файл сценария e3_1. Для этого выделите на карте элемент worldspawn (любые стена-пол-потолок ограничивающие уровень) и откройте окно Еntity, в нижней части которого имеется два поля "key" и "value". В поле "key" пишите значение "script", а в поле "value" имя нужного скрипта, в нашем случае это "e3/e3_1.script". В центре, в белом окне, теперь должно отображаться script e3/e3_1.



Вот и всё, лампа должна качаться, как ей положено. Теперь запустите Doom (F2), введите в консоли "testmap имя_вашей_карты", а потом запустите вашу карту командой "map имя_вашей_карты".

Изменение параметров лампы.

Вы можете легко корректировать параметры движения лампы, изменять период раскачивания и его амплитуду, во всех трех осях. Для этого откройте с помощью текстового редактора файл e3_1.script в папке base/progs (не забудьте предварительно сделать резервную копию файла), и ищите следующую строку:

$basement_swinganchor1.sway( 2, 0, '20 10 0' );

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

Определение параметров лампы в вашем собственном script-файле

Если вам необходимо использовать свой собственный script-файл (например, если вы хотите использовать фрагменты из разных карт), создайте папку "my" (либо используйте любое другое название) в каталоге base/progs, далее, в этой папке создайте файл с расширением .script, например my.script, и запишите в него следующие строки:

void setup_objects()
{
$basement_swinglamp.bind( $basement_swinganchor1 );
$basement_flare.bind( $basement_swinganchor1 );
$basement_swinglight.bind ( $basement_swinglamp );
$basement_swinganchor1.sway( 2, 0, '0 20 20' );
}

void main()
{
setup_objects();
}


Эти строки все взяты из оригинала для карты e3_1, но они там несколько рассеяны по script-файлу. Теперь настройте путь к script-файлу для вашей карты, активируйте в редакторе worldspawn и как было описано выше, пропишите script my/my.script. Если Вы хотите использовать другие сценарии, просто копируйте их в ваш файл. Местоположение значения не имеет, единственное, не вставляйте их в существующие функции (все функции начинаются с "{" и заканчиваются "}").



Другие материалы рубрики:




Комментарии

#1  Путин В.В. (-----.107.102)   18:57  24.04.2003
Нуууууу э-э ситуацию поправим!!!!

#2  manser (-----.mos.ru)   21:58  06.05.2003
Это понятно
Нет конечно интересно, в смысле технологии все это смотреть, но это уже давно все известно, просто в одном движке реализовали, скорее всего для того чтобы потом долго потом ничего не выпускать, или быть предметом для тестеров (aka Quake III).
Поэтому вопрос оно пока надо, а если надо что мы хотим получить, при слабых компьютерах супер..., или при сильных отстой, так ЭТО всем чем отличался ID будет пучком, но и ему вопрос, а оно сегодня надо, а с другой стороны, а кто не работает на время

#3  Konfucij (-----.140.119)   23:50  01.06.2003
Mislia
Da blin ! POkazali by rolik a ne sranij redaktor,a to ne kazdij mozet tam razobrat`sia. A togda bi ocenil.

#4  FX (-----.sovam.com)   01:42  21.06.2003
А лампы и релизе будут бесконечно болтаться?

#5  War Now (-----.tmb.ru)   16:43  21.06.2003
Какие могут быть лампы с компьютером среднего геймера (Athlon 1700, GF3),обрубать весь графон придёться!

#6  FX (-----.sovam.com)   17:34  21.06.2003
DooM 3 - движок на вырост.

#7  TrixFix (-----.188.5)   00:05  10.07.2003
Cool "Клево"
DooM III клас я просто немому глаз оторвать !!!! если б эшчо не тормозило

#8  эксгуматор (-----.11.10)   14:54  10.07.2003
32 бита
Для современных карт лучше 32 бита поставить. И красивее и быстрее. По дефолтнику у Дума 16.
P.s. Анрыл 2 в дауне :)))

#9  dimok (-----.avtlg.ru)   22:57  18.08.2003
что за глюки с редактором
ни х... не хочет запускаться выводит какое-то:
idPacketServer::Kill: server thread not active
idRenderer::Shutdown()
Shutting down OpenGL subsystem
...wglMakeCurrent( NULL, NULL ): success
...deleting GL context: success
...releasing DC: success
...destroying window
...shutting down QGL
...unloading OpenGL DLL
==== Game Shutdown ====
==== Map Shutdown ====
Thread Shutdown
Clearing targets
-----------------------------------
Shutdown event system
-----------------------------------
wglUseFontBitmaps faileD

#10  Любитель Халфы (-----.edunet.ru)   17:16  28.08.2003
херня это все -
в сырую версию чо то впихнуть хотите
потерпите вот выйдет ХАЛФИК и поиграетесь!

#11  CybeRin (-----.104.38)   17:11  20.10.2003
Das ist
Ни хрена!... ск-ко тут гундосых идиотов!

#12  Dr_EviL (-----.online.kz)   16:23  29.02.2004
Не хрена потеть.
Лучше скажите дельную вещь - В чём и как рисовались текстуры (все четыре, да так ничтяково) для DooM3.

#13  Stalker (-----.194.82)   14:00  28.05.2005
Сенкью чувак, это то что мне надо. Напиши плиз как замутить собственные модельки оружия и что для этого нужно

#14  X-killer (-----.sakhalin.su)   00:40  01.10.2005
Moдели оружия
Насколько я понял DOOM 3 делали в Maye это такой пакет для трёхмерного моделиования на сайте IDSoftWare есть плагины и сами модели, но я еще не разобрался.
Уроки по Maya есть на www.render.ru и 3DCenter.ru

#15  TнE FoREVERror (-----.fiord.ru)   15:37  16.07.2007
Мда
И чё, мне надо искать этот e_1!? БЛИН!



Добавить комментарий
Имя - заполнять обязательно

Е-майл

Заголовок

Текст комментария - заполнять обязательно

Введите эти цифры в это поле.






Розовый





















Valuehost.Ru


Яндекс цитированияRambler's Top100Rambler's Top100
DOOM3 is a registered trademark of id'Software
Copyright 2002-2017 © Doom3.ru