Sidebar

Фиксирование анимации открывания 3D модели дверей

  • Наступило лето и у нас стартовал конкурс с призовым фондом в $120!
    "De-Make It!" Summer Contest.
Все здравствуйте.
У меня такой вопрос, есть 3d модель двери с 4 видами анимации.
1. Открывание двери "open"
2. Дверь открыта "open_idle"
3. Закрывание двери "close"
4. Дверь закрыта "idle"

Так вот сам вопрос - я хочу проигрывать анимации, например с активации триггера.
В чем проблема, анимация отрывания при проигрывании будет снова и снова открывать двери(open), до тех пор пока не сменится анимация какой-то другой командой от триггера.
Можно сделать при помощи разного рода "костылей", я могу просто в анимацию модели забить 4 вида анимаций - open, open_idle, close и выход на idle, просто все 4 анимации сделать одной, такая 4 в1. Или можно привязать к хаммерской "func_door", сделать её прозрачной.
Но я хочу сделать именно при помощи возможностей хаммера, вот насколько это реально?

Есть какие нибудь уроки такого плана, или кто что посоветует.
 

Flash

VIP
VIP
21.09.2004
16 737
217
63
Награды
7
36
Кривой Рог
  • Золотая медаль 111
  • Серебряная медаль 216
  • Золотая медаль 221
  • Серебряная медаль 311
  • Серебряная медаль 115
  • Золотая медаль 125
  • Золотая медаль 211
А если взять энтитю monster_generic, и переключать анимации через scripted_sequence?
 
В халве же есть стандартные текстуры, там и стиль подобающий.
Буду их на брашах использовать. Как сразу не догадался.
new_design4.jpg
new_design5.jpg
А если взять энтитю monster_generic, и переключать анимации через scripted_sequence?
Counter-Strike:Source не уверен что будет работать.
Есть примеры использования?

Навеяло хайфловской ностальгией.
new_design6.jpg

//-----------------------------------

new_design7.jpg
 
Последнее редактирование:

Backbreaker

графодрочер ксм
27.12.2007
3 105
21
38
Награды
1
  • Золотая медаль 111
анимация отрывания при проигрывании будет снова и снова открывать двери(open), до тех пор пока не сменится анимация какой-то другой командой от триггера.
Ты через какую команду запускаешь анимацию? SetAnimation или SetDefaultAnimation?
 

Flash

VIP
VIP
21.09.2004
16 737
217
63
Награды
7
36
Кривой Рог
  • Золотая медаль 111
  • Серебряная медаль 216
  • Золотая медаль 221
  • Серебряная медаль 311
  • Серебряная медаль 115
  • Золотая медаль 125
  • Золотая медаль 211
Может тебе всё же стоит выкладывать наработки в отдельной теме?
На "стандартные халвовские текстуры" что-то не тянет, не припомню там таких.
 
Ты через какую команду запускаешь анимацию? SetAnimation или SetDefaultAnimation?
Через триггер:
1 - по умолчанию, на модели стоит анимация idle (закрытые двери)
2 - активирую триггер - запускаю анимацию open командой с триггера SetDefaultAnimation (просто меняю анимацию по умолчанию)
3 - через определенное время, с триггера, так же командой SetDefaultAnimation запускаю анимацию close.

Вроде бы все неплохо и понятно читается, но по факту есть одно
НО!
Анимация open выполняется постоянно, она должна смениться анимацией (я назвал её open_idle, просто открытые двери), а как это сделать? Задать примерное время проигрывания этой анимации - конечно можно, но это детский бред.
По идее, нужно просто перехватить окончание проигрывания анимации, и завершить команду от триггера.
Программным кодом делать хорошо, перехватываешь конец проигрывания анимации OnAnimationDone и останавливаешь проигрывание анимации, работает отлично.
А вот как здесь это сделать не пойму, ведь наверняка есть простой способ, но я его пока не вижу.

Пробую здесь так же перехватить OnAnimationDone - не пойму, а кто именно должен эту команду перехватывать? Сама 3d модель? Триггер? Или что то глобальное? Какой нибудь бы урок посмотреть на эту тему. Может быть нужно анимации переписать.
 

