Toon posts:

C++/OpenGL

Pagina: 1
Acties:
  • 43 views sinds 30-01-2008

Verwijderd

Topicstarter
Hi

Op school hebben zijn we begonnen met openGL. C++ is alweer een heel tijdje geleden, dus dat is weer ff zoeken en klommelen, nu had ik dan toch een stukje code gecompileerd gekregen en nu krijg ik een toepassingsfout van windows met volgende boodschap:

De instructie op 0X1000a3cc verwijst naar geheugen op 0X1000a3cc verwijst naar geheugen op 0X00000070. De read-bewerking op het geheugen is mislukt.

Iemand een idee?


Hier is de code :

code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
#define GLUT_DISABLE_ATEXIT_HACK           
#include <windows.h>
#include <GL/gl.h>
#include <GL/glu.h>
#include <GL/glut.h>
#include <math.h>
#include <stdlib.h>

void ChangeSize(GLsizei w, GLsizei h)
{
if(h == 0)
h = 1;
glViewport(0, 0, w, h);
glMatrixMode(GL_PROJECTION);
glLoadIdentity();
if (w <= h)
glOrtho (0.0f, 250.0f, 0.0f, 250.0f*h/w, 1.0, -1.0);
else
glOrtho (0.0f, 250.0f*w/h, 0.0f, 250.0f, 1.0, -1.0);
glMatrixMode(GL_MODELVIEW);
glLoadIdentity();
}

static int year = 0, day = 0;
void dayAdd (void) {
day = (day + 10) % 360;
}
void daySubtract (void) {
day = (day - 10) % 360;
}
void yearAdd (void) {
year = (year + 5) % 360;
}
void yearSubtract (void) {
year = (year - 5) % 360;
}
void myinit(void) {
glShadeModel(GL_FLAT);
}

void display(void){
glClear(GL_COLOR_BUFFER_BIT);
glColor3f (1.0, 1.0, 1.0);
glPushMatrix();
glutWireSphere(1.0,5,5); /* draw sun */
glRotatef((GLfloat) year, 0.0, 1.0, 0.0);
glTranslatef (2.0, 0.0, 0.0);
glRotatef((GLfloat) day, 0.0, 1.0, 0.0);
glutWireSphere(0.2,5,5); /* draw smaller planet */
glPopMatrix();
glFlush();
}

void Toets(int key,int x, int y)
{
   switch(key)
   {
       case GLUT_KEY_LEFT:yearSubtract();
              display();
       break;
       case GLUT_KEY_RIGHT:yearAdd();
              display();
       break;
       case GLUT_KEY_UP:dayAdd();
              display();
       break;
       case GLUT_KEY_DOWN:daySubtract();
              display();
       break;       
   }
}

int main(int argc, char** argv){

glutInitDisplayMode(GLUT_SINGLE | GLUT_RGB);
//glutInitPosition(0, 0, 500, 500);
glutInit(&argc, argv);
myinit();
glutSpecialFunc(Toets);
glutReshapeFunc(ChangeSize);
glutMainLoop();

}


Alvast bedankt !

  • Zoijar
  • Registratie: September 2001
  • Niet online

Zoijar

Because he doesn't row...

Je bedoelt het vast goed, maar wij zijn er niet om voor jou te debuggen. Op zijn minst had je even in je debugger kunnen kijken waar er precies iets fout ging, of op welk moment er iets vast loopt. Volledige code posten en zeggen "hij doet het niet, waarom?" kunnen wij ook niet echt veel mee, en zullen de meeste ook geen tijd voor hebben.

  • .oisyn
  • Registratie: September 2000
  • Laatst online: 15:32

.oisyn

Moderator Devschuur®

Demotivational Speaker

Sorry, we doen niet aan debug-m'n-code-topics.
Zie de "quickstart" voor de punten waaraan een topicstart in Programming & Webscripting moet voldoen.

Hint: gebruik een goede debugger, die geeft precies aan waar de fout zit.

Give a man a game and he'll have fun for a day. Teach a man to make games and he'll never have fun again.


Dit topic is gesloten.