syst de particule + deflecteurs [3DS MAX 5] - C++ - Programmation
Marsh Posté le 25-03-2003 à 13:12:25
oulà malheureux je suis pas à ce niveau là moa !!!! (je débutes comparé à toé)
si je regardes la doc du sdk sur ces fonctions comme ça je me coucherai moins bête
Marsh Posté le 25-03-2003 à 13:21:48
BJOne a écrit : oulà malheureux je suis pas à ce niveau là moa !!!! (je débutes comparé à toé) |
N'ayez crainte mon cher, mon precedent post est principalement de la poudre aux yeux, personneleemt j'asperge toujours mon pc d'eau benite avant de faire un plug in max
Marsh Posté le 25-03-2003 à 14:32:09
pour le ApplyCollisionObject, j'ai ça dans le SDK:
Code :
|
donc bizarrement fo faire FALSE quand la méthode n'est pas applicable ?
Marsh Posté le 25-03-2003 à 14:33:41
vi c ce que je fais, mais Max a l'air de s'en foutre
Et si tu continues tes recherches tu verras qu'il ne semble pas possible de retomber sur le node ayant emis le CollisionObject (surtout ca mon gros pb)
Marsh Posté le 31-03-2003 à 09:04:09
je suis un gros blaireau
En fait, lors du rendu de mon systeme de particules, max me refile un ptr vers la node de mon systeme. Ensuite il suffit d'utiliser la doc http://www.alrj.org/docs/3D/docmax.html ecrite y'a plus d'un an par un mec super cool mega delire, mais franchement un peu con sur les bords
Marsh Posté le 31-03-2003 à 12:05:02
tsé moi j'en suis toujours qu'a l'export et ça va faire des mois que j'y ai pas touché...
Marsh Posté le 31-03-2003 à 12:08:19
BJOne a écrit : tsé moi j'en suis toujours qu'a l'export et ça va faire des mois que j'y ai pas touché... |
oué ben perso je serais pas supris que Max soit responsable de 43% des cas d'alcoolisme chez les codeux
genre g passe une heure (!!) a comprendre pourquoi mon systeme de particule etait tout moche au rendu. (lumiere calculee n'importe comment)
conclusion : J'avais tout mis dans le smoothing group de 0, alors qu'il fallait mettre dans le 1
(et pour mon truc je crois qu'il va quand meme falloir que je reecrive les plugs, et pour les modifiers je t'explique pas l'odieux bordel que c'est)
Marsh Posté le 24-03-2003 à 12:22:15
(bon, je pense pas que ca soit le meilleur forum pour ca, mais bon, sait-on jamais... Bjone, t la ? )
Mes déboires ont commencé quand j'ai refait un système de particule pour 3ds max 5. En m'appuyant sur les samples fournis avec le maxsdk, j'ai pas eu de pb a faire mon systeme (dérivant de SimpleParticle). Les emmerdes ont commencés avec les déflecteurs. Les déflecteurs de max, appelé par le truchement de CollisionObject::CheckCollision se comportent d'une manière rendant mon systeme instable. Partant de la j'avais deux solutions : soit je refais des deflecteurs spéciaux, avec une méthodeCollisionObject::CheckCollision correspondant exactement a mes besoins. Soit je continue a utiliser ceux de max, sauf que les calculs de collision seront fait par le système. Les avantages sont moultes : pas besoin de se trimbaler force plug-in, pas besoin de réecrire lesdits plug in (ca c un sacré avantage). Bref, je me décida pour cette stratégie. Le drame survint lors de la surcharge de SimpleParticle::ApplyCollisionObject.
Tout d'abord quelque soit ce que je retourne (TRUE,FALSE) max me fait la liaison entre le déflecteur et mon systeme. Ce qui est crétin. (en suivant le code asm on s'apercoit que max ne teste meme pas le retour de fonction il ecrase EAX dans la joie et la bonne humeur a peine la fonction finie, ca vaut le coup de se prendre la tête...). Par ailleurs, il semble que max appelle cette fonction un peu n'importe comment (si on ajoute un Deflecteur, il renvoie toute la liste au lieu d'envoyer seulement le dernier. Et je n'ai pas l'impression qu'il appelle une fonction avant pour prevenir de ses magouilles...). Mais le pb n'est pas la, le pb est que CollisionObject permet seulement de recuperer un pointeur vers un Object. C'est pas mal, ca permet de recuperer les paramBlock, mais pas la matrice de transformation. Et visiblement, y'a pas moyen de passer de Object a INode (etant donné qu'un Object peut etre reference par plusieurs INode, meme la méthode gorine "cherche dans tous les nodes celui qui reference l'objet" ne marche pas. Bref, je suis face a un mur. Une idée ou vais-je devoir me rabattre sur la solution 1 ?