G.o.D
Member
- Joined
- Jan 15, 2007
- Messages
- 358
Hallo,
ich versuche gerade eine platformuebergreifende c-only 2d engine zu entwickeln die natuerlich auch auf dem gp2x laufen soll und hab da ein problem das ich einfach nicht durchschaue.
ich starte mit SDL_AddTimer eine routine, die das spiel zeichnet und in der hauptschleife will ich eigentlich nur zeit vertroedeln
die routinen sehen also ungefaehr so aus:
das funktioniert unter linux, nicht aber unter gp2x und windows
fuer windows habe ich herausgefunden, dass wenn ich in der hauptschleife noch ein SDL_Pollevents(); vor dem delay einbaue, es auch unter windows funktioniert
alleine der gp2x weigert sich hartnaeckig events zu erkennen. SDL_PollEvent(&event) liefert immer 0
Hatte jemand schonmal das problem?
Hat der gp2x irgendwie probleme mit threads?
ich versuche gerade eine platformuebergreifende c-only 2d engine zu entwickeln die natuerlich auch auf dem gp2x laufen soll und hab da ein problem das ich einfach nicht durchschaue.
ich starte mit SDL_AddTimer eine routine, die das spiel zeichnet und in der hauptschleife will ich eigentlich nur zeit vertroedeln
die routinen sehen also ungefaehr so aus:
Code:
<i>
</i>
Uint32 callback(Uint32 interval, void *param) {
while (SDL_PollEvent &event) {
case SDL_KEYDOWN:
case SDL_JOYBUTTONDOWN:
// buttons verarbeiten
}
// zeichnen
SDL_Flip(screen);
}
int main() {
SDL_AddTimer(33, callback);
while (!quit) {
SDL_Delay(50);
}
}
das funktioniert unter linux, nicht aber unter gp2x und windows
fuer windows habe ich herausgefunden, dass wenn ich in der hauptschleife noch ein SDL_Pollevents(); vor dem delay einbaue, es auch unter windows funktioniert
alleine der gp2x weigert sich hartnaeckig events zu erkennen. SDL_PollEvent(&event) liefert immer 0
Hatte jemand schonmal das problem?
Hat der gp2x irgendwie probleme mit threads?