Page 1 sur 2
Chipmunk 4.1.0 : moteur physique pour la 2D
Publié : sam. 17/janv./2009 14:45
par eddy
Publié : sam. 17/janv./2009 14:48
par Anonyme
Linux !
L'import est pas bon pour linux :
ImportC "..\Chipmunk\Chipmunk.so"
doit être :
ImportC "-lChipmunk.so"
Publié : sam. 17/janv./2009 14:57
par eddy
Je peux pas le compiler sous linux
mais si tu as une version avec une correction, je peux l'ajouter dans le ZIP.
Est-ce que quelqu'un a testé la lib sur une machine 64bits ?
Publié : sam. 17/janv./2009 15:02
par Anonyme
Donne moi les dépendances du chipmunk si il y en a que je puisse voir se soir.
Publié : sam. 17/janv./2009 15:08
par eddy
C'est ça dont tu as besoin ?
Code : Tout sélectionner
chipmunk.h
---
cpVect.h
cpBB.h
cpBody.h
cpArray.h
cpHashSet.h
cpSpaceHash.h
cpShape.h
cpPolyShape.h
cpArbiter.h
cpCollision.h
cpJoint.h
cpSpace.h
Publié : dim. 18/janv./2009 13:11
par Anonyme
Le moteur Chipmunk compile sans problème avec les sources chopé sur le web , mais ton wrapper dois avoir des erreurs , impossible de compilé quoi que se soit , pourtant tout m'a l'air d'être correct.
je suppose que ca viens de l'édition de lien , comment Chipmubk affiche les objet ? avec OpenGL ? sdl , glut ?
Publié : dim. 18/janv./2009 16:03
par eddy
Les sources sur le web compile un projet EXE.
C'est normal OPengl ne sert à rien pour un moteur physique. Ya que des fonctions dedans.
Tu as essayé de compiler sur quel machine ou OS ?
Publié : dim. 18/janv./2009 16:07
par Anonyme
Les sources sur le web compile un projet EXE.
bah , non , je compile bien le .so (équavalent de ta lib)
C'est normal OPengl ne sert à rien pour un moteur physique. Ya que des fonctions dedans.
j'ai bien compris , c'est évident , mais je voulais savoir comment tu affiches le tout , avec Purebasic , ou chipmunk s'occupe du rendu ?
Tu as essayé de compiler sur quel machine ou OS ?
Ubuntu
Publié : dim. 18/janv./2009 16:10
par eddy
Quel message d'erreur il t'affiche ?
Où est-ce qu'il plante ?
Tu peux tester ce code pour voir si au moins il trouve les fonctions dans ta lib.
Copie le fichier .SO dans ton répertoire et lance le code.
Code : Tout sélectionner
ImportC "chipmunk.so"
cpInitChipmunk()
EndImport
cpInitChipmunk(); test l'initialisation
Publié : dim. 18/janv./2009 16:41
par Anonyme
Le compilo fige au moment de l'inclusion de Chipmunk.pb , je regarde ou sa pêche , et je modifie pour que ca tourne , dès que c'est près , je te fait une archive.
Publié : dim. 18/janv./2009 16:53
par Anonyme
La macro Const semble être à l'origine du problème elle sert a quoi ?

Publié : dim. 18/janv./2009 17:05
par Anonyme
idem ici :
Code : Tout sélectionner
Structure cpJoint
*klass.cpJointClass
*a.cpBody: *b.cpBody
EndStructure
cpJointClass pose un probleme.
Publié : dim. 18/janv./2009 17:08
par Anonyme
Demo1.pb
Code : Tout sélectionner
*body=cpBodyNew(1.0, cpMomentForPoly(1.0, ArraySize(vecBox()), @vecBox(), cpvzero) )
invalid access memory.
Publié : dim. 18/janv./2009 17:15
par Anonyme
ca ne fonctionnera jamais sous linux , le wrapper est trop complexe et trop "windozé" , c'est aussi pour cela que je te parlais de pointeur , plus simple a gerer...

Publié : dim. 18/janv./2009 18:13
par eddy
Cpl.Bator a écrit :ca ne fonctionnera jamais sous linux , le wrapper est trop complexe et trop "windozé" , c'est aussi pour cela que je te parlais de pointeur , plus simple a gerer...

ca n'a rien à voir avec Windows, ya aucune API dedans et j'ai changé qu'une ligne dans le source.
Ton problème est lié au compilateur et à la version de ton code source.
Le code est complexe parce que
les méthodes d'importation de PB sont limitées.
J'ai fait plein de macro pour palier à ce problème.
A tous les coups, c'est la manière dont il expose les paramètres de type structure qui change.

voilà ce qui se passe dans ma version:
Code : Tout sélectionner
cpBodyNew(1.0, cpMomentForPoly(1.0, ArraySize(vecBox()), @vecBox(), cpvzero\x, cpvzero\y) )

dans ta version ce serait ça:
Code : Tout sélectionner
cpBodyNew(1.0, cpMomentForPoly(1.0, ArraySize(vecBox()), @vecBox(), @cpvzero) )