Files |  Tutorials |  Articles |  Links |  Home |  Team |  Forum |  Wiki |  Impressum

Aktuelle Zeit: Di Mai 21, 2024 15:40

Foren-Übersicht » Sonstiges » Meinungen zu den Projekten
Unbeantwortete Themen | Aktive Themen



Ein neues Thema erstellen Auf das Thema antworten  [ 18 Beiträge ]  Gehe zu Seite Vorherige  1, 2
Autor Nachricht
 Betreff des Beitrags:
BeitragVerfasst: Sa Jun 13, 2009 21:50 
Offline
DGL Member
Benutzeravatar

Registriert: Mo Mär 30, 2009 14:40
Beiträge: 30
ich programmiere mit der delphi 6 personal edition.
sdl benutze ich nicht, aber vll werde ich es später für den sound brauchen.

wegen dem timebased movement: ist implementiert, aber kann es sein, dass bei manchen vielleicht der counter falsch ausgelesen wird ? ich habe gelesen dass nicht jede hardware das auslesen per "queryperfomancecounter" unterstützt:

im form.create :
Code:
  1.   QueryPerformanceFrequency(PerfCounterFreq);


im idle-event :
Code:
  1. procedure TForm1.ApplicationEventsIdle(Sender: TObject; var Done: Boolean);
  2. var startcount,endcount : int64;
  3. begin
  4.   queryperformancecounter(startcount);
  5.  
  6.   glClear(GL_COLOR_BUFFER_BIT or GL_DEPTH_BUFFER_BIT);
  7.   glMatrixMode(GL_PROJECTION);
  8.   glLoadIdentity;
  9.   gluPerspective(45.0, ClientWidth/ClientHeight, NearClipping, FarClipping);
  10.   glMatrixMode(GL_MODELVIEW);
  11.   glLoadIdentity;
  12.  
  13.   ////////////////////////sämtliche sachen werden hier bewegt und gezeichnet.////////////////////////
  14.  
  15.   SwapBuffers(DC);
  16.  
  17.   Done := false;
  18.  
  19.   queryperformancecounter(endcount);
  20.   timefactor := (endcount - startcount) / perfcounterfreq * game_speed;
  21. end;


die bewegungen laufen dann nach dem muster
x := x + vx * timefactor;

wobei gamespeed standardmäßig 100 ist...
sollte so doch funktionieren oder ? soll ich vielleicht lieber gettickcount benutzen ?


Nach oben
 Profil  
Mit Zitat antworten  
 Betreff des Beitrags:
BeitragVerfasst: Sa Jun 13, 2009 22:03 
Offline
DGL Member
Benutzeravatar

Registriert: Di Sep 20, 2005 13:18
Beiträge: 1054
Wohnort: Dresden
Programmiersprache: C, C++, Pascal, OPL
judikator hat geschrieben:
wegen dem timebased movement: ist implementiert, aber kann es sein, dass bei manchen vielleicht der counter falsch ausgelesen wird ? ich habe gelesen dass nicht jede hardware das auslesen per "queryperfomancecounter" unterstützt:

Prinzipiell stimmt das schon, aber PCs, die das nicht unterstützen stammen aus einem Jahrgang vor 1998 imho. :lol: Also anders formuliert, Heutzutage kann das JEDER PC. Auf jedenfall JEDER, auf dem dein Spiel (ansprechend) läuft.

_________________
Denn wer nur schweigt, weil er Konflikte scheut, der macht Sachen, die er hinterher bereut.
Und das ist verkehrt, denn es ist nicht so schwer, jeden Tag zu tun als ob's der letzte wär’.
Und du schaust mich an und fragst ob ich das kann.
Und ich denk, ich werd' mich ändern irgendwann.

_________________Farin Urlaub - Bewegungslos


Nach oben
 Profil  
Mit Zitat antworten  
 Betreff des Beitrags: Re: @ F.A.T.H.
BeitragVerfasst: Sa Mär 20, 2010 13:13 
Offline
DGL Member
Benutzeravatar

Registriert: Fr Dez 11, 2009 08:02
Beiträge: 532
Programmiersprache: pascal (Delphi 7)
Zitat:
Mir ist aufgefallen, dass es immer dann extrem langsam wird, wenn gerade keine Gegner da sind. Andersherum würde es für mich mehr Sinn machen, aber so ist es irgendwie.

Das passiert, jedenfalls mit GetTickCount, wenn die FPS über 1000 steigen. Passt vielleicht nicht ganz zu den 60FPS, aber die sind Durchschnitt, oder? Ok, das macht keinen Sinn, sonst würde es schließlich auch bei anderen so laufen.


Nach oben
 Profil  
Mit Zitat antworten  
Beiträge der letzten Zeit anzeigen:  Sortiere nach  
Ein neues Thema erstellen Auf das Thema antworten  [ 18 Beiträge ]  Gehe zu Seite Vorherige  1, 2
Foren-Übersicht » Sonstiges » Meinungen zu den Projekten


Wer ist online?

Mitglieder in diesem Forum: 0 Mitglieder und 8 Gäste


Du darfst keine neuen Themen in diesem Forum erstellen.
Du darfst keine Antworten zu Themen in diesem Forum erstellen.
Du darfst deine Beiträge in diesem Forum nicht ändern.
Du darfst deine Beiträge in diesem Forum nicht löschen.
Du darfst keine Dateianhänge in diesem Forum erstellen.

Suche nach:
Gehe zu:  
  Powered by phpBB® Forum Software © phpBB Group
Deutsche Übersetzung durch phpBB.de
[ Time : 0.080s | 17 Queries | GZIP : On ]