Сообщение: 1084
Зарегистрирован: 04.01.08
Откуда: Челябинская область, Стерлитамак
Репутация:
5
Отправлено: 09.04.08 02:24. Заголовок: Делаем свои Decals (деколи)
В данном примере это будет отсвет (гало, блик, glow) от фонаря (лампы).
Будем делать простой, неанимированый decal
Сначала нарисуем непосредственно сам decal 1024*1024 Внимание! "рисунок" должен быть абсолютно на чёрном фоне и иметь соотношение сторон 4*4! Вот пример:
------------------------------------------------------------------------ Кроме того, деколь изготавливается с применением так называемого альфа-канала. Вот как делается альфа канал (смотрим пошагово на рисунках-объяснениях) :
1.
2.
3.
4.
5.
6.
7.
1. Сохраняем нашу деколь в формате *dds в папку files\gamecore\decals\mydecal\decal.dds
2. В эту же папку кладём текстовый файл decalspec со след. содержимым:
;decal spec
;DECAL across = 4 down = 4 offsety = 0 scale = 100
3. Идём files\entity bank\generic\decals\ И создаём в ней (блокнотом) файл *fpe со следующим содержимым:
;header desc = Mydecal
;ai aiinit = appear1.fpi aimain = decal.fpi aidestroy = disappear1.fpi Примечания: скрипты fpi можно назначать на Ваше усмотрение, в зависимости от задач.
;orientation model = particles.x textured = particles_d.tga transparency = 0 defaultheight = 0.5 soundset = здесь обращение к звуку (если нужен)
Надо нарисовать несколько деколей в продолжение. А потом уже писать такой скрипт, который проиграет их одну за другой!! Единственное, что будет сложно (кроме самого скрипта), - это точно поставить несколько деколей на одно место.
Сообщение: 2998
Зарегистрирован: 04.01.08
Откуда: РФ, Мурманск, Заполярный
Репутация:
17
Отправлено: 17.09.08 13:39. Заголовок: Evil Genius ??? Что ..
Evil Genius ??? Что такое "зя"? )) Хм... инересно, а можно написать такой скрипт, который проиграет их одну за другой..?. И где он будет находится тогда... мда... ничего больше что-то не могу придумать. И ещё про персов так и не решили... к чему там действительно 2 деколи? И как они проигрываются. Враз что ли?...
короче забудь всё, что я там напостил, нужно сделать скрипт, но как пока не придумал, надо ставить несколько деколей на одном месте, и поочерёдно их проигрывать Оффтоп: "зя" значит "можно"
Сообщение: 3046
Зарегистрирован: 04.01.08
Откуда: РФ, Ухта, Красноярский край
Репутация:
17
Отправлено: 20.09.08 12:18. Заголовок: Evil Genius Во на вы..
Evil Genius Во на выдумки горазд русский народ)) Вот об этом я не подумал) Интересно, может, опишешь процесс, как это энтитей сделать, а то я что-то до конца не могу себе это представить.
Evil Genius т.е., получается, что скрипт деколи мы прописываем в fpe энтити, а там по активации (метод убил - родил следующую)? И энтитя что ли тогда прозрачная должна быть)?
Evil Genius Блин, заинтриговал! Ладно, жду описания! )) А что, простыми деколями так и не получилось? Кстати, всю ночь штудировал англоязычный форум и нашёл что: деколь ограничена только 16 кадрами.
textured = путь к прозрачной текстуре effect = castshadow = 0
;decals decalmax = 1 decal0 = имя деколи
делаем таких файлов несколько, с разными именами(имя также меняем в строчке desc =имя ) и деколями ставим в креатор и назначаем первой деколи(кот. проиграеться самой первой) етот скрипт Показать скрытый текст
и в поле "если использован" пишем название первой деколи(если надо поставить ещё деколий, то тоже с етим скриптом, и также вводим названия) чтобы все деколи проигрались один раз, просто в последней декольке ничего не пишем в строке "если использован" И обязательно выставить в строчке "активен всегда - ДА" ВСЕХ деколей
Но ведь это же полигональные коллизии! А как же проходить тогда, например, через деколь огня или дыма?! Кстати, ты не проверял, деколь-то хоть вертится вслед за главным героем?
Evil Genius А, ну точно, я баран, я ж забыл, что модель-то динамической же надо делать... А текстуру деколи динамическая модель не подсвечивает ярко? (как текстуры на динамических предметах) p.s. Мы с тобой вдвоём в этой теме))
Сообщение: 3068
Зарегистрирован: 04.01.08
Откуда: РФ, Ухта, Красноярский край
Репутация:
17
Отправлено: 21.09.08 16:07. Заголовок: Evil Genius это хрен..
Evil Genius это хреново... Ну ничего, я может, сегодня перед сном потестирую твой способ, потом отпишу. Правда, ты уже спать будешь и прочитаешь только утром уже...
Кстати, вот это зачем в скрипте деколи? Почему именно 300? Или деколь у всех играет за одно и то же постоянное время?
Короче, стал пробовать, тестить по твоему примеру. Так вот: деколь у меня стала видна только тогда, когда я в модели в main прописал путь до скрипта decal. Вот только тогда деколь за показывалась. А так я её просто не видел. Кроме того, звука, который прописан в деколи - нет. В рядом стоящей деколи без модели - звук играет. Не знаю, не будет ли косяков, если назначить звуки в скрипт самой модели... но... Может и не придётся, потому что, костёр, например, слыхать по всему уровню при прописки звука в деколи. А вот если звуковой зоной, то звук тогда пропадает, если ты из неё выходишь. Но есть и хорошая новость - деколь в модели - не ярче! Т.е. совершенно обычным, как и положено ей освещением и цветом. А это радует! Я ставил модель с деколью и рядом саму деколь и сравнивал - разницы нет! И это классно. Сейчас пойду, нарисую огонь деколей на 5)) Чтобы было интереснее и легче экспериментить. Мы на верном пути, я думаю! Это будет классное достижение, если мы научимся это делать и научим остальных!
Отправлено: 20.01.09 17:41. Заголовок: Вот и у меня руки до..
Вот и у меня руки дошли до декалей. И вот сразу же вопрос: у меня декаль при проверке дёргается как в судорогах я думаю это из-за неравного расстояния между кадрами и стенками. Как вы расстояние так точно отмеряете? Я тупой , я делаю так: беру декаль (один кадр) 256х256 добавляю в Pattern а затем заливаю им картинку 1024х1024...и всё равно...
Вот, смотри. Например у нас деколь огня (больше чем 16 кадров. Например 64 кадра нам нужно чтобы проиграть деколь. Получается из 64 кадров получатся 4 деколи с 16-ю кажрами) Берём 1-ую деколь с 16-ю кадрами, так? В скрипте указываем, чтобы она проигралась 1 раз, за сколько ты говорил времени деколь проигрывается? 0.1 секунда? Следовательно вторую деколь ставим на таймер 0.1 секунд (timergreater=100) и после этого запускается следущаю деколь, со следущими 16-ю кадрами. Также она проигрывается один раз. Аналогично с 3-ей и 4-ой деколью тоже самое. 3-ю деколь ставим тоже на таймер, но только не 0.1 секунд, а на 0.2. Понимаешь почему? БЛин объяснить как-то не получается. Надо на видео это как-нибудь показать.
Вообщем, сделай деколь из 64 кадров. Т.е. теже кадры только их нужно разделить на 4 деколи т.е по 16. Например в первой деколи первые 16 кадров от тех 64-х, затем вторые 16 кадров от тех 64-х. (16-32) и т.д., а я постараюсь детально показать на видео.
Все даты в формате GMT
5 час. Хитов сегодня: 2
Права: смайлы да, картинки да, шрифты нет, голосования нет
аватары да, автозамена ссылок вкл, премодерация вкл, правка нет