demande d'aide - animation de personnage
demande d'aide - animation de personnage
salut les codeurs
je fais un simulateur de parapente
pour l'essentiel, j'ai terminé
il me reste juste a faire le bonhomme avec comme animation le mouvement des bras pour tirer sur les freins
le problème c'est que PB (pour l'instant) n'intègre pas la création d'animation (on peut juste les gérer)
est ce que l'un d'entre vous connait des logiciels permettant de créer des meshs avec animation ?
j'aimerais des conseils, je ne connais pas le domaine, et ça m'a pas l'air simple
(si besoin je dispose d'un mesh pouvant faire office de pilote, reste a créer l'animation (par morphing ou squelette)
je fais un simulateur de parapente
pour l'essentiel, j'ai terminé
il me reste juste a faire le bonhomme avec comme animation le mouvement des bras pour tirer sur les freins
le problème c'est que PB (pour l'instant) n'intègre pas la création d'animation (on peut juste les gérer)
est ce que l'un d'entre vous connait des logiciels permettant de créer des meshs avec animation ?
j'aimerais des conseils, je ne connais pas le domaine, et ça m'a pas l'air simple
(si besoin je dispose d'un mesh pouvant faire office de pilote, reste a créer l'animation (par morphing ou squelette)
Re: demande d'aide - animation de personnage
Je n'y connais rien en logiciel d'animation. C'est possible d'ajouter des bones dans ton mesh à la main.
1 - Télécharge OgreCommandLineTools_1.7.2
3 Pour avoir un exemple, tu utilises OgreXMLConverter pour convertir le robot.mesh et le robot.skeleton en fichiers xml
Le fichier skeleton est long car il contient les animations, si tu veux bouger ton mesh manuellement, tu n'en as pas besoin.
Ci-dessous le fichier skeleton du robot modifié (il reste juste la déclaration des bones et la hiérarchie) :
J'ai fait l'essai en supprimant les animations du robot, il fonctionne bien dans l'exemple EnableManualEntityBoneControl.pb
Le plus compliqué c'est d"affecter les bones aux vertex dans le fichier mesh.xml (regarde comment c'est fait avec le robot)
extrait :
Disons que ce truc peut-être utile avec des meshs et animations simples. Dans ton cas, ça risque d'être trop compliqué ?
1 - Télécharge OgreCommandLineTools_1.7.2
3 Pour avoir un exemple, tu utilises OgreXMLConverter pour convertir le robot.mesh et le robot.skeleton en fichiers xml
Le fichier skeleton est long car il contient les animations, si tu veux bouger ton mesh manuellement, tu n'en as pas besoin.
Ci-dessous le fichier skeleton du robot modifié (il reste juste la déclaration des bones et la hiérarchie) :
Code : Tout sélectionner
<skeleton>
<bones>
<bone id="0" name="Joint1">
<position x="0" y="51.5913" z="-0.0159202" />
<rotation angle="0">
<axis x="1" y="0" z="0" />
</rotation>
</bone>
<bone id="1" name="Joint2">
<position x="1.25659" y="-6.37357" z="-3.36696" />
<rotation angle="0">
<axis x="1" y="0" z="0" />
</rotation>
</bone>
<bone id="2" name="Joint3">
<position x="-1.37845" y="-21.1802" z="-4.04035" />
<rotation angle="0">
<axis x="1" y="0" z="0" />
</rotation>
</bone>
<bone id="3" name="Joint4">
<position x="-0.132187" y="-22.3265" z="-2.02017" />
<rotation angle="0">
<axis x="1" y="0" z="0" />
</rotation>
</bone>
<bone id="4" name="Joint5">
<position x="8.93628" y="-0.380359" z="0" />
<rotation angle="0">
<axis x="1" y="0" z="0" />
</rotation>
</bone>
<bone id="5" name="Joint6">
<position x="1.25659" y="-6.59769" z="3.81589" />
<rotation angle="0">
<axis x="1" y="0" z="0" />
</rotation>
</bone>
<bone id="6" name="Joint7">
<position x="-1.37845" y="-20.5078" z="3.59142" />
<rotation angle="0">
<axis x="1" y="0" z="0" />
</rotation>
</bone>
<bone id="7" name="Joint8">
<position x="-0.143204" y="-22.8124" z="2.24464" />
<rotation angle="0">
<axis x="1" y="0" z="0" />
</rotation>
</bone>
<bone id="8" name="Joint9">
<position x="8.93972" y="-0.168111" z="0.224463" />
<rotation angle="0">
<axis x="1" y="0" z="0" />
</rotation>
</bone>
<bone id="9" name="Joint10">
<position x="2.59993" y="7.38522" z="0.224464" />
<rotation angle="0">
<axis x="1" y="0" z="0" />
</rotation>
</bone>
<bone id="10" name="Joint11">
<position x="-2.60406" y="10.1826" z="0.224464" />
<rotation angle="0">
<axis x="1" y="0" z="0" />
</rotation>
</bone>
<bone id="11" name="Joint12">
<position x="0" y="10.5338" z="0" />
<rotation angle="0">
<axis x="1" y="0" z="0" />
</rotation>
</bone>
<bone id="12" name="Joint13">
<position x="0" y="-1.12062" z="-14.8146" />
<rotation angle="0">
<axis x="1" y="0" z="0" />
</rotation>
</bone>
<bone id="13" name="Joint14">
<position x="-3.68851" y="-12.335" z="-0.897854" />
<rotation angle="0">
<axis x="1" y="0" z="0" />
</rotation>
</bone>
<bone id="14" name="Joint15">
<position x="15.6188" y="-13.2904" z="-6.50945" />
<rotation angle="0">
<axis x="1" y="0" z="0" />
</rotation>
</bone>
<bone id="15" name="Joint16">
<position x="0" y="-0.896494" z="13.2434" />
<rotation angle="0">
<axis x="1" y="0" z="0" />
</rotation>
</bone>
<bone id="16" name="Joint17">
<position x="-3.68851" y="-12.7833" z="2.24464" />
<rotation angle="0">
<axis x="1" y="0" z="0" />
</rotation>
</bone>
<bone id="17" name="Joint18">
<position x="15.6188" y="-13.5145" z="6.73391" />
<rotation angle="0">
<axis x="1" y="0" z="0" />
</rotation>
</bone>
</bones>
<bonehierarchy>
<boneparent bone="Joint2" parent="Joint1" />
<boneparent bone="Joint3" parent="Joint2" />
<boneparent bone="Joint4" parent="Joint3" />
<boneparent bone="Joint5" parent="Joint4" />
<boneparent bone="Joint6" parent="Joint1" />
<boneparent bone="Joint7" parent="Joint6" />
<boneparent bone="Joint8" parent="Joint7" />
<boneparent bone="Joint9" parent="Joint8" />
<boneparent bone="Joint10" parent="Joint1" />
<boneparent bone="Joint11" parent="Joint10" />
<boneparent bone="Joint12" parent="Joint11" />
<boneparent bone="Joint13" parent="Joint11" />
<boneparent bone="Joint14" parent="Joint13" />
<boneparent bone="Joint15" parent="Joint14" />
<boneparent bone="Joint16" parent="Joint11" />
<boneparent bone="Joint17" parent="Joint16" />
<boneparent bone="Joint18" parent="Joint17" />
</bonehierarchy>
</skeleton>
Le plus compliqué c'est d"affecter les bones aux vertex dans le fichier mesh.xml (regarde comment c'est fait avec le robot)
extrait :
Code : Tout sélectionner
...
<boneassignments>
<vertexboneassignment vertexindex="0" boneindex="17" weight="1" />
<vertexboneassignment vertexindex="1" boneindex="17" weight="1" />
<vertexboneassignment vertexindex="2" boneindex="17" weight="1" />
...
...
<vertexboneassignment vertexindex="293" boneindex="10" weight="1" />
<vertexboneassignment vertexindex="294" boneindex="1" weight="1" />
</boneassignments>
</submesh>
</submeshes>
<skeletonlink name="robot.skeleton" />
</mesh>
Disons que ce truc peut-être utile avec des meshs et animations simples. Dans ton cas, ça risque d'être trop compliqué ?
http://purebasic.developpez.com/
Je ne réponds à aucune question technique en PV, utilisez le forum, il est fait pour ça, et la réponse peut profiter à tous.
Je ne réponds à aucune question technique en PV, utilisez le forum, il est fait pour ça, et la réponse peut profiter à tous.
Re: demande d'aide - animation de personnage
Bonjour,
En effet, l'animation est un domaine bien à part. J'avais un peut tâter de l'animation ici sous blender avec squelette, mais je n'ai pas continuer. J'avais bien galérer pour ci peut
Bon courage
@++
En effet, l'animation est un domaine bien à part. J'avais un peut tâter de l'animation ici sous blender avec squelette, mais je n'ai pas continuer. J'avais bien galérer pour ci peut
Bon courage
@++
Windows 10 x64, PureBasic 5.73 x86 & x64
GPU : radeon HD6370M, CPU : p6200 2.13Ghz
GPU : radeon HD6370M, CPU : p6200 2.13Ghz
Re: demande d'aide - animation de personnage
Un petit programme pour aider à affecter les vertex aux bones
plusieurs vertex partagent la même position, le code est à adapter pour sélectionner les vertex à afficher.
Par exemple , commente cette ligne
et valide celle ci
plusieurs vertex partagent la même position, le code est à adapter pour sélectionner les vertex à afficher.
Par exemple , commente cette ligne
Code : Tout sélectionner
For i=0 To MeshVertexCount(0)-1
Code : Tout sélectionner
;For i=0 To 10
Code : Tout sélectionner
;
#CameraSpeed = 1
#Camera = 0
IncludeFile #PB_Compiler_Home + "examples/3d/Screen3DRequester.pb"
Define.f KeyX, KeyY, MouseX, MouseY, RollZ, sens = -1
Dim Bone.s(18)
Global Dim MeshData.PB_MeshVertex(0)
Macro Text3D(No, Texte, Color, Alignment)
CreateText3D(No, Texte)
Text3DColor(No, Color)
Text3DAlignment(No, Alignment)
EndMacro
If InitEngine3D()
Add3DArchive(#PB_Compiler_Home + "examples/3d/Data/Textures", #PB_3DArchive_FileSystem)
Add3DArchive(#PB_Compiler_Home + "examples/3d/Data/fonts", #PB_3DArchive_FileSystem)
Add3DArchive(#PB_Compiler_Home + "examples/3d/Data/Models", #PB_3DArchive_FileSystem)
Add3DArchive(#PB_Compiler_Home + "examples/3d/Data/Packs/skybox.zip", #PB_3DArchive_Zip)
Add3DArchive(#PB_Compiler_Home + "examples/3d/Data/Scripts", #PB_3DArchive_FileSystem)
Parse3DScripts()
InitSprite()
InitKeyboard()
InitMouse()
If Screen3DRequester()
LoadMesh(0, "robot.mesh")
CreateMaterial(0, LoadTexture(0, "r2skin.jpg"))
MaterialShadingMode(0, #PB_Material_Wireframe)
CreateEntity(0, MeshID(0), MaterialID(0))
HideEntity(0,0)
RotateEntity(0, 0, -70, 0)
GetMeshData(0,0,MeshData(),#PB_Mesh_Vertex,0,MeshVertexCount(0)-1)
;For i=0 To 10
For i=0 To MeshVertexCount(0)-1
Text3D(i, Str(i), RGBA(Random(255), Random(255), Random(255), 255), #PB_Text3D_HorizontallyCentered | #PB_Text3D_VerticallyCentered)
ScaleText3D(i, 3, 3, 0)
ConvertLocalToWorldPosition(EntityID(0) ,MeshData(i)\x, MeshData(i)\y,MeshData(i)\z)
MoveText3D(i, GetX(),GetY(),GetZ(), #PB_Absolute)
Next
SkyBox("stevecube.jpg")
CreateCamera(0, 0, 0, 100, 100)
MoveCamera(0, 0, 40, 150, #PB_Absolute)
Repeat
Screen3DEvents()
If KeyboardPushed(#PB_Key_Left)
KeyX = -#CameraSpeed
ElseIf KeyboardPushed(#PB_Key_Right)
KeyX = #CameraSpeed
Else
KeyX = 0
EndIf
If KeyboardPushed(#PB_Key_Up)
KeyY = -#CameraSpeed
ElseIf KeyboardPushed(#PB_Key_Down)
KeyY = #CameraSpeed
Else
KeyY = 0
EndIf
If ExamineMouse()
MouseX = -(MouseDeltaX()/10)
MouseY = -(MouseDeltaY()/10)
EndIf
MoveCamera (#Camera, KeyX, 0, KeyY)
RotateCamera(#Camera, MouseY, MouseX, 0, #PB_Relative)
RenderWorld()
Screen3DStats()
FlipBuffers()
Until KeyboardPushed(#PB_Key_Escape) Or Quit = 1
EndIf
Else
MessageRequester("Error", "The 3D Engine can't be initialized",0)
EndIf
End
http://purebasic.developpez.com/
Je ne réponds à aucune question technique en PV, utilisez le forum, il est fait pour ça, et la réponse peut profiter à tous.
Je ne réponds à aucune question technique en PV, utilisez le forum, il est fait pour ça, et la réponse peut profiter à tous.
Re: demande d'aide - animation de personnage
ah, j'avais pas vu !
on est venu à mon secoure
salut comtois, content de te revoir
je vois que tu maitrise le sujet (à defaut des logiciels)
j'ai bien compris tes explications
(ça fonctionne comme j'imaginais)
j'espere que OgreXMLConverter fonctionne dans les 2 sens
j'ai ma petite idée pour affecter automatiquement les vertex aux os
pour chaque vertex je recherche le segment le plus proche :
(j'entends par segment la ligne délimitée par 2 joints (le termes bone n'est pas approprié, c'est des joints))
pour chaque segment (os du squelette) je calcule la distance minimum du vertex au segment:
distance = longueur ( vertex, intersection ( segment , droite perpendiculaire au segment passant par le vertex) ) (hum !, là je raisonne en 2d...)
et je retiens le segment qui minimise cette valeur
pour le poids, j'ai aussi ma petite idée
soit p le point d'intesection calculé ci dessus
d, la distance minimum
et j le 1er joint du segment
poids = clamp ( longueur ( p , j ) / d , 1)
si quelqu'un à compris mes explications je lui offre le resto ! (ah merde ils sont fermés...)
on est venu à mon secoure
salut comtois, content de te revoir
je vois que tu maitrise le sujet (à defaut des logiciels)
j'ai bien compris tes explications
(ça fonctionne comme j'imaginais)
j'espere que OgreXMLConverter fonctionne dans les 2 sens
j'ai ma petite idée pour affecter automatiquement les vertex aux os
pour chaque vertex je recherche le segment le plus proche :
(j'entends par segment la ligne délimitée par 2 joints (le termes bone n'est pas approprié, c'est des joints))
pour chaque segment (os du squelette) je calcule la distance minimum du vertex au segment:
distance = longueur ( vertex, intersection ( segment , droite perpendiculaire au segment passant par le vertex) ) (hum !, là je raisonne en 2d...)
et je retiens le segment qui minimise cette valeur
pour le poids, j'ai aussi ma petite idée
soit p le point d'intesection calculé ci dessus
d, la distance minimum
et j le 1er joint du segment
poids = clamp ( longueur ( p , j ) / d , 1)
si quelqu'un à compris mes explications je lui offre le resto ! (ah merde ils sont fermés...)
Re: demande d'aide - animation de personnage
Oui c'est le cas, mais tu l"as sûrement déjà expérimenté ou lu dans le fichier readme.
Oui j'ai tout comprissi quelqu'un à compris mes explications je lui offre le resto ! (ah merde ils sont fermés...)
sinon tu t'en sors ? Un début de résultat ?
http://purebasic.developpez.com/
Je ne réponds à aucune question technique en PV, utilisez le forum, il est fait pour ça, et la réponse peut profiter à tous.
Je ne réponds à aucune question technique en PV, utilisez le forum, il est fait pour ça, et la réponse peut profiter à tous.
Re: demande d'aide - animation de personnage
j'ai pas encore tester OgreXMLConverter
j'ai fais mon affectation automatique des vertex, ça marche bien
mais y'a encore d'autres problemes:
les mesh gratos que j'ai trouvés sur internet sont souvent truqués
par exemples:
les normals sont orientées sous un mauvais angle, le mesh à l'air joli, mais sont éclairage ne corresponds pas à la position de la lumiere
et le recalcule des normals ne fais qu'agravé le resultats, en effet les faces ne sont souvent pas reliées entres elles, les vertex auxquels elles sont reliées sont doublonnés, ce qui entraine un aspect anguleux
ils sont malins...
mais ils m'auront pas !
je suis sur une routine de dédoublonage
reste les coordonnées UV, là aussi j'ai vu des trucage, j'espere que ça sera récupérable
bref, les meshs, quand c'est gratuit, c'est pourri !
j'ai fais mon affectation automatique des vertex, ça marche bien
mais y'a encore d'autres problemes:
les mesh gratos que j'ai trouvés sur internet sont souvent truqués
par exemples:
les normals sont orientées sous un mauvais angle, le mesh à l'air joli, mais sont éclairage ne corresponds pas à la position de la lumiere
et le recalcule des normals ne fais qu'agravé le resultats, en effet les faces ne sont souvent pas reliées entres elles, les vertex auxquels elles sont reliées sont doublonnés, ce qui entraine un aspect anguleux
ils sont malins...
mais ils m'auront pas !
je suis sur une routine de dédoublonage
reste les coordonnées UV, là aussi j'ai vu des trucage, j'espere que ça sera récupérable
bref, les meshs, quand c'est gratuit, c'est pourri !
Re: demande d'aide - animation de personnage
Dans le zip tu as différents outils, dont notamment MeshMagick qui permet d"optimiser un mesh (je ne sais pas si ça changera quelque chose à tes meshs, mais ça vaut le coup d'essayer)
MeshMagick
----------
Command-line tool for performing operations on meshes and skeletons.
Usage:
MeshMagick [global_options] toolname [tool_options] infile(s) -- [outfile(s)]
Available Tools:
info - print information about the mesh.
meshmerge - Merge multiple submeshes into a single mesh.
optimise - Optimise meshes and skeletons.
rename - Rename different elements of meshes and skeletons.
transform - Scale, rotate or otherwise transform a mesh.
See MeshMagick -help=toolname for more detailed information.
http://purebasic.developpez.com/
Je ne réponds à aucune question technique en PV, utilisez le forum, il est fait pour ça, et la réponse peut profiter à tous.
Je ne réponds à aucune question technique en PV, utilisez le forum, il est fait pour ça, et la réponse peut profiter à tous.
Re: demande d'aide - animation de personnage
salut guillot , je sais faire du low poly sous blender et l'animé.
Bip moi sur discord en mp si tu as besoin ( cpl.bator ) , je suis sur le discord de Falsam.
on tâtonnera tout les 2 pour l'export sur ogre ( jamais fait ) , mais j'y arrive pour d'autres engine , y a pas de raison que cela ne marche pas.
Bip moi sur discord en mp si tu as besoin ( cpl.bator ) , je suis sur le discord de Falsam.
on tâtonnera tout les 2 pour l'export sur ogre ( jamais fait ) , mais j'y arrive pour d'autres engine , y a pas de raison que cela ne marche pas.
Re: demande d'aide - animation de personnage
Joli !
http://HexaScrabble.com/
!i!i!i!i!i!i!i!i!i!
!i!i!i!i!i!i!
!i!i!i!
//// Informations ////
Intel Core i7 4770 64 bits - GTX 650 Ti
Version de PB : 6.00 - 64 bits
!i!i!i!i!i!i!i!i!i!
!i!i!i!i!i!i!
!i!i!i!
//// Informations ////
Intel Core i7 4770 64 bits - GTX 650 Ti
Version de PB : 6.00 - 64 bits
Re: demande d'aide - animation de personnage
salut les gars,
à comtois :
bon, ça commence à marcher, mais pour l'instant c'est elasticman
j'arrive pas convertir ninja.skeleton, ça marche chez toi ?
j'ai pas regardé meshmagick, pour l'instnat j'en ai pas l'utilité
à G-rom : salut et merci de ta proposition, mais finalement je vais me demerder moi même avec ogrexmlconverter
cela dit, je retiens quand même ta proposition
(marrant ton petit bonhomme qui dodeline de la tête)
à comtois :
bon, ça commence à marcher, mais pour l'instant c'est elasticman
j'arrive pas convertir ninja.skeleton, ça marche chez toi ?
j'ai pas regardé meshmagick, pour l'instnat j'en ai pas l'utilité
à G-rom : salut et merci de ta proposition, mais finalement je vais me demerder moi même avec ogrexmlconverter
cela dit, je retiens quand même ta proposition
(marrant ton petit bonhomme qui dodeline de la tête)
Re: demande d'aide - animation de personnage
bip quand tu veut
Re: demande d'aide - animation de personnage
Il y a quoi dans ton fichier OgreXMLConverter.log ? Voici le mien
22:35:11: Creating resource group General
22:35:11: Creating resource group Internal
22:35:11: Creating resource group Autodetect
22:35:11: Registering ResourceManager for type Mesh
22:35:11: Registering ResourceManager for type Material
22:35:11: Registering ResourceManager for type Skeleton
22:35:11: XMLSkeletonSerializer writing skeleton data to C:\Users\xxx\Downloads\OgreCommandLineTools_1.7.2\ninja.skeleton.xml...
22:35:11: Populating DOM...
22:35:11: Exporting bones..
22:35:11: There are 28 bones.
22:35:11: Exporting Bone number 0
22:35:11: Exporting Bone number 1
22:35:11: Exporting Bone number 2
22:35:11: Exporting Bone number 3
22:35:11: Exporting Bone number 4
22:35:11: Exporting Bone number 5
22:35:11: Exporting Bone number 6
22:35:11: Exporting Bone number 7
22:35:11: Exporting Bone number 8
22:35:11: Exporting Bone number 9
22:35:11: Exporting Bone number 10
22:35:11: Exporting Bone number 11
22:35:11: Exporting Bone number 12
22:35:11: Exporting Bone number 13
22:35:11: Exporting Bone number 14
22:35:11: Exporting Bone number 15
22:35:11: Exporting Bone number 16
22:35:11: Exporting Bone number 17
22:35:11: Exporting Bone number 18
22:35:11: Exporting Bone number 19
22:35:11: Exporting Bone number 20
22:35:11: Exporting Bone number 21
22:35:11: Exporting Bone number 22
22:35:11: Exporting Bone number 23
22:35:11: Exporting Bone number 24
22:35:11: Exporting Bone number 25
22:35:11: Exporting Bone number 26
22:35:11: Exporting Bone number 27
22:35:11: Bones exported.
22:35:11: Exporting animations, count=20
22:35:11: Exporting animation: Attack1
22:35:11: Animation exported.
22:35:11: Exporting animation: Attack2
22:35:11: Animation exported.
22:35:11: Exporting animation: Attack3
22:35:11: Animation exported.
22:35:11: Exporting animation: Backflip
22:35:11: Animation exported.
22:35:11: Exporting animation: Block
22:35:11: Animation exported.
22:35:11: Exporting animation: Climb
22:35:11: Animation exported.
22:35:11: Exporting animation: Crouch
22:35:11: Animation exported.
22:35:11: Exporting animation: Death1
22:35:11: Animation exported.
22:35:11: Exporting animation: Death2
22:35:11: Animation exported.
22:35:11: Exporting animation: HighJump
22:35:11: Animation exported.
22:35:11: Exporting animation: Idle1
22:35:11: Animation exported.
22:35:11: Exporting animation: Idle2
22:35:11: Animation exported.
22:35:11: Exporting animation: Idle3
22:35:11: Animation exported.
22:35:11: Exporting animation: Jump
22:35:11: Animation exported.
22:35:11: Exporting animation: JumpNoHeight
22:35:11: Animation exported.
22:35:11: Exporting animation: Kick
22:35:11: Animation exported.
22:35:11: Exporting animation: SideKick
22:35:11: Animation exported.
22:35:11: Exporting animation: Spin
22:35:11: Animation exported.
22:35:11: Exporting animation: Stealth
22:35:11: Animation exported.
22:35:11: Exporting animation: Walk
22:35:11: Animation exported.
22:35:11: DOM populated, writing XML file..
22:35:11: XMLSkeletonSerializer export successful.
22:35:11: Unregistering ResourceManager for type Skeleton
22:35:11: Unregistering ResourceManager for type Material
22:35:11: Unregistering ResourceManager for type Mesh
Le fichier sans les animations.
<skeleton>
<bones>
<bone id="0" name="Joint1">
<position x="0.185046" y="0.51196" z="0" />
<rotation angle="0">
<axis x="1" y="0" z="0" />
</rotation>
</bone>
<bone id="1" name="Joint2">
<position x="0" y="108.105" z="-1.56659" />
<rotation angle="0">
<axis x="1" y="0" z="0" />
</rotation>
</bone>
<bone id="2" name="Joint3">
<position x="0.421854" y="9.67481" z="-1.0444" />
<rotation angle="0">
<axis x="1" y="0" z="0" />
</rotation>
</bone>
<bone id="3" name="Joint4">
<position x="0.421854" y="8.41288" z="-3.72529e-007" />
<rotation angle="0">
<axis x="1" y="0" z="0" />
</rotation>
</bone>
<bone id="4" name="Joint5">
<position x="-0.843709" y="17.1516" z="-1.02305" />
<rotation angle="0">
<axis x="1" y="0" z="0" />
</rotation>
</bone>
<bone id="5" name="Joint6">
<position x="3.72529e-008" y="19.7703" z="2.61099" />
<rotation angle="0">
<axis x="1" y="0" z="0" />
</rotation>
</bone>
<bone id="6" name="Joint7">
<position x="0" y="4.74305" z="-1.0444" />
<rotation angle="0">
<axis x="1" y="0" z="0" />
</rotation>
</bone>
<bone id="7" name="Joint8">
<position x="-0.185046" y="9.18524" z="-3.08366" />
<rotation angle="0">
<axis x="1" y="0" z="0" />
</rotation>
</bone>
<bone id="8" name="Joint9">
<position x="14.3431" y="-3.65739" z="6.76722" />
<rotation angle="0">
<axis x="1" y="0" z="0" />
</rotation>
</bone>
<bone id="9" name="Joint10">
<position x="5.90596" y="-2.02329" z="0" />
<rotation angle="0">
<axis x="1" y="0" z="0" />
</rotation>
</bone>
<bone id="10" name="Joint11">
<position x="3.37483" y="-29.4451" z="-5.74418" />
<rotation angle="0">
<axis x="1" y="0" z="0" />
</rotation>
</bone>
<bone id="11" name="Joint12">
<position x="1.33815" y="-28.6038" z="-3.13318" />
<rotation angle="0">
<axis x="1" y="0" z="0" />
</rotation>
</bone>
<bone id="12" name="Joint13">
<position x="0.136921" y="-6.24266" z="-3.42546" />
<rotation angle="0">
<axis x="1" y="0" z="0" />
</rotation>
</bone>
<bone id="13" name="Joint29">
<position x="-0.0284957" y="-5.80133" z="-76.0905" />
<rotation angle="0">
<axis x="1" y="0" z="0" />
</rotation>
</bone>
<bone id="14" name="Joint14">
<position x="-14.3431" y="-3.69103" z="6.76722" />
<rotation angle="0">
<axis x="1" y="0" z="0" />
</rotation>
</bone>
<bone id="15" name="Joint15">
<position x="-7.17153" y="-2.10322" z="0" />
<rotation angle="0">
<axis x="1" y="0" z="0" />
</rotation>
</bone>
<bone id="16" name="Joint16">
<position x="-2.53113" y="-28.6038" z="-5.74418" />
<rotation angle="0">
<axis x="1" y="0" z="0" />
</rotation>
</bone>
<bone id="17" name="Joint17">
<position x="-1.68742" y="-30.2864" z="-3.13318" />
<rotation angle="0">
<axis x="1" y="0" z="0" />
</rotation>
</bone>
<bone id="18" name="Joint18">
<position x="9.70265" y="-8.41289" z="-2.08879" />
<rotation angle="0">
<axis x="1" y="0" z="0" />
</rotation>
</bone>
<bone id="19" name="Joint19">
<position x="2.95298" y="-43.747" z="1.56659" />
<rotation angle="0">
<axis x="1" y="0" z="0" />
</rotation>
</bone>
<bone id="20" name="Joint20">
<position x="-0.843709" y="-46.1989" z="11.34" />
<rotation angle="0">
<axis x="1" y="0" z="0" />
</rotation>
</bone>
<bone id="21" name="Joint21">
<position x="1.43906" y="-9.37045" z="-13.1049" />
<rotation angle="0">
<axis x="1" y="0" z="0" />
</rotation>
</bone>
<bone id="22" name="Joint22">
<position x="0.421854" y="-0.438055" z="-7.61888" />
<rotation angle="0">
<axis x="1" y="0" z="0" />
</rotation>
</bone>
<bone id="23" name="Joint23">
<position x="-8.85894" y="-8.41289" z="-2.08879" />
<rotation angle="0">
<axis x="1" y="0" z="0" />
</rotation>
</bone>
<bone id="24" name="Joint24">
<position x="-3.37484" y="-43.3263" z="1.56659" />
<rotation angle="0">
<axis x="1" y="0" z="0" />
</rotation>
</bone>
<bone id="25" name="Joint25">
<position x="-0.843709" y="-46.6195" z="11.34" />
<rotation angle="0">
<axis x="1" y="0" z="0" />
</rotation>
</bone>
<bone id="26" name="Joint26">
<position x="-0.557851" y="-9.7911" z="-13.1049" />
<rotation angle="0">
<axis x="1" y="0" z="0" />
</rotation>
</bone>
<bone id="27" name="Joint27">
<position x="0" y="-0.017411" z="-7.61888" />
<rotation angle="0">
<axis x="1" y="0" z="0" />
</rotation>
</bone>
</bones>
<bonehierarchy>
<boneparent bone="Joint2" parent="Joint1" />
<boneparent bone="Joint3" parent="Joint2" />
<boneparent bone="Joint4" parent="Joint3" />
<boneparent bone="Joint5" parent="Joint4" />
<boneparent bone="Joint6" parent="Joint5" />
<boneparent bone="Joint7" parent="Joint6" />
<boneparent bone="Joint8" parent="Joint7" />
<boneparent bone="Joint9" parent="Joint6" />
<boneparent bone="Joint10" parent="Joint9" />
<boneparent bone="Joint11" parent="Joint10" />
<boneparent bone="Joint12" parent="Joint11" />
<boneparent bone="Joint13" parent="Joint12" />
<boneparent bone="Joint29" parent="Joint13" />
<boneparent bone="Joint14" parent="Joint6" />
<boneparent bone="Joint15" parent="Joint14" />
<boneparent bone="Joint16" parent="Joint15" />
<boneparent bone="Joint17" parent="Joint16" />
<boneparent bone="Joint18" parent="Joint2" />
<boneparent bone="Joint19" parent="Joint18" />
<boneparent bone="Joint20" parent="Joint19" />
<boneparent bone="Joint21" parent="Joint20" />
<boneparent bone="Joint22" parent="Joint21" />
<boneparent bone="Joint23" parent="Joint2" />
<boneparent bone="Joint24" parent="Joint23" />
<boneparent bone="Joint25" parent="Joint24" />
<boneparent bone="Joint26" parent="Joint25" />
<boneparent bone="Joint27" parent="Joint26" />
</bonehierarchy>
</skeleton>
http://purebasic.developpez.com/
Je ne réponds à aucune question technique en PV, utilisez le forum, il est fait pour ça, et la réponse peut profiter à tous.
Je ne réponds à aucune question technique en PV, utilisez le forum, il est fait pour ça, et la réponse peut profiter à tous.
Re: demande d'aide - animation de personnage
j'ai le même log
mais pas de fichier ninja.skeleton version xml
comment t'as pu l'avoir ?
peut etre que la dll ogre ou ogrexmlconverter ne correspond pas à notre version d'ogre
mais pas de fichier ninja.skeleton version xml
comment t'as pu l'avoir ?
peut etre que la dll ogre ou ogrexmlconverter ne correspond pas à notre version d'ogre
Re: demande d'aide - animation de personnage
je copie les fichiers que je veux convertir dans le dossier OgreCommandLineTools_1.7.2
et ensuite tu peux faire un drag&drop de ninja.skeleton sur le fichier OgreXMLConverter.exe
(ou en passant par une fenêtre cmd)
Si tu as le log tu dois avoir ton fichier, cherche bien
PureBasic utilise la version 1.8.2 (Byatis). Je n'ai jamais eu de problème avec les outils 1.7.2. Pour en avoir le coeur net tu peux toujours récupérer OgreXMLConverter dans un SDK 1.8peut etre que la dll ogre ou ogrexmlconverter ne correspond pas à notre version d'ogre
https://www.ogre3d.org/download/archives
télécharge OGRE 1.8.1 SDK for Visual C++ 2010 (32-bit), après exécution du fichier tu trouveras les outils dans le répertoire G:\OgreSDK_vc10_v1-8-1\bin\release
http://purebasic.developpez.com/
Je ne réponds à aucune question technique en PV, utilisez le forum, il est fait pour ça, et la réponse peut profiter à tous.
Je ne réponds à aucune question technique en PV, utilisez le forum, il est fait pour ça, et la réponse peut profiter à tous.