Как сделать свой 3д шутер от первого лица Главный форум о конструкторе игр FPS Creator Создай свою игру БЕЗ опыта в программировании
АвторСообщение



Сообщение: 1077
Зарегистрирован: 03.07.08
Откуда: Украина, Ровно
Репутация: 14
ссылка на сообщение  Отправлено: 07.04.09 13:19. Заголовок: Создаем большой взрыв


Думаю, ты со мной согласишься, что ломать – не строить. И гораздо веселей в какой-то момент прохождения подорвать весь уровень к чертовой бабушке и носиться по дотлевающим остаткам зданий, чем скучать без этого, + это обязательный элемент любого боевика. Итак, как же нам устроить огромный взрыв?

Сражу сразу: для создания красивого взрыва одним скриптом не обойдешься. Еще нужно создать подходящую деколь, и даже не одну, а несколько штук. Также нам понадобится собственно детонатор, в роли которого можно взять любой компонент.


Этап 1.Создание детонатора.


Я объясню ситуацию, как сделать детонатор невидимым, ведь возможен вариант, что взрыв происходит просто в воздухе (с видимым проще и не так интересно). Упростим себе задачу и возьмем бочку. Поставим ее в эпицентре будущего взрыва.



Какие настройки нужны бочке? Открывай правой кнопкой настройки и смотри: Static Mode – обязательно No, Spawn at start – Yes (не страшно, мы сделаем такой скрипт, что игрок не будет замечать ее присутствия с начала игры), Strenght – неважно, лишь бы не ноль (при нуле бочка бессметрная), раздел настроек Physics очень важен, в нем, где только возможно, изменяем значения параметров на Yes, Physics Weight и Physics Friction ставим побольше, в несколько тысяч, Physics Force Damage и Explode Damage – процентные значения, поэтому их вписываем как 100.
Текстуру для объекта нужно сделать альфаканалом, то есть прозрачной. На форуме обсуждалось как сделать такую текстуру, но повторюсь, что, открыв Paint.NET, нажимаем комбинацию Ctrl-A и Del, затем Ctrl-S, указываем .dds, в настройках DXT-3, и в конце имени текстуры нужно дописать _D2 (пример: alpha_d2.dds).
Путь к текстуре прописываем в поле Texture наших настроек.

Этап 2.Создание деколей взрыва.

