Parce que ça peut peut-être venir de là
Cube3D
- 
				Anonyme
 
En fait, lorsque je charge mes objets, touts les points (Vertices) vont dans une structure qui possède les infos des XYZ.
Structure Vertice
X.f
Y.f
Z.f
endstructure
lors du chargement, je compte le nombre de vertex charger
ensuite via une boucle j'affiche tout les points sans prendre en compte les l'objet.
			
			
									
									
						Structure Vertice
X.f
Y.f
Z.f
endstructure
lors du chargement, je compte le nombre de vertex charger
ensuite via une boucle j'affiche tout les points sans prendre en compte les l'objet.
Code : Tout sélectionner
 For i = 1 To Vertice_Number
   
  Point2D()\x=(Point3D()\x*256)/(Point3D()\z+#Zoff)+#Xoff  
  Point2D()\y=(Point3D()\y*256)/(Point3D()\z+#Zoff)+#Yoff
 next i- 
				Anonyme
 
- 
				Anonyme
 
en fait, les exemples fournis sur le forum anglais ont besoin de 2 includes (je sais plus les noms) l'une d'elle possède les interfaces de dx9, lors de la compilation , il me dit qu'elles existent déjà, donc je vire l'include, et après il ne me reconnais plus les commandes directx avec les underscores  
 
j'ai pas envie de me prendre la tête la dessus
 
j'ai essayer de faire une dll d'opengl pour pure, mais je ne sais pas à quoi correspond (int argc, char *argv[]) & comment l'interpreter dans purebasic...
donc je passe au c++ qui regorge de tutos sur opengl
 
p'tet que j'vais essayé ogre aussi ^^
@++
			
			
									
									
						j'ai pas envie de me prendre la tête la dessus
j'ai essayer de faire une dll d'opengl pour pure, mais je ne sais pas à quoi correspond (int argc, char *argv[]) & comment l'interpreter dans purebasic...
donc je passe au c++ qui regorge de tutos sur opengl
p'tet que j'vais essayé ogre aussi ^^
@++
Salut Cpl Bator,
(int argc, char *argv[]) se traduit assez facilement.
un petit example :
			
			
													(int argc, char *argv[]) se traduit assez facilement.
un petit example :
Code : Tout sélectionner
Structure ARG
  *v.s[0]
EndStructure
Procedure test(argc.l, *arg.ARG)
  For i = 0 To argc - 1
    Debug *arg\v[i]
  Next
EndProcedure
*x.ARG = AllocateMemory(5 * SizeOf(String))
*x\v[0] = "Cpl Bator"
*x\v[1] = "Pure"
*x\v[2] = "Basic"
*x\v[3] = "Test1"
*x\v[4] = "Test2"
test(5, *x)
					Dernière modification par Flype le ven. 16/juin/2006 8:27, modifié 1 fois.
									
			
									
						- 
				Anonyme
 
Merci Flype, mais le problème n'est pas là  
 
voila en c++ la fonction principale se presente comme ca :
je voudrais la transformer en fonction pour une dll comme ceci :
mais je ne sais pas quoi lui passer comme paramètres  
			
			
									
									
						voila en c++ la fonction principale se presente comme ca :
Code : Tout sélectionner
int main(int argc,char **argv)
    {
   glutInit(&argc,argv);
    return 0;
    }Code : Tout sélectionner
__declspec(dllexport) void maFonction(int argc,char **argv)
{
glutInit(&argc,argv);
}la fonction main() en C est appelé automatiquement lors de l'exécution du programme. main() 'comporte' toujours argc et argv.
argc et argv représentent les arguments transmis à l'exécutable.
c'est la meme chose que ProgramParameter(i) en purebasic...
donc il faut se construire un tableau d'arguments et passer le pointeur du tableau.
je suis pas sûr mais çà devrait fonctionner comme çà (non testé) :
			
			
									
									
						argc et argv représentent les arguments transmis à l'exécutable.
c'est la meme chose que ProgramParameter(i) en purebasic...
donc il faut se construire un tableau d'arguments et passer le pointeur du tableau.
je suis pas sûr mais çà devrait fonctionner comme çà (non testé) :
Code : Tout sélectionner
Structure ARGV
  *v.s[0]
EndStructure
Procedure.l myGlutInit(argc.l, *arg.ARGV)
  For i = 0 To argc - 1
    Debug *arg\v[i]
  Next
EndProcedure
Procedure.l Main()
  
  Protected argc.l = CountProgramParameters()
  Protected *arg.ARGV = AllocateMemory( argc * SizeOf(String) )
  
  If *arg
    For i = 0 To argc - 1
      *arg\v[i] = ProgramParameter(i)
    Next
  EndIf
  
  myGlutInit(argc, *arg)
  
EndProcedure
Main()- 
				Anonyme
 
oui, mais je lui transmet quoi à l'executable? 
j'ai essayer l'exemple, il plante, il lui faut des paramètres.
et si je lui en file, il bug sur la fonction glutinit().
j'ai trouver comment recuperer les arguments :
je vais essayer de bidouiller pour voir si ca marche.
			
			
									
									
						j'ai essayer l'exemple, il plante, il lui faut des paramètres.
et si je lui en file, il bug sur la fonction glutinit().
j'ai trouver comment recuperer les arguments :
Code : Tout sélectionner
#include <stdlib.h>
#include <stdio.h>
int main(int argc, char *argv[])
{
printf("ARGC = %ld ARGV = %ld\n", argc, argv );
    
  system("PAUSE"); 
    return 0;
}