Канал в IRC
RusNet: #cmt
Учебник по созданию карт
Глава XI. Стекла.

§ 11.2 Стекло прозрачное только с одной стороны

В этой статье мы расскажем как можно создать стекло прозрачное с одной стороны и непрозрачное с другой. Статья взята с сайта http://countermap.counter-strike.net/Tutorials. Благодарим автора: Waldo.

В итоге у нас получится следующее:

Стекло прозрачное с одной стороны и непрозрачное с другой


На картинке Вы видите два стекла. Они изготовлены по схожей технологии, однако левое можно разбить, а правое нет (о разбиваемом одностороннем стекле Вы можете прочитать в следующей статье Учебника). А пока что займемся изготовлением неразбиваемого стекла.

Все довольно просто. Создадим в нужном месте браш - будущее стекло - и закрасим его с одной стороны текстурой GLASSGREEN (или любой другой подходящей для стекла), а с противоположной стороны - текстурой {BLUE (см. рис. ниже).

Текстура GLASSGREEN с одной стороны и {BLUE с противоположной


Теперь превратим этот браш в func_wall и выставим следующие свойства (сюрприз, сюрприз :)

Render Mode - Solid;
FX Amount - 255

Вам ничего не напоминают такие свойства? Правильно, именно такие свойства мы выставляем для всех прозрачных решеток, заборов, лестниц и прочих подобных объектов с синими частями. Ведь синие части в игре будут прозрачными. А это означает, что сторона стекла с текстурой {BLUE будет абсолютно прозрачной, а противоположная, которая с текстурой GLASSGREEN - полностью непрозрачной (при тех же свойствах).

Итак, полдела сделано. Почему только полдела? А вот почему. Согласитесь, что будет довольно странно видеть непрозрачное стекло с одной стороны и не видеть ничего с другой (ведь синяя часть будет вообще прозрачной, как-будто стекла там и нет). Нехорошо.

А решается данная проблема очень просто. Необходимо создать обычное стекло func_wall (точно таких же размеров, как и первое), закрасить его на этот раз уже со всех сторон текстурой GLASSGREEN и выставить следующие свойства:

Render Mode - Texture;
FX Amount - 70 (это прозрачность стекла, значения от 0 до 255)

Второе стекло func_wall с текстурой GLASSGREEN размещаем вплотную к первому стеклу с текстурой {BLUE


Размещаем второе стекло вплотную к первому, к той стороне, которая покрашена текстурой {BLUE. Теперь игрок будет смотреть через это второе стекло, которое имеет прозрачность 70, и прекрасно будет видеть все, что находится за ним (в нашем случае заложника, см. самую первую картинку). Подойдя же к стеклу с другой стороны, игрок ничего не увидит. Трюк работает!

Если все же не понятно как именно размещать второе стекло, вот картинка с видом сверху. Два фиолетовых прямоугольничка - это и есть два наших стекла.

Вид сверху. Второе стекло размещаем вплотную к первому стеклу с текстурой {BLUE


Ну, а в каких местах применять такое стекло решать Вам. Можно разместить его в месте, где нужно дать возможность покемперить одной из команд, например, террористам, защищающим комнату с заложниками и т.п.

В нашей следующей статье мы расскажем как сделать точно такой же трюк, но только с разбиваемыми стеклами. Да, конечно, мы будем использовать вместо func_wall - func_breakable, но это еще не все. Есть еще небольшая хитрость.


Ссылки

oneway_glass.zip [15Кб] — в архиве карта-пример в форматах BSP и RMF.


Глава XI. Стекла.


К оглавлению Учебника

© http://cs-mapper.by.ru/
CMT (CS Mapping Tutorials) - © 2006-2011. Created by VM
[ Script Execution time: 0.0031 ]