Publié : sam. 06/janv./2007 13:41
				
				Ok merci, j'ai déjà mieu compris certaine choses, et je vais lire et relire ce que tu a écris pour bien tout comprendre  
			Code : Tout sélectionner
  If Mouse\x > 0 And DM_EntityPitch(*camera) < 60
    DM_TurnEntity(*camera, Mouse\x, 0, 0)
  ElseIf Mouse\x < 0 And DM_EntityPitch(*camera) > -60
    DM_TurnEntity(*camera, Mouse\x, 0, 0)
  EndIfCode : Tout sélectionner
  If Mouse\x > 0 And DM_EntityPitch(*camera) > -60
    DM_TurnEntity(*camera, Mouse\x, 0, 0)
  ElseIf Mouse\x < 0 And DM_EntityPitch(*camera) < 60
    DM_TurnEntity(*camera, Mouse\x, 0, 0)
  EndIfCode : Tout sélectionner
        ; récupère les vertex associé, '*resul' étant le mesh resultant du test de Raycasting
        n_face.l = 0
        n_surface.l = 0
        *surfP.CSurface=DM_GetSurface(*resul)
        ; recherche la surface correspondante
        n_surface = DM_CountSurface(*resul)
        If(n_surface>1)
          For i = 1 To n_surface
           *surf.CSurface = DM_GetSurface(*resul, i-1)
           n_face = n_face + DM_CountTriangles(*surf)
           If(n_face>face)
             *surfP = DM_GetSurface(*resul, i-1)
             ; face relative à la surface
             face = face - (n_face - DM_CountTriangles(*surfP) )
             i=999999999
           EndIf
          Next
        EndIf pour sortir d'une boucle, essaye avec Breaki=999999999
Code : Tout sélectionner
; Fichiers Include 
IncludePath "..\Include\"
  IncludeFile "d3dx9.pbi"
  IncludeFile "dreamotion3d.pbi"
  ;  Initialisation des différents modules
  If InitSprite() = 0 Or InitKeyboard() = 0 Or InitMouse() = 0 
    End
  EndIf
  ; Initialise la fenêtre graphique
  DM_Graphics3D(1024,768, 32,  1, 0)
  ; Charge une font
  *font = DM_LoadFont( "Arial",8 , 1)
  DM_SetColorText (*font, 198,198,198,255)
  ; Définit la couleur ambiante
  DM_AmbiantLight(150,  150,  150)
  
  *Sphere = DM_CreateSphere()
  *pivot = DM_CreatePivot()  
  
  *camera = DM_CreateCamera(*pivot)
  
    DM_TranslateEntity(*camera,0,5,-10)
    DM_CameraZoom(*camera,120)
    DM_PointEntity(*camera,*Sphere)
    
   
    
    
    
    
    ;Creation d'une grille  
    
    For u = -5 To 5
      *Line = DM_CreateLine(2)
      DM_LinePoint(*Line,u*2,0,-10,255,255,255)
      DM_LinePoint(*Line,u*2,0,10,255,255,255)
    Next
    
    For v = -5 To 5
      *Line = DM_CreateLine(2)
      DM_LinePoint(*Line,10,0,v*2,255,255,255)
      DM_LinePoint(*Line,-10,0,v*2,255,255,255)
    Next
    
    
    
    
    
    
  ; ---------------------------------------
  ;           Boucle principale
  ; ---------------------------------------
  ; si plein ecran, permet d'avoir la fleche
  ;change_curseur( #IDC_ARROW  )
  Repeat
    	ExamineKeyboard()
    	ExamineMouse() 
    	ShowCursor_(1)
  	If KeyboardReleased(#PB_Key_Escape) Or WindowEvent()=#PB_Event_CloseWindow
  	  Quit=1
  	EndIf
    DM_TurnEntity(*pivot,0,1/10,0)
    
    
  	; ---------------
  	;      Rendu
  	; ---------------
  	DM_BeginScene()
    	DM_RenderWorld()
  	  ; Affichage du texte
  	  DM_DrawText(*font, 10, 15, "FPS: "+Str(DM_FPS()))	  
      DM_EndScene()
      
      
      
      
  Until Quit=1
  DM_ClearGraphics()
  End
Code : Tout sélectionner
; Fichiers Include
IncludePath "Include\"   :    IncludeFile "dreamotion3d.pbi"
  ;  Initialisation des différents modules
  If InitSprite() = 0 Or InitKeyboard() = 0 Or InitMouse() = 0
    End
  EndIf
  ; Initialise la fenêtre graphique
  DM_Graphics3D(1024,768, 32,  0, 1)
 ; Définit la couleur ambiante
  DM_AmbiantLight(150,  150,  150)
  DM_CreateLight(3)
  *Sphere = DM_CreateSphere()
  *camera = DM_CreateCamera(*sphere)
     DM_TranslateEntity(*camera,0,5,-20)
   
  ;Creation d'une grille 
   For u = -5 To 5
      *Line = DM_CreateLine(2)
      DM_LinePoint(*Line,u*2,0,-10,255,255,255)
      DM_LinePoint(*Line,u*2,0,10,255,255,255)
    Next
   
    For v = -5 To 5
      *Line = DM_CreateLine(2)
      DM_LinePoint(*Line,10,0,v*2,255,255,255)
      DM_LinePoint(*Line,-10,0,v*2,255,255,255)
    Next
  
  ; ---------------------------------------
  ;           Boucle principale
  ; ---------------------------------------
  ; si plein ecran, permet d'avoir la fleche
  ;change_curseur( #IDC_ARROW  )
  Repeat
       ExamineKeyboard()
       ExamineMouse()
       ShowCursor_(1)
     If KeyboardReleased(#PB_Key_Escape) Or WindowEvent()=#PB_Event_CloseWindow
       Quit=1
     EndIf
    DM_TurnEntity(*sphere,0,1/10,0)
  
     ; ---------------
     ;      Rendu
     ; ---------------
     DM_BeginScene()
       DM_RenderWorld()
      DM_EndScene()
         
  Until Quit=1
  DM_ClearGraphics()
  End J'ai loupé l'annonce ou la mise à jour n'est pas encore sortie ?tmyke a écrit :Pour le Break, c'est du tout bon, et pour la mise a jour, demain dans l'après midi
au plus tard...