Community Forum Supporto Utenti Supporto Animazione e rigging Personaggio animato con testa indipendente dal corpo

Stai visualizzando 7 post - dal 1 a 7 (di 7 totali)
  • Autore
    Post
  • Federico Pusceddu
    Membro
    @federico-pusceddu
    #504183

    Salve…

    Ultimamente mi sto occupando di creare nemici nella mia scena di gioco, quindi ho cercato di creare modelli umani con MakeHuman ed esportare il file su Blender. Il modello è un’armatura con un proprio “scheletro” con giunzioni che partono dalla testa e arrivano in tutti gli arti. Al di là delle animazioni fondamentali (tipo camminare in avanti) ho creato uno script per l’intelligenza artificiale che facesse muovere la testa indipendentemente dalla rotazione del corpo, ovvero se dovessi ruotare il corpo di 45° allora non è detto che per forza la testa debba ruotare con lo stesso angolo. Per far ciò ho pensato che il modello dovrebbe avere una testa “staccata” dal corpo, perchè se testa e corpo dovessero appartenere allo stesso oggetto credo si muoverebbero allo stesso modo.

    Quindi la mia domanda è la seguente: come posso separare testa e corpo dal modello di base, mantenendo però tutte le giunzioni dell’armatura ottenute tramite l’utilizzo di MakeHuman?

    andcamp
    Moderatore
    @andcampAssociato
    #504184

    |l’intelligenza artificiale che facesse muovere la testa indipendentemente dalla rotazione del corpo, ovvero se dovessi ruotare il corpo di 45° allora non è detto che per forza la testa debba ruotare con lo stesso angolo. Per far ciò ho pensato che il modello dovrebbe avere una testa “staccata” dal corpo, perchè se testa e corpo dovessero appartenere allo stesso oggetto credo si muoverebbero allo stesso modo.

    non potresti fare in modo che se l’umanoide gira il corpo di 30°, la testa giri anch’essa di 30° ma in direzione inversa, in modo da continuare a vedere il suo target, il tutto senza staccare la testa dal corpo?

    Anfeo
    Membro
    @anfeo
    #504185

    Non ho capito la domanda sinceramente :D.

    Staccare la testa intendi il Bone della testa? O la testa dall’oggetto?

    Per il Bone si può fare (edit mode dell’armatura, selezioni l’osso e premi P ), ti crea un armatura separata ma mantiene le parentele con il corpo di mesh, ma volendo puoi sganciare l’osso dalla colonna vertebrale se sono di tipo connect, andando nelle proprietà dell’osso e cliccando su connected (cioè togli la spunta):

    Per la testa, dovresti lavorare di mesh e modellazione e creare una separazione, poi selezioni la testa e sempre in edit mode premi P .

    Ti sconsiglio di separare le ossa dell’armatura, in quanto puoi accedervi singolarmente per controllare la rotazione.

    Federico Pusceddu
    Membro
    @federico-pusceddu
    #504188

    @andcamp in verità lo script che ho creato comprende pure questo… ancora è in via di sviluppo ma per adesso funziona abbastanza bene, però la testa non è “figlio” il corpo, altrimenti si sarebbero creati problemi per altre funzioni dell’intelligenza artificiale

    @Alfonso Annarumma inizialmente avevo pensato pure io a staccare il Bone della testa con il resto del corpo, ma il problema è che il modello dev’essere esportato su Unity e non credo che potrò poi decidere di ruotare SOLO la testa non muovendo il corpo, o viceversa… quello che vorrei (se possibile ovviamente) è avere due object separati, testa e corpo, appartenenti alla stessa armatura, in modo di poter muovere uno dei due in modo indipendente, ma al tempo stesso possano essere compresi insieme nelle animazioni di base, come camminare o attaccare

    Federico Pusceddu
    Membro
    @federico-pusceddu
    #504189

    ho tentato di fare anche un’altra cosa: esportando il file su Unity è possibile selezionale solamente il Bone della testa e ruotarla indipendentemente dal corpo… se funziona tutto bene vi farò sapere

    (scusate per il doppio post, ma non trovo più il tasto per modificare i propri messaggi nel topic)

    Anfeo
    Membro
    @anfeo
    #504268

    quindi alla fine il problema era più uniti che Blender.

    In realtà quello che dici si può fare in Blender usando le constraint, si usa una tecnica del genere per comandare gli occhi, un osso muove le ossa degli occhi che al tempo stesso sono imparentate alla testa e quindi seguono lo spostamento di essa. Le constraint in Blender non sono altro che imparentamenti complessi, dove si ha una dipendenza figlio dal genitore a seconda del tipo di constraint (tipo solo rotazione, posizione, ma anche tracking ecc..).

    Solo che se metti in mezzo Unity non ti so rispondere più di tanto, da quello che ho capito ti serve sia che la testa sia attaccata al corpo (quando questo si muove) sia che possa muoversi seguendo un bersaglio (in blender si userebbe una constraint Track-to legata ad un altro osso che la testa seguirebbe).

    Federico Pusceddu
    Membro
    @federico-pusceddu
    #504297

    per adesso ho risolto

    su blender ho eliminato il parenting tra il Bone del collo (da dove inizia la testa) e il Bone del corpo e in questo modo su Unity è possibile ruotare indipendentemente testa e corpo (in verità è il collo che si muove)

Stai visualizzando 7 post - dal 1 a 7 (di 7 totali)
  • Devi essere connesso per rispondere a questo topic.