Sphere avec projection
Sphere avec projection
Salut les amis,
J'aurai besoin de vos avis sur la possibilité de créer la planète Terre en 3D avec possibilité de projeter des points avec coordonnées géographique.
Voici la carte que je compte utiliser comme texture sur une sphère.
http://www.shadedrelief.com/natural3/pa ... tures.html
Pensez vous que c'est réalisable et si oui faut il créer l'objet en 3D d'une certaine manière pour utiliser la projection de la carte ?
Merci d'avance pour votre aide.
J'aurai besoin de vos avis sur la possibilité de créer la planète Terre en 3D avec possibilité de projeter des points avec coordonnées géographique.
Voici la carte que je compte utiliser comme texture sur une sphère.
http://www.shadedrelief.com/natural3/pa ... tures.html
Pensez vous que c'est réalisable et si oui faut il créer l'objet en 3D d'une certaine manière pour utiliser la projection de la carte ?
Merci d'avance pour votre aide.
Re: Sphere avec projection
bonjour MetalOS
il y a un très bon post sur le forum anglais qui traite des projections sans OpenGL
Mickael Vogel à fait un truc top
Mais voir aussi le code de BasicallyPure qui me semble intéressant.
http://www.purebasic.fr/english/viewtop ... 3&start=25
Cordialement
il y a un très bon post sur le forum anglais qui traite des projections sans OpenGL
Mickael Vogel à fait un truc top
Mais voir aussi le code de BasicallyPure qui me semble intéressant.
http://www.purebasic.fr/english/viewtop ... 3&start=25
Cordialement
Dernière modification par kernadec le mar. 18/nov./2014 10:44, modifié 2 fois.
Re: Sphere avec projection
Je vais regarder ça merci kernadec.
Re: Sphere avec projection
Je ne comprend pas la texture sur ma terre ne s'applique pas. Voici une archive avec un code de test le mesh et sa texture.
http://infoprojectsoftware.free.fr/Earth.zip
Si quelqu'un peut tester et me dire si il à le même problème.
http://infoprojectsoftware.free.fr/Earth.zip
Si quelqu'un peut tester et me dire si il à le même problème.
Re: Sphere avec projection
Hello MetalOs,
Idemtout blanc, pas certain que l'UV du Mesh soit ok
Idemtout blanc, pas certain que l'UV du Mesh soit ok
Only PureBasic makes it possible
Re: Sphere avec projection
J'ai essayé de faire le mesh sur blender mais je ne connais pas ce logiciel.
Re: Sphere avec projection
Ok, je ne suis pas un pro dans Blender mais il me semble que si tu ne génère pas d'UV de ton Mesh, la material ne sera pas placé correctement...
Il y a quelques Youtube sur le sujet...
https://www.youtube.com/watch?v=MfQCmQHcVY8
Sinon, pour la transformation en mesh, tu réussi à générer l'export depuis Blender ?
Avec la 2.71, je n'ai pas réussi à refaire marcher l'export Ogre => j'exporte donc en .obj depuis blender et convertit avec Delengine en .mesh
Il y a quelques Youtube sur le sujet...
https://www.youtube.com/watch?v=MfQCmQHcVY8
Sinon, pour la transformation en mesh, tu réussi à générer l'export depuis Blender ?
Avec la 2.71, je n'ai pas réussi à refaire marcher l'export Ogre => j'exporte donc en .obj depuis blender et convertit avec Delengine en .mesh
Only PureBasic makes it possible
Re: Sphere avec projection
J'utilise la version 2.65 pour pouvoir exporter en *.mesh.xml puis ensuite j'utilise un outils de chez Ogre pour convertir le xml en *.mesh.
Je vais regarder la video. Merci Cool Dji.
Je vais regarder la video. Merci Cool Dji.
Re: Sphere avec projection
Magnifique le site de ressource pour des cartes de la planète !
_________________________________________________
Mon site : CeriseCode (Attention Chantier perpétuel )
Mon site : CeriseCode (Attention Chantier perpétuel )
Re: Sphere avec projection
Je suis tombé dessus par hasard. Impossible d'appliquer la texture à l'UV Sphere sous Blender malgré le tuto vidéo. C'est une vrai usine à gaz se truc.graph100 a écrit :Magnifique le site de ressource pour des cartes de la planète !
Re: Sphere avec projection
Toujours pour ce projet je cherche à tester l'exemple SkyDome de PB dans une fenêtre avec OpenWindowedScreen() mais je rencontre un problème. Il faut que je bouge la souris ou que j'actionne les touches du clavier pour faire bouger le monde 3D. Voici mon exemple.
Code : Tout sélectionner
;By MetalOS
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/Scripts", #PB_3DArchive_FileSystem)
Add3DArchive(#PB_Compiler_Home + "examples/3d/Data/GUI", #PB_3DArchive_FileSystem)
Parse3DScripts()
InitSprite()
InitKeyboard()
#CameraSpeed = 1
;- Global Variables and Constants
Global BubbleTipStyle.l:BubbleTipStyle=0
;- Window Constants
Enumeration 1
#Window_Form1
EndEnumeration
#WindowIndex=#PB_Compiler_EnumerationValue
Define.f KeyX, KeyY
;- Gadget Constants
Enumeration 1
;Window_Form1
EndEnumeration
#GadgetIndex=#PB_Compiler_EnumerationValue
Procedure.l Window_Form1()
If OpenWindow(#Window_Form1,124,63,710,565,"Test 3D.",#PB_Window_SystemMenu|#PB_Window_MinimizeGadget|#PB_Window_ScreenCentered|#PB_Window_WindowCentered|#PB_Window_Invisible)
If OpenWindowedScreen(WindowID(#Window_Form1), 5, 5, 700, 500, 0,0,0)
AmbientColor(RGB(255, 255, 255))
CreateMaterial(0, LoadTexture(0, "r2skin.jpg"))
CreateEntity (0, LoadMesh(0, "robot.mesh"), MaterialID(0), 0, 0, 0)
RotateEntity(0, 30, 180, 0)
SkyDome("clouds.jpg", 30)
;- Camera
CreateCamera(0, 0, 0, 100, 100)
MoveCamera(0, 0, 0, 400, #PB_Absolute)
CameraBackColor(0, RGB(19, 34, 49))
EndIf
HideWindow(#Window_Form1,0)
ProcedureReturn WindowID(#Window_Form1)
EndIf
EndProcedure
;- Main Loop
If Window_Form1()
quitForm1=0
Repeat
EventID =WaitWindowEvent()
MenuID =EventMenu()
GadgetID =EventGadget()
WindowID =EventWindow()
If ExamineKeyboard()
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
Select EventID
Case #PB_Event_CloseWindow
If WindowID=#Window_Form1
quitForm1=1
EndIf
Case #PB_Event_Gadget
Select GadgetID
EndSelect
EndSelect
MoveCamera (0, KeyX, 0, KeyY)
RenderWorld()
FlipBuffers()
Until quitForm1
CloseWindow(#Window_Form1)
EndIf
End
- falsam
- Messages : 7244
- Inscription : dim. 22/août/2010 15:24
- Localisation : IDF (Yvelines)
- Contact :
Re: Sphere avec projection
Dans WaitWindowEvent() il y a ...... wait
Remplace WaitWindowEvent() par WindowEvent()
Remplace WaitWindowEvent() par WindowEvent()
Configuration : Windows 11 Famille 64-bit - PB 6.03 x64 - AMD Ryzen 7 - 16 GO RAM
Vidéo NVIDIA GeForce GTX 1650 Ti - Résolution 1920x1080 - Mise à l'échelle 125%
Vidéo NVIDIA GeForce GTX 1650 Ti - Résolution 1920x1080 - Mise à l'échelle 125%
Re: Sphere avec projection
Mercifalsam a écrit :Dans WaitWindowEvent() il y a ...... wait
Remplace WaitWindowEvent() par WindowEvent()
- falsam
- Messages : 7244
- Inscription : dim. 22/août/2010 15:24
- Localisation : IDF (Yvelines)
- Contact :
Re: Sphere avec projection
Je pense que ta boucle événementielle n'est pas stable car elle ne vide pas systématiquement la pile des événements windows ce qui pourrait provoquer un crash de ton application (Il est vrai qu'avec ton code actuel la probabilité est faible)
Tu noteras l'apparition de 2 repeat dont un pour les événements windows.
Code : Tout sélectionner
If Window_Form1()
Repeat
;Evenement Windows
Repeat
Event = WindowEvent()
MenuID = EventMenu()
GadgetID = EventGadget()
WindowID = EventWindow()
Select Event
Case #PB_Event_CloseWindow
End
EndSelect
Until Event = 0
;Evenements 3D
If ExamineKeyboard()
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 KeyboardPushed (#PB_Key_Escape)
Break
EndIf
EndIf
MoveCamera (0, KeyX, 0, KeyY)
; Affiche le rendu de la scéne
RenderWorld(80)
FlipBuffers()
ForEver
EndIf
Configuration : Windows 11 Famille 64-bit - PB 6.03 x64 - AMD Ryzen 7 - 16 GO RAM
Vidéo NVIDIA GeForce GTX 1650 Ti - Résolution 1920x1080 - Mise à l'échelle 125%
Vidéo NVIDIA GeForce GTX 1650 Ti - Résolution 1920x1080 - Mise à l'échelle 125%
Re: Sphere avec projection
Ca me permet aussi de m'y retrouver plus facilement entre la gestion de la 3D et la gestion des Gadget de la Window. Merci falsam.