Quali sono alcuni modi per implementare forme del corpo variabili?


9

Giochi come Ryzom e The Sims consentono ai giocatori di avere corpi umani con forme diverse: largo o sottile, alto o corto, nasi grandi o piccoli, ecc. Mi sembra che sarebbe poco pratico pre-generare tutte le possibili combinazioni del maglie.

Quali sono alcuni modi per farlo? Le maglie sono definite programmaticamente? È una media ponderata di più modelli "morph target"?

Se è necessario eseguire calcoli per determinare la mesh: viene eseguita in uno "shader della geometria"? O è fatto dalla CPU?

Riferimento: la domanda " Come creare risorse artistiche per l'editor di avatar 3d " menzionava gli editor di avatar e gli elementi del corpo variabile e che alcuni giochi usano obiettivi di metamorfosi e bombardamenti di glifi.

Risposte:


3

Dovrebbe essere fatto dalla CPU: uno shader di geometria non offre l'opportunità di salvare i suoi risultati, il che sarebbe essenziale, e non tutti i dispositivi supportati da quei giochi supportano shader di geometria. Raggiungerlo potrebbe essere semplice come applicare una matrice di scala a parti intere o separate.

Modifica: ho letto la tua domanda correlata. Dovresti davvero chiarire questa domanda in modo esplicito sul morph target o esplicitamente sul solo ridimensionamento della personalizzazione.


Ha dato più contesto alla "domanda correlata". Non ho menzionato obiettivi di morph; si tratta sicuramente della personalizzazione. Se i target di morph si trovano nello spazio della soluzione, mi piacerebbe saperne di più su di loro; ma la mia preoccupazione è implementare i corpi con animazioni e modelli corrispondenti (ad esempio modelli di abbigliamento) in modo coerente. Non sono predisposto a nessuna parte dello spazio della soluzione.
AngryPuffin,

Non del tutto corretto; se stai usando CUDA o OpenCL, puoi accedere alla geometria su cui lavora la GPU.
Ingegnere,
Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.