Re: Portal BGE

Posté par gui36fr le 23/10/2010 12:32:15
Bonjour,

Citation :
edit : J'ai testé, et il y a un problème : le cos de cmath donne une complexe, et une force doit être donnée par des float...Et float() ne fonctionne pas pour la conversion. Que faire ?

Ah bah oui, c'est logique... j'ai utilisé le cos et le sin de cmath, donc ça retourne des complexes.

Change la ligne
from cmath import phase, cos, sin
par
from cmath import phase
from math import cos, sin


Citation :
edit : Bah non, ça marche pas, "-rot"...Faut faire rot.invert()

??? Bizarre, ça devrait marcher pourtant. Mais quand je parlais de faire "-rot", c'était seulement pour inverser les coordonnées or elles y sont déjà dans le code que je t'ai donné, tu n'as donc rien à changer

En réalité ce que j'ai fait dans ces lignes c'est (en gros) : rot[y][x] = -rot[y][x] et rot[y][y] = -rot[y][y] mais ça ce fait rapidement dans ma ligne où je calcul phi. Tu n'as rien à toucher ni avant ni après, sauf erreur de ma part.

Quand à rot.invert() ça retourne toute la matrice (donc ça inverse tout), mais je ne le fait pas au cas où il y aurait besoin de garder la matrice originale plus loin dans le code ; je préfère inverser mes nombres dans mes calculs

Citation :
Ou là

Euh... développe tous mes calculs et tu comprendras. Le module d'un vecteur est sa longueur, et la longueur d'un vecteur (x, y, z) est la racine carré de x²+y²+z². Je suis un peu fainéant, donc la moitié (parfois les trois quarts) des calculs se font dans ma tête et pas sur ma feuille (ou sur mon clavier...)

Citation :
Mais pour les objets en général, n'y a-t-il pas un moyen de conserver la force sans tous ces calculs ? Parce que Warwick ne se prend pas la tête avec tout ça...

Warwick calcul tout avec des matrices 3x3 (donc 9 données qui changent d'un coup à chaque calcul), moi je travaille avec des complexes (2 données) et mon esprit plus ou moins logique : quel est la plus simple des méthodes ? Et bien avec un ordi tu peux facilement travailler avec des matrice, à condition de ne pas te planter car pour chercher une erreur, c'est parfois long... Sur une feuille de papier (je passe toujours par ma feuille et mon crayon avant de faire un script), les complexes sont un outil qui reste assez simple, et on peut faire un dessin. Un inconvénient c'est qu'on ne peut pas calculer directement des positions en 3D avec les complexes, mais là on travaille sur un plan. Pour moi le plus simple dans ce cas c'est les complexes, mais rien ne t'interdit de travailler avec les matrices
De plus, Warwick prend plus de 20 lignes pour son programme, si tu compactes le mien (càd sans les commentaires et les sauts de lignes) en a un vingtaine à tout casser, en utilisant 4 fonctions qui restent assez simples (création de complexe (pas vraiment une fonction de calcul), calcul d'angle (phase()), cosinus et sinus). À toi de juger, tu es maître de ton projet

Cette contribution était de : http://blenderclan.tuxfamily.org/html/newbb/viewtopic.php?forum=3&topic_id=27924&post_id=347473