Zunge dehnen und zerren

Posted By: Otter

Zunge dehnen und zerren - 07/15/10 13:37

Ein freundliches Hallo an alle.

Ich hab mir für meine zwecke ein schickes Yoshi model zusammengebastelt. wink
Ich hab auch schon eine function die die Zunge aus seinem Maul schießen läst und geger verschlingt! Soweit so gut.
Jetzt frage ich mich nur wie ich:

YOSHI <--- ZUNGE ---> ZUNGENSPITZE

... die ZUNGE zwischen YOSHI und ZUNGENSPITZE ausdehen soll?
...
Oder hat jemand eine idee wie man es anders machen könnte?
Die Zunge zu animieren ist ausgeschlossen, da ich die länge gerne variieren lassen würde.
Posted By: Espér

Re: Zunge dehnen und zerren - 07/15/10 13:43

draw_Line könnte da doch helfen??....

einfach 6-7 linien übereinander zeichnen, sodass eine FLäche entsteht.

Linienstartpunkt = Mund
Linienendpunkt = das Endobjekt der zunge
Posted By: Anonymous

Re: Zunge dehnen und zerren - 07/15/10 13:47

Yoshi, Zunge und Zungenspitze sind drei Modelle.
Posted By: Slin

Re: Zunge dehnen und zerren - 07/15/10 13:49

Wenn sich der Mittelpunkt der Zunge in deren Mittelpunkt befindet, musst du sie nur genau zwischen start und zielposition platzieren, also (start+ziel)*0.5 und en tlang der richtigen achse skalieren. Ich geh jetzt einfach mal von x achse aus. Die ausmaße findest du nach nem c_setminmax über (max_x-min_x) wenn du nun den neuen scale haben willst sieht das so aus: my.scale_x = vec_dist(start, ziel)/(my.max_x-my.min_x);
Sollte eigentlich einfach machbar sein. Eventuell ists aber besser den ursprung der zunge am anfang zu setzen und die zunge dann an den start zuz setzen. Dann kannst du sie auch langsam größer machen ohne dich um die position zu kümmern. rotation sollte die vom startobjekt sein.
Posted By: Otter

Re: Zunge dehnen und zerren - 07/15/10 18:39

Ich hab mich dafür entschieden den zungenmittelpunkt am anfang der Zunge zu setzen und diese vom maul aus zu starten.
Die sache mit dem scale_z funtioniert aber leider nicht so richtig. frown

hier mein code:

VECTOR temp;
function zunge()
{
c_setminmax (me);
zunge_mitte = me;
set(my,BRIGHT | FLAG2);
my.pan = schusswinkel_pan;
while (zunge_end != 0)
{
vec_set(my.x, player_head.x);
vec_set(temp.x, zunge_end.x);
vec_sub(temp.x, my.x);
vec_to_angle(my.pan, temp.x);
my.scale_x = vec_dist(player_head, zunge_end);
wait(1);
}
}

die zunge ist zu kurz und bleibt gleich lang... tongue
Posted By: Progger

Re: Zunge dehnen und zerren - 07/15/10 19:02

versuch mal my.scale_y da du dein Modell vielleicht in eine andere Richtung rotiert hast
MFG PRogger
Posted By: MasterQ32

Re: Zunge dehnen und zerren - 07/15/10 19:27

wie groß ist dein modell?
wenn es genau ein quant lang ist, funktioniert die zeile hier:
Code:
my.scale_x = vec_dist(player_head, zunge_end);


wenn nicht, musst du die Distanz durch deine modell-länge teilen.
Posted By: muffel

Re: Zunge dehnen und zerren - 07/15/10 19:53

setzte den Zungenanfang auf den Ursprung des Modells und auf die Zungenspitze ein Bone den kannst du dann einfacher zu jeder Position hinbewegen

muffel
Posted By: HeelX

Re: Zunge dehnen und zerren - 07/15/10 20:37

Ich möchte nochmal kurz dafür votieren es -doch- zu animieren. Es sieht erstens besser aus und ist weniger hakelig als die "Stückelei" mit mehreren Models, und zwar wie folgt:


  • Du machst die Animation, wobei 0% dem idle state entspricht (0 Quants die Zunge raus)
  • 100% entspricht dann der maximalen Ausdehnung, z.B. 256 Quants (musst du eventuell auch ausmessen dann hinterher, ist ja egal)
  • dann schreibst du dir ne funktion, die deine animation abspielt, wobei du angibst, wie -weit- die zunge rausfliegen soll. Dabei wird dann die distanz durch die Maximaldistanz geteilt und du hast den Prozentwert raus, bis wohin du animieren musst. Beispielsweise bei einer maximaldistanz von 256 quants wäre 77 quants = 77 / 256 ~ 30%. Das heißt du spielst die Animation von 0 nach 30 Prozent und dann zurück von 30 nach 0 Prozent und du hast deine Zunge SCHÖN und GENAU 77 Quants rausbewegt


Na wenn dass mal nicht toll argumentiert ist ^^

Würde mich freuen zu wissen, warum du eine Animations-Lösung --kategorisch-- ausschließt...
Posted By: alibaba

Re: Zunge dehnen und zerren - 07/15/10 20:45

Kocum HeelX sehr gute Idee^^
Wollt ich nur mal so sagen grin
Posted By: Liamissimo

Re: Zunge dehnen und zerren - 07/15/10 21:17

Jo, netteste idee seit PhysX grin
Posted By: Otter

Re: Zunge dehnen und zerren - 07/16/10 14:58

Schlaue idee HeelX.
Anfangs wusste ich nicht genau wie ich das mit der animation machen soll, dashalb hielt ich es für eine dumme idee.
Aber wenn ich am vordersten vertex des zungenmodels eine unsichbare Zungenspitze plaziere die auf kollision reagiert und die zunge bei kontakt zurückwirft...
... dann müsste es funktionieren.
was meint ihr klingt das gut? wink
Posted By: Otter

Re: Zunge dehnen und zerren - 07/16/10 18:54

Alles funktioniert schon ziemlich gut!
Danke ihr lieben, wink ohne den plan die animation doch zu benutzen, währe es sicher nicht halb so schön geworden.
Mir drängt sich schon die nächste frage auf, aber die stelle ich euch anderswo.
Nochmals dankeschön grin

© 2024 lite-C Forums