Aller à la page... |
Rotation a ignorer.
Suivre Répondre |
|
Partager | Rechercher |
|
Je n'ai pas regardé ton script en détail, mais ces deux discussions pourraient peut-être aider à faire avancer le schmilblick
https://forums.jeuxonline.info/showthread.php?t=1250278 https://forums.jeuxonline.info/showthread.php?t=1210755 |
15/11/2018, 10h21 |
|
Prince / Princesse
|
le premier lien donne des pistes mais....pioooou je ne suis pas sauvé
|
15/11/2018, 23h15 |
|
Prince / Princesse
|
Citation :
|
16/11/2018, 12h38 |
|
|
Si tu veux tourner "à plat", il faut projeter les vecteurs U et V dans le plan horizontal avant de chercher la rotation entre les deux.
Attention : la fonction llRotBetween impose de normaliser au préalable les deux vecteurs. Tu peux faire un fonction de rotation à plat : Code:
rotation rotH(vector Vu, vector Vv) { Vu.z = 0.0; Vv.z = 0.0; return llRotBetween(llVecNorm(Vu),llVecNorm(Vv)); } Code:
if(message == "on") { posBase = llGetPos(); posBase = llGetPos(); rotBase = llGetRot(); llLoopSound("cee4669b-bd83-50aa-fafd-aae5fd12bf0a",0.3); list kfmList; U = llRot2Fwd( llGetRot()); integer offsetIdx; integer offsetCount = llGetListLength(rawOffsets); while (offsetIdx < offsetCount) { V = llList2Vector(rawOffsets, offsetIdx++) * llGetRot(); kfmList += [ ZERO_VECTOR, rotH( U, V), VITESSErotation]; kfmList += [V, ZERO_ROTATION, VITESSEdeplacement]; U = V; } kfmList += [ ZERO_VECTOR, rotH( U, llRot2Fwd( llGetRot())), 1.0]; llSetKeyframedMotion( kfmList, []); } |
18/11/2018, 01h13 |
|
|
Content de voir le retour de Black Cats dans cette section
|
18/11/2018, 15h18 |
|
|
Décidément on a pas fini de parler rotations sur sl
|
19/11/2018, 12h54 |
|
Suivre Répondre |
Fil d'ariane
Connectés sur ce fil1 connecté (0 membre et 1 invité)
Afficher la liste détaillée des connectés
|