begin process at 2008 09 06 18:58:20
1 237 892 membres
276 nouveaux aujourd'hui
14 314 membres club

Vous ne trouvez pas de réponse à votre problème ? Alors posez la question dans le forum.
Souvenez-vous qu'il n'y a jamais de question bête, mais rester dans l'ignorance parce que l'on n'ose pas poser une question, ça c'est une erreur !

Sujet : Les pointeurs for newbie [ Archives / Au secours ] (neodante)

Les pointeurs for newbie le 10/10/2003 11:13:31

neodante
(Admin CS)
Salut tout le monde,
j'ai comme projet avec plusieurs personnes de mon école de créer un petit jeu en 3D à l'aide de C#. Mais en essayant de manipuler les pointeurs (ce qui est une quasi obligation pour les jeux) j'ai vu que c'était un vrai casse tête avec des unsafe partout et un problème pour faire des pointeurs d'objets managés (?).
En gros :
class toto
{
toto *zaza = this; //Interdit
}
J'ai plein d'erreurs partout. Ce qui me fais penser que C# n'est pas vraiment fait pour faire du pointeur !!!
Si quelqu'un peut m'aider sur les pointeurs je suis tout ouie !!!!
Merci

Re : Les pointeurs for newbie le 10/10/2003 11:41:31

Miltiades
Membre Club
premiere chose, la prochaine fois ne fait qu'un post,
tu n'obtiendras pas plus vite ta reponse si tu post 10 fois la meme question!

deuxiememt:
essai:
class toto
{
toto zaza = this;
}


je t'assure ca marche

Re : Les pointeurs for newbie le 10/10/2003 12:46:40

neodante
(Admin CS)

Neodante

Désolé mais étant donné certaines réponses pas immédiates du serveur CS ça arrive parfois de mettre 2 messages... (sur plus de 300 messages ça m'est arrivé que 2 ou 3 fois...)
Etant donné ta réponse rapide je vois que de toutes manières on a pas besoin de ça !

Pour revenir à notre sujet, zaza n'est pas un pointeur mais une référence donc ça marche mais ca ne résoud pas vraiment mon problème de pointeur....snifff
Mais le mécanisme est similaire et donc je vais essayer de refaire mon code avec les références.

Au fait comment fais-tu pour mettre ton code en grisé dans ton message ?

Merci qd même
@+

Re : Les pointeurs for newbie le 10/10/2003 12:57:39

Miltiades
Membre Club

regarde les boutons (tous) sous la fenetre de reponse au messages

Re : Les pointeurs for newbie le 10/10/2003 14:38:46

neodante
(Admin CS)

Neodante

OK merci

Re : Les pointeurs for newbie le 18/10/2003 12:01:13

gillescpp
Membre Club

moi, j'a iabsolument besoin des pointeurs car les fonctions de opengl ne me permettent pas de passer par les référencs.

Si tu sais comment on peut obtenir les adresses d'objet comme "float[]" ou autre, laisse moi ton eemple dans le forum car je coince vraiment.

merci


Re : Les pointeurs for newbie le 19/10/2003 17:00:49

neodante
(Admin CS)

Neodante

Enfin quelqu'un qui à les même prob que moi avec C#...
Même si la prog avec C" n'est aps vraiment adapté aux jeux...
@+

Re : Les pointeurs for newbie le 20/10/2003 08:24:30

gillescpp
Membre Club

Pour les pointeurs, visiblement un truc comme




unsafe {
int a = 1;
int* p_a = &a;
}


semble fonctionner chez moi.

Pour opengl, nul besoin des pointeurs car en fait, j'ai decouvert hier des objets qui les remplacent.

Donc, en fouillant la faq de csgl, j'ai trouvé le remlacant des pointeurs :

c'est dans CsGL.Pointeurs
une classepar type de données c# :

PFloat pour float[],
PInt8 pour sbyte[],
PDouble pour double[],
...

vraisemblablement, il sagit de pointeurs fixes auquels est alloué un espace defini.

voci un exemple qui affiche tros points blancs :


static void affichepolygons()
{

float[] p1 = {
1.0f, 1.0f, 1.0f, -0.5f, 0.5f, 0.0f, 1.0f, 1.0f, 1.0f, 0.0f, -0.5f, 0.0f,
1.0f, 1.0f, 1.0f, 0.5f, 0.0f, 0.0f
};

sbyte[] p4 = {0, 1, 2};

PFloat p_p1 = new PFloat(9);
PInt8 p_p4 = new CsGL.Pointers.PInt8(3);
//copier le contenu des tableaux p1 et p4 dans les nouveaux tableaux
PFloat.Copy(p_p1, 0, p1, 0, 9);
PInt8.Copy(p_p4, 0, p4, 0, 3);

//je passe par la ; il parait que c'est plus rapide
GL.glInterleavedArrays(GL.GL_C3F_V3F, 0, p_p1);
GL.glDrawElements(GL.GL_POINTS, 3, GL.GL_UNSIGNED_BYTE, p_p4);

}




Si ca interresse, je mettrai le source complet sur le site.

Re : Les pointeurs for newbie le 20/10/2003 14:13:28

neodante
(Admin CS)

Neodante

Je veux bien une petite source !!
@+

Re : Les pointeurs for newbie le 21/10/2003 10:40:31

gillescpp
Membre Club

la source est mise sous le titre "OPENGL SANS POINTEURS EN C#"

elle a ete un peu modifiée et affiche maintenant deux triangles autour desquels on effectue une rotation.


[Page 1 Page 2]
Classé sous : for, toto, pointeurs, newbie, partout

Participer à cet échange

Pub



Appels d'offres

CalendriCode

Septembre 2008
LMMJVSD
1234567
891011121314
15161718192021
22232425262728
2930     

Téléchargements

Logiciels à télécharger sur le même thème :

Boutique

Boutique de goodies CodeS-SourceS