|

Вы хотели эффектов? Их есть у меня! Послесловие для маньяков Q3Radiant
Xakep, номер #044, стр. 044-072-2
textures/leafs/fall_leaf_1
{
qer_editorimage textures/leafs/leaf.tga
surfaceparm nonsolid
surfaceparm trans
cull none
deformVertexes wave 30 sin 0 10 0 .2
nopicmip
{
map textures/leafs/leaf.tga
tcMod scale 2 2
blendFunc GL_ONE GL_ZERO
alphaFunc GE128
depthWrite
rgbGen identity
tcmod scroll 0 .25
}
{
map $lightmap
rgbGen identity
blendFunc GL_DST_COLOR GL_ZERO
depthFunc equal
}
}
Теперь тебе необходимо создать карту с деревом, от которого будет отваливаться листва. Ты можешь попробовать нарисовать что-то сам, но я рекомендую тебе воспользоваться заготовкой все того же Terry DeLaney (http://quake3.qeradiant.com/q3afiles/tutefiles/leaves.zip).
Когда все готово, ты можешь приступать к самому ответственному шагу - добавлению листопада в игру. Для этого возьми уже созданное или позаимствованное тобой дерево и создай вокруг него цилиндр высотой в 96 единиц и радиусом пропорционально краям кроны. Наложи на цилиндр текстуру с листвой fall_leaf_1.
Теперь, не снимая окрашивания, вызови Surface Inspector (S) и нажми (см. рис. 3) кнопку Natural.
Количество листьев увеличится, но постарайся сохранить чувство меры. Используя клавишу Fit, ты достигнешь лучшего эффекта. Теперь сохрани и откомпилируй уровень и любуйся (см. рис. 4) только что созданным шедевром непосредственно в игре.
Прозрачные объекты, или виртуальное решето
При моделировании сложных уровней тебе нередко придется сталкиваться с таким сложными объектами, как клетки, дырявые контейнеры или изрешеченные пулями двери. Чтобы зря не тратить драгоценные полигоны на создание сложных конструкций, ты можешь использовать полупрозрачные текстуры. Конечно, при создании подобных поверхностей тебе придется повозиться с альфа-каналом (см. выше), но это уже тема для отдельного урока. Итак, приступим. Для начала тебе необходимо заставить редактор понять, что твой шадер именно прозрачный и никак иначе. Так как редактор не понимает человеческого языка, то придется прибегнуть к простому скрипту, позаимствованному из официального набора Quake 3: Arena. Скрипт для шедера base_trim/proto_fence выглядит следующим образом:
textures/base_trim/proto_fence
{
surfaceparm trans
cull none
nopicmip
{
map textures/base_trim/proto_fence.tga
tcMod scale 3 3
blendFunc GL_ONE GL_ZERO
alphaFunc GE128
depthWrite
rgbGen identity
}
{
map $lightmap
rgbGen identity
blendFunc GL_DST_COLOR GL_ZERO
Назад на стр. 044-072-1 Содержание Вперед на стр. 044-072-3
|