В паках достаточно нужных деколей, но они все недостаточно большого размера. Поэтому мы возьмем существующие деколи и поменяем им их масштаб.
Нам нужны три деколи: 1-собственно взрыв, 2-огонь, который остается после него, 3-дым от огня.
Добавим их с центром в эпицентре взрыва. Более красиво и правильнее будет, если деколи будут фиксированные, собственно, в скрипте мы это оговорим. Так, что сразу рассчитывай, если не хочешь, чтобы у тебя огонь вопреки всем законам физики горел горизонтально, то направляй синие стрелки вверх, зеленые в предполагаемое место нахождения игрока в момент взрыва, ну а красные – уж куда останется (можешь попробовать их изогнуть в любимую сторону, если выйдет


Этап 3.Создание скриптов.

Теперь самое сложное – правильные скрипты. Нам нужны будут три штуки – один для деколи взрыва, еще один для деколей огня и дыма. Ах, да, и еще для компонента, который выступает детонатором.
Вот примеры скриптов, которые я набросал. Можешь их немного поправить или дополнить.
Первый скрипт (первая строка запускает таймер, вторая через 5 секунд (timergreater=5000) включает деколь взрыва и ее звук, третья убивает ГГ, если он находится в точке взрыва):
Показать скрытый текст

Второй скрипт (похожий на первый, вторая строка чуть больше, чем через 5 секунд (timergreater=5200) начинает проигрывать деколь взрыва и ее звук (в отличие от первого скрипта, где взрыв единоразовый), третья ежесекундно забирает хитпоинты у ГГ, если он находится в зоне огня):
Показать скрытый текст


Третий скрипт (первая строка отключает возможные столкновения игрока с детонатором, вторая через 5 секунд (timergreater=5000) уничтожает бочку, чем провоцирует взрыв):
Показать скрытый текст




Опять же, условия можно сделать разнообразные, просто всего лишь заменив строку timergreater=5000 во всех скриптах на необходимую. Взрыв через 5 секунд после запуска уровня сделан просто для демонстрации.
Скрипты ставим деколям и детонатору в поле Main.

Для создания красивого эффекта сделай динамические компоненты, которые будут находится вокруг взрыва, более легкими – пусть они разлетятся во все стороны куда подальше…

Еще можно сделать воронку, тогда просто при расположении сегментов оставь яму под будущим взрывом и закрой ее какой-нибудь динамической ентитей со скриптом, что мы ставим детонатору (доской, например, хотя можно просто однополигональной текстурой пола) - при взрыве она исчезнет и мы увидим дыру (чтобы она не была квадратной, можна использовать наклонные мешы из romhub pack.

Хотя написано довольно мнго, это просто расписано подробно, на самом деле мы ставим бочку, ставим три деколи и всм им ставим нужные скрипты. Все!

У тебя нет деколей взрыва? Тебе сюда:
Обсуждение декольпака, где есть анимация взрывов
Создание своих деколей

У тебя нет наклонных мешей для воронки?
Тема про romhub

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


Демонстрация скрипта

Пример деколей и детонатора (те, что на видео)



Жизнь дается один раз. И прожить ее нужно так, чтобы наверху обалдели и сказали: "Ну-ка, повтори!"

Небылицы нашим внукам мы будем расказывать о призраке диска B:\


Спасибо: 2 
ПрофильЦитата Ответить
Ответов - 5 [только новые]





Сообщение: 58
Зарегистрирован: 14.03.09
Репутация: 0
ссылка на сообщение  Отправлено: 07.04.09 13:59. Заголовок: круто выглядит!..


круто выглядит!

Спасибо: 0 
ПрофильЦитата Ответить



Сообщение: 382
Настроение: Наконец-то кончается этот бардак.
Зарегистрирован: 28.01.08
Репутация: 5
ссылка на сообщение  Отправлено: 09.04.09 11:22. Заголовок: Ну все... Тема почищ..


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

Если долго мучиться - что-нибудь сломается. Спасибо: 0 
ПрофильЦитата Ответить



Сообщение: 2514
Настроение: Среднестатическое
Зарегистрирован: 25.06.08
Откуда: Республика Башкортостан, Салават
Репутация: 24
ссылка на сообщение  Отправлено: 09.04.09 14:47. Заголовок: warr11r пишет: forc..


warr11r пишет:

 цитата:
forcebounce=50


Что это команда делает?
warr11r пишет:

 цитата:
starttimer


И это шо за команда? Разве не timerstart?


Спасибо: 0 
ПрофильЦитата Ответить



Сообщение: 1120
Зарегистрирован: 03.07.08
Откуда: Украина, Ровно
Репутация: 14
ссылка на сообщение  Отправлено: 09.04.09 16:02. Заголовок: Никита пишет: warr1..


Никита пишет:

 цитата:
warr11r пишет:

цитата:
forcebounce=50


Что это команда делает?



Вроде как усиляет эффект triggerforce=100

Никита пишет:

 цитата:
warr11r пишет:

цитата:
starttimer


И это шо за команда? Разве не timerstart?



Это новая модная вариация. Улучшенный таймер
На самом деле таймер глобальный. Это мусор остался. Сейчас приберусь.

Жизнь дается один раз. И прожить ее нужно так, чтобы наверху обалдели и сказали: "Ну-ка, повтори!"

Небылицы нашим внукам мы будем расказывать о призраке диска B:\

Я Вова. Это ведь короче Варр-ван-ванра.


Спасибо: 1 
ПрофильЦитата Ответить



Сообщение: 14
Настроение: Хачу молель пак 20-23!
Зарегистрирован: 18.04.09
Репутация: 0
ссылка на сообщение  Отправлено: 23.04.09 05:58. Заголовок: Спасибо за твои стар..


Спасибо за твои старания !

Спасибо: 0 
ПрофильЦитата Ответить
Ответ:
1 2 3 4 5 6 7 8 9
видео с youtube.com картинка из интернета картинка с компьютера ссылка файл с компьютера русская клавиатура транслитератор  цитата  кавычки оффтопик свернутый текст

показывать это сообщение только модераторам
не делать ссылки активными
Имя, пароль:      зарегистрироваться    
Тему читают:
- участник сейчас на форуме
- участник вне форума
Все даты в формате GMT  5 час. Хитов сегодня: 10
Права: смайлы да, картинки да, шрифты нет, голосования нет
аватары да, автозамена ссылок вкл, премодерация вкл, правка нет