Page 2 sur 5
Crazy Sheep
Publié : dim. 31/août/2014 11:00
par MetalOS
Le problème avec Cheetah3D c'est qu'il n'existe pas de script pour convertir en *.mesh. Du coup j'importe mes créations dans blender pour les convertirent. Du moins j'essaye car pour le moment je n'y arrive pas.
Re: Crazy Sheep
Publié : dim. 31/août/2014 11:16
par Cool Dji
Salut MetalOS,
C'est vraiment joli

, bravo
Pour convertir, il ya Deled Engine
http://www.delgine.com/ qui convertit bien en .mesh ou .xml (je le trouve bien plus pratique que le convertisseur de Blender).
Deled Engine n'a pas de fonctions très poussées et le dev à l'air d'être stoppé mais il a beaucoup de formats d'imports disponible
Re: Crazy Sheep
Publié : dim. 31/août/2014 12:09
par MetalOS
Cool merci de l'info je vais tester ça.
Re: Crazy Sheep
Publié : dim. 31/août/2014 12:33
par microdevweb
Très joli , perso j'utilise C4D pour la mdélisation
Re: Crazy Sheep
Publié : dim. 31/août/2014 15:01
par MetalOS
C4D et déjà un peut plus complexe.
Grace au logiciel de Cool Dji j'ai réussi à convertir ma scène au format mesh, mais il m'a aussi généré un fichier en *.materiel et un fichier color.bmp. Je suppose que le fichier *.material sont les textures de la scène mais comment les charger dans PB ?
Re: Crazy Sheep
Publié : dim. 31/août/2014 15:16
par Cool Dji
ça se charge automatiquement en ne spécifiant pas de matériel dans l'entity que tu crée.
CreateEntity :
"Si la commande Parse3DScripts() a été utilisée, la constante #PB_Material_None peut être utilisée afin de prendre en compte les matières du script '.material' associé au mesh. "
C'est avec Deled qu'ont été réalisés les décors des exemples 3D de PB...
Re: Crazy Sheep
Publié : dim. 31/août/2014 15:33
par MetalOS
Ok merci Cool Dji
Re: Crazy Sheep
Publié : dim. 31/août/2014 15:50
par MetalOS
Je vient de faire un test rapide avec le code d'exemple SkyBox ou je charge mon fichier *.mesh
Code : Tout sélectionner
;
; ------------------------------------------------------------
;
; PureBasic - SkyBox
;
; (c) Fantaisie Software
;
; ------------------------------------------------------------
;
; Thanks to Steve 'Sinbad' Streeting for the nice SkyBox !
;
; Use [F2]/[F3] to change SkyBox's texture
; Use [F4] to disable SkyBox
#CameraSpeed = 1
Enumeration
#MainWindow
#Editor
EndEnumeration
IncludeFile #PB_Compiler_Home + "examples/3d/Screen3DRequester.pb"
Define.f KeyX, KeyY, MouseX, MouseY, RatioX, RatioY
If InitEngine3D()
Add3DArchive(#PB_Compiler_Home + "examples/3d/Data/Textures", #PB_3DArchive_FileSystem)
Add3DArchive(#PB_Compiler_Home + "examples/3d/Data/Models", #PB_3DArchive_FileSystem)
Add3DArchive(#PB_Compiler_Home + "examples/3d/Data/Packs/desert.zip", #PB_3DArchive_Zip)
Add3DArchive(#PB_Compiler_Home + "examples/3d/Data/Packs/skybox.zip", #PB_3DArchive_Zip)
Add3DArchive(#PB_Compiler_Home + "examples/3d/Data/Scripts", #PB_3DArchive_FileSystem)
Add3DArchive(#PB_Compiler_Home + "examples/3d/Data/GUI", #PB_3DArchive_FileSystem)
Parse3DScripts()
InitSprite()
InitKeyboard()
InitMouse()
If Screen3DRequester()
;-Entity
CreateEntity(0, LoadMesh(0, "Planete.mesh"), #PB_Material_None)
;-Camera
CreateCamera(0,0,0,100,100)
MoveCamera(0,0,0,4, #PB_Absolute)
CameraBackColor(0, RGB(19, 34, 49))
;-GUI
RatioX = CameraViewWidth(0) / 1920
RatioY = CameraViewHeight(0) / 1080
OpenWindow3D(#MainWindow, 10, 10, 570 * RatioX, 180 * RatioY, "SkyBox")
EditorGadget3D(#Editor, 10 * RatioX, 20 * RatioY, 530 * RatioX, 90 * RatioY, #PB_Editor3D_ReadOnly)
SetGadgetText3D(#Editor, "[F2]/[F3] = Change SkyBox " + Chr(10) + "[F4] = Disable SkyBox")
ShowGUI(155, 0)
Repeat
Screen3DEvents()
If ExamineMouse()
MouseX = -MouseDeltaX() * #CameraSpeed * 0.05
MouseY = -MouseDeltaY() * #CameraSpeed * 0.05
EndIf
If ExamineKeyboard()
If KeyboardReleased(#PB_Key_F2)
SkyBox("stevecube.jpg")
ElseIf KeyboardReleased(#PB_Key_F3)
SkyBox("desert07.jpg")
ElseIf KeyboardReleased(#PB_Key_F4)
SkyBox("")
EndIf
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
EndIf
RotateCamera(0, MouseY, MouseX, 0, #PB_Relative)
MoveCamera (0, KeyX, 0, KeyY)
RenderWorld()
FlipBuffers()
Until KeyboardPushed(#PB_Key_Escape) Or Quit = 1
EndIf
Else
MessageRequester("Error", "The 3D Engine can't be initialized", 0)
EndIf
End
et voici ce que ca me donne, les textures ne sont pas chargées.

Re: Crazy Sheep
Publié : dim. 31/août/2014 16:33
par falsam
Meme le ciel ne s'affiche pas !!
Peut tu essayer ce code ?
Code : Tout sélectionner
Enumeration
#Mainform
EndEnumeration
Global Event
Global WindowStyle.i=#PB_Window_MinimizeGadget|#PB_Window_MaximizeGadget|#PB_Window_ScreenCentered
Procedure Open_MainForm(Width=#PB_Ignore, Height=#PB_Ignore)
ExamineDesktops()
If Width = #PB_Ignore : Width = DesktopWidth(0) : EndIf
If Height = #PB_Ignore : Height = DesktopHeight(0) : EndIf
OpenWindow(#Mainform,0,0,Width, Height, "", #PB_Window_SystemMenu | #PB_Window_ScreenCentered)
OpenWindowedScreen(WindowID(#Mainform),0,0,Width,Height,0, 0, 0)
KeyboardMode(#PB_Keyboard_International)
EndProcedure
Procedure Load_Scene()
Add3DArchive(#PB_Compiler_Home + "Examples\3D\Data\Packs\desert.zip", #PB_3DArchive_Zip)
SkyBox("desert07.jpg")
;Lumiere et ombre
AmbientColor(RGB(127, 127, 127))
CreateLight(#PB_Any,RGB(151, 251, 151), -1.8, 10, 5)
WorldShadows(#PB_Shadow_Additive)
; Une camera
Camera = CreateCamera(#PB_Any,0,0,100,100)
CameraBackColor(Camera, RGB(145, 182, 201))
MoveCamera(Camera, 2, 5, 15, #PB_Absolute)
CameraLookAt(Camera, 0,0,0)
EndProcedure
Procedure Start()
If Not (InitEngine3D()=0 Or InitKeyboard()=0 Or InitSprite()=0 Or InitMouse()=0)
Open_MainForm()
Load_Scene()
EndIf
EndProcedure
start()
Repeat
Repeat
Event = WindowEvent()
Select Event
Case #PB_Event_CloseWindow
End
EndSelect
Until Event = 0
If ExamineKeyboard()
If KeyboardPushed (#PB_Key_Escape)
Break
EndIf
EndIf
; Affiche le rendu de la sc?ne
ClearScreen(RGB(0, 0, 0))
RenderWorld(80)
FlipBuffers()
ForEver
Re: Crazy Sheep
Publié : dim. 31/août/2014 17:26
par MetalOS
Le code fonction falsam. J'ai trouvé le problème il semblerais que le programme de CoolDji n'exporte pas les textures de ma scène. je vais tenter avec autre chose.
Re: Crazy Sheep
Publié : dim. 31/août/2014 17:38
par falsam
MetalOS a écrit :Le code fonction falsam. J'ai trouvé le problème il semblerais que le programme de CoolDji n'exporte pas les textures de ma scène. je vais tenter avec autre chose.
J'utilise depuis pas mal de temps Deled 2.45 et le plugin d'exportation vers Ogre 3D fonctionne bien.
Peut être que tu as mal paramétrer ce plugin.
j'ai testé un exemple et voila comment est paramétré ce plugin d'export pour ogre.

Re: Crazy Sheep
Publié : dim. 31/août/2014 17:52
par MetalOS
Oui il est paramétré de la même façon mais le résultat et le même. Peut être une option oublier dans mon logiciel de modélisation.
Re: Crazy Sheep
Publié : dim. 31/août/2014 17:57
par falsam
je pense que tu exportes chacun de tes entités. Tu as au moins le mesh. Dans ce cas tu peux créer le matériel correspondant à chacun de tes entités.
Re: Crazy Sheep
Publié : dim. 31/août/2014 18:14
par MetalOS
Je vais faire quelques test.
Re: Crazy Sheep
Publié : lun. 01/sept./2014 16:22
par MetalOS
Ok j'ai refais un nouveau test en ajoutant cette fois un CreateLight et voici le résultat.
