Части тела)

Форум для самых маленьких, а так же тех, кому недосуг читать справку самостоятельно.

Части тела)

Сообщение Volandpro 21 авг 2012, 22:47

Здравствуйте, мне хотелось бы сделать, чтобы при ударе в определенную область НПЦ у него отваливалась эта область) Так как я новичок в юнити и C#, я придумал какой то кривой скрипт, суть такова: у нас есть объект А (например куб), у него есть дочерние привязанные к нему объекты. Мы бьем цель, попадаем либо по А, либо по привязанному к нему объекту(например это нога), и она отваливается. Но с этим набором объектв довольно сложно обращаться, там физику надо учитывать и т.д. Можно это сделать как-то проще?
Аватара пользователя
Volandpro
UNITрон
 
Сообщения: 242
Зарегистрирован: 19 авг 2012, 17:07

Re: Части тела)

Сообщение josdas 22 авг 2012, 03:35

Есть другой путь, нпс это цельный сложный объект. Можно просто при ударе менять модельки нпс(без какой либо части тела), а на месте оторванных частей создавать объект с физикой.
josdas
UNIт
 
Сообщения: 97
Зарегистрирован: 04 авг 2012, 10:36

Re: Части тела)

Сообщение Volandpro 22 авг 2012, 12:12

Тогда у меня вопрос, а как сделать этот цельный сложный объект?) Он есть уже в базовой комплектации? Или его надо как-то отдельно создавать?
Аватара пользователя
Volandpro
UNITрон
 
Сообщения: 242
Зарегистрирован: 19 авг 2012, 17:07

Re: Части тела)

Сообщение josdas 22 авг 2012, 14:09

Не много не так написал (в 6 утра). Этот нпс анимированная моделька со скриптом. (пример)При ударе в ногу, моделька нпс изменяется на ту у которой нет ноги(другая модель отдельно созданная в 3d редакторе). А нога становиться отельным объектом.(тож созданная в 3d редакторе). То есть у тебя будет много моделей одного персонажа.(без рук, без ног и соответственно отдельные модели рук и ног)
josdas
UNIт
 
Сообщения: 97
Зарегистрирован: 04 авг 2012, 10:36

Re: Части тела)

Сообщение Volandpro 22 авг 2012, 15:14

Это я понял, но я не знаю, как сделать, чтобы объект распознал, что его ударили именно по ноге. В этом вся загвоздка, из-за этого у меня работа стоит. Подскажите пожалуйста, хотя бы в общем виде)
Аватара пользователя
Volandpro
UNITрон
 
Сообщения: 242
Зарегистрирован: 19 авг 2012, 17:07

Re: Части тела)

Сообщение waruiyume 22 авг 2012, 15:18

Повесить для каждой части свой коллайдер.
Аватара пользователя
waruiyume
Адепт
 
Сообщения: 6143
Зарегистрирован: 30 окт 2010, 05:03
Откуда: Ростов на Дону

Re: Части тела)

Сообщение Volandpro 22 авг 2012, 15:32

Хм спасибо за идею, дело в том, что я только начал иметь дело с юнити и не дошел еще до коллайдеров, поэтому не знаю про них) Буду разбираться) Если есть еще какие-нибудь мысли, поделитесь, пожалуйста)
Аватара пользователя
Volandpro
UNITрон
 
Сообщения: 242
Зарегистрирован: 19 авг 2012, 17:07

Re: Части тела)

Сообщение josdas 22 авг 2012, 16:01

Желательно коллайдером, но тут можно по другому, но будет очень сложно.
josdas
UNIт
 
Сообщения: 97
Зарегистрирован: 04 авг 2012, 10:36

Re: Части тела)

Сообщение Volandpro 22 авг 2012, 16:15

Хм, а как сделать, чтобы атака шла именно в триггер? У меня раньше таргет атаки задавался через GameObject.FindObjectWithTag("Enemy"), потом при нажатии клавиши вызывался метод атаки, который отнимал ХП. Получается, нужно, чтобы в таргете был триггер? Или как?
Аватара пользователя
Volandpro
UNITрон
 
Сообщения: 242
Зарегистрирован: 19 авг 2012, 17:07

Re: Части тела)

Сообщение josdas 22 авг 2012, 16:52

Этот скрипт не подходит. Нужно работать с лучами если это оружие дальнего действия, или с коллайдером если это меч и прочее ближнего боя. Собственно лучи
http://docs.unity3d.com/Documentation/ScriptReference/RaycastHit.html
http://docs.unity3d.com/Documentation/ScriptReference/Physics.Raycast.html?from=RaycastHit
ты проверяешь, к какому тэгу принадлежит коллайдер на пути луча.
Если ближний бой, то вешаешь на кость острой части оружие коллайдер (поставь параметр is trigger) анимация обязательна
http://docs.unity3d.com/Documentation/ScriptReference/Collider.OnTriggerEnter.html
проверяешь опять тэг объекта и отнимаешь здоровье при ударе.
И вопрос не по теме ты программируешь на си шарпе или джава?
josdas
UNIт
 
Сообщения: 97
Зарегистрирован: 04 авг 2012, 10:36

Re: Части тела)

Сообщение Volandpro 22 авг 2012, 16:57

си шарп) Хотя я его изучал только в институте, а там о юнити 3д не говорили, конечно) Поэтому иногда возникают различные проблемы, например я не могу создать объект другого класса и вызвать метод оттуда) Обычно я писал. Class 1 cs; cs=new Class1(); cs.Method(); а тут так не работает почему-то)
Аватара пользователя
Volandpro
UNITрон
 
Сообщения: 242
Зарегистрирован: 19 авг 2012, 17:07

Re: Части тела)

Сообщение josdas 22 авг 2012, 17:08

Вроде не работает из за того что нету using какого то (он в самом начале используеться).Я не уверен.
Возможно нужен using System или типо того.
josdas
UNIт
 
Сообщения: 97
Зарегистрирован: 04 авг 2012, 10:36

Re: Части тела)

Сообщение Volandpro 22 авг 2012, 23:16

Я сделал анимацию для удара(например двигаем рукой, на неё повешен коллайдер), она двигается вперед, потом назад, а как сделать, чтобы при столкновении с коллайдером врага что-то происходило? На объект рука и на объект враг я также повесил ригидбоди, каждого сделал ИзКинематик. Я написал в скрипте, привязанном к руке
Синтаксис:
Используется csharp
void OnCollisionEnter(Collision collision) {
    Debug.Log("adssd");
   }

Но ничего не происходит

Скрипт для вызова анимации
Синтаксис:
Используется csharp
public GameObject hand;
 hand=GameObject.FindGameObjectWithTag("Hand");
     hand.animation.Play("New Animation");

Hand - дочерний объект игрока

Как сделать, чтобы что-то происходило при столкновении?
Аватара пользователя
Volandpro
UNITрон
 
Сообщения: 242
Зарегистрирован: 19 авг 2012, 17:07

Re: Части тела)

Сообщение seaman 23 авг 2012, 06:50

При анимации коллайдер может и не двигаться. Попробуй привязать к концу руки небольшой пустой ГО, а уже к нему коллайдер.
seaman
Адепт
 
Сообщения: 8352
Зарегистрирован: 24 янв 2011, 12:32
Откуда: Самара

Re: Части тела)

Сообщение josdas 23 авг 2012, 08:59

Cделал параметре is trigger у колладера меча?
Скрытый текст:
7.png
У вас нет доступа для просмотра вложений в этом сообщении.
josdas
UNIт
 
Сообщения: 97
Зарегистрирован: 04 авг 2012, 10:36


Вернуться в Почемучка

Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 26