Backbreaker

графодрочер ксм
27.12.2007
3 105
21
38
Награды
1
  • Золотая медаль 111
Проверил у себя на официальной модельке "props_combine\combine_door01.mdl" все работает как надо, только с командой SetAnimation.

Вообще я бы посоветовал не морочиться с дверьми в мультиплеере, оставь дверь статичной в открытом положении. Как она будет вести себя с несколькими игроками, которые бегают туда-сюда и задевают триггер по 5 раз в секунду?
 

Flash

VIP
VIP
21.09.2004
16 737
217
63
Награды
7
36
Кривой Рог
  • Золотая медаль 111
  • Серебряная медаль 216
  • Золотая медаль 221
  • Серебряная медаль 311
  • Серебряная медаль 115
  • Золотая медаль 125
  • Золотая медаль 211
Так ведь он и не упоминал игру, я предположил что речь идёт о ксаше.
 
Проверил у себя на официальной модельке "props_combine\combine_door01.mdl" все работает как надо, только с командой SetAnimation.

Вообще я бы посоветовал не морочиться с дверьми в мультиплеере, оставь дверь статичной в открытом положении. Как она будет вести себя с несколькими игроками, которые бегают туда-сюда и задевают триггер по 5 раз в секунду?
Если не против - скинь, пожалуйста, карту пример, ту что ты сам делал.

Я не могу понять - задал анимацию, к примеру, OPEN с помощью SetAnimation, команда выполнилась один раз и резко вернулась в состояние по умолчанию, к примеру IDLE. Фиксации анимации в открытом положении не будет, ну просто никак. Или я что-то недопонимаю.
Мне сейчас нужно понять, что необходимо сделать с анимациями дверей. Может быть просто их заново написать в максе, или что-то можно придумать в хаммере.


Насчет "заморочек с дверями", меня сейчас мало интересует игровой процесс, я его всегда смогу подкорректировать так, как мне нужно и как посчитаю нужным, например открыть двери один раз за раунд, или оставить дверь, после отрывания, в режиме OPEN на длительное время(триггер заблокировать). Вариантов просто масса.
Но что бы эти варианты реализовать нужно правильно и понятно реализовать сам процесс проигрывания внимаций. А иначе "филькина грамота" получается.
 
Последнее редактирование:
А если взять энтитю monster_generic, и переключать анимации через scripted_sequence?
Вот это уже интересно. Я не пробовал, но нужно попробовать.
Подключу .fgd халвовский, посмотрю что и как работает.
 
monster_generic не работает в CSS. Жалко.


//-------------------------------------------------
Всё! Начало есть, остальное дело техники.
Я немного неверно расписывал команды по ENT. Когда всё закончу, опишу процесс анимации, что то типа урока.

Сделал еще одну модельку с стиле "sci-fi". С ней особо не мудрил, сделал как можно проще, красок ей немного добавлю.
new_design8.jpg
 
Последнее редактирование:

Backbreaker

графодрочер ксм
27.12.2007
3 105
21
38
Награды
1
  • Золотая медаль 111
Я не пойму, сначала ты просишь карту пример, потом пишешь что уже разобрался, в другом топике пишешь что еще не решил проблему. Не знаю что там у тебя происходит, но на всякий случай скинул свой исходник с примером.
 

Вложения

all3GIFT

Member
31.01.2015
138
2
18
Награды
0
А что если сделать idle анимацию пустой в нужном тебе направлении.
Допустим тебе нужно что бы после открывания двери она оставалась открытой, делай через триггер ей анимку открытия и меняй дефолтную анимацию на пустую и все.
 

all3GIFT

Member
31.01.2015
138
2
18
Награды
0
Скинь свою модель я попробую сделать карту пример.
Или можно на любой модели тебе показать ? Скажем на prop_dynamic_override устроит если сделаю карту пример?
 

Донат - Операционные расходы

Итого
1 121.00 $
Цель
1 300.00 $
Донат завершается:

Доноры Красавчики

Новые сообщения

Пользователи онлайн