Zigma Skrevet 17. januar 2004 Skrevet 17. januar 2004 Heisan Jeg er ikke helt stødig på C++ enda så jeg trenger hjelp til noe som sikkert er kanske enkelt. Jeg har en fil "level.tri" som jeg trenger og lese x y z verdier fra level.tri-- 1.3407 -0.00115201 -5.10183 2.23057 0.371052 -5.10183 2.23057 -0.00115201 -5.10183 0xFFFFFF 2.23057 0.371052 -5.10183 1.3407 -0.00115201 -5.10183 1.3407 0.371052 -5.10183 0xFFFFFF 2.23057 -0.00115201 -4.47079 2.23057 0.371052 -5.10183 2.23057 0.371052 -4.47079 0xFFFFFF 2.23057 0.371052 -5.10183 2.23057 -0.00115201 -4.47079 2.23057 -0.00115201 -5.10183 0xFFFFFF 1.3407 0.371052 -4.47079 2.23057 -0.00115201 -4.47079 2.23057 0.371052 -4.47079 0xFFFFFF 2.23057 -0.00115201 -4.47079 1.3407 0.371052 -4.47079 1.3407 -0.00115201 -4.47079 0xFFFFFF 1.3407 -0.00115201 -5.10183 1.3407 0.371052 -4.47079 1.3407 0.371052 -5.10183 0xFFFFFF 1.3407 0.371052 -4.47079 1.3407 -0.00115201 -5.10183 1.3407 -0.00115201 -4.47079 0xFFFFFF 2.23057 0.371052 -5.10183 1.3407 0.371052 -4.47079 2.23057 0.371052 -4.47079 0xFFFFFF 1.3407 0.371052 -4.47079 2.23057 0.371052 -5.10183 1.3407 0.371052 -5.10183 0xFFFFFF 1.3407 -0.00115201 -5.10183 2.23057 -0.00115201 -4.47079 1.3407 -0.00115201 -4.47079 0xFFFFFF 2.23057 -0.00115201 -4.47079 1.3407 -0.00115201 -5.10183 2.23057 -0.00115201 -5.10183 0xFFFFFF --level.tri slut-- Her er C++ coden jeg har prøvd (ikke le en nOOb prøver det utroligste) mEnviroment = dSimpleSpaceCreate(0); FILE *fp = fopen("data/level.tri", "r"); double buffer; int i; for(i=0; i<3; i++) { dGeomID box; double x[3], y[3], z[3]; fscanf(fp, "%lf x[0] %lf y[0] %lf z[0] %lf x[1] %lf y[1] %lf z[1] %lf x[2] %lf y[2] %lf z[2] 0x%X\n"); box = dCreateBox(mEnviroment, x[2], y[2], z[2]); dGeomSetPosition(box, x[0], -y[0], z[0]); } Dete er bare en liten Snip fra et større prosjekt jeg driver med. Jeg bruker Visual Studio 6.0 +5 alt compilere greit, men det er meningen at "box = dCreateBox(mEnviroment, x[2], y[2], z[2]);" skal lage boxer for collide detecting box = dCreateBox(mEnviroment, x[2], y[2], z[2]); dGeomSetPosition(box, x[0], -y[0], z[0]); vis jeg byter coden over med coden under, så får jeg en box som colliding funker på. box = dCreateBox(mEnviroment, x1, y1, z1); dGeomSetPosition(box, x1, -y1, z1); Noe tips hva jeg har gjort galt?
smegpot Skrevet 18. januar 2004 Skrevet 18. januar 2004 Heisann Syntes nå innlesinga di ikke henger helt på greip. Prøv noe slik istedenfor: fscanf(fp, "%lf %lf %lf %lf %lf %lf %lf %lf %lf 0x%X\n", &x[0], &y[0], &z[0], &x[1], &y[1], &z[1], &x[2], &y[2], &z[2]); Smegpot
Zigma Skrevet 19. januar 2004 Forfatter Skrevet 19. januar 2004 Hei Greip eller ikke greip, ikke hvet jeg Det er antagelig mere galt med min code....... Men hvis noen skulle få lyst til og utdype den "level.tri" filen nærmere, så takker og bokker jeg. Level.tri er en fil exportert fra AC3D, det er en enkel kube. Jeg har prøvd fscan linjen fra "smegpot" det kompilerer med 0 feil, men ingen box og colidere mot. jeg jgentar meg selv box = dCreateBox(mEnviroment, x[2], y[2], z[2]); dGeomSetPosition(box, x[0], -y[0], z[0]); vis jeg byter coden over med coden under, så får jeg en box som colliding funker på. box = dCreateBox(mEnviroment, x1, y1, z1); dGeomSetPosition(box, x1, -y1, z1); Med den siste coden her, så får jeg en unsylig box og kollidere mot. Jeg har en mesh fil "model.mesh" som "tegner" modellen i 3d landskapet, men det er en annen histore........ Cya
GeirGrusom Skrevet 19. januar 2004 Skrevet 19. januar 2004 "(ikke le en nOOb prøver det utroligste)" ...første n00ben jeg har sett som driver med collision detection, jeg tror du undervurdere deg selv.
Zigma Skrevet 20. januar 2004 Forfatter Skrevet 20. januar 2004 "(ikke le en nOOb prøver det utroligste)"...første n00ben jeg har sett som driver med collision detection, jeg tror du undervurdere deg selv. tja nOOb eller ikke nOOb Det er mit første project, og det er første gangen jeg prøver meg på "colliding". Skulle noen få lyst til og se nermere på sourcoden til hele greia, så gå til My Webpage
Anbefalte innlegg
Opprett en konto eller logg inn for å kommentere
Du må være et medlem for å kunne skrive en kommentar
Opprett konto
Det er enkelt å melde seg inn for å starte en ny konto!
Start en kontoLogg inn
Har du allerede en konto? Logg inn her.
Logg inn nå