Vorheriges Thema anzeigen :: Nächstes Thema anzeigen |
Autor |
Nachricht |
User_User JLI'ler
Anmeldedatum: 05.08.2004 Beiträge: 137
Medaillen: Keine
|
Verfasst am: 29.01.2006, 15:21 Titel: Ein paar kleine Fragen |
|
|
Ich habe mir die Codebeispiele des DirectX Sample-Browser-Tutorials angeschaut(Tutorial 4 Lights). Dabei fielen mir einige wenige kleinere Unterschiede (zum Buch) auf.
1) Es wird der Performancecounter nicht verwendet (sondern die timeGetTime()-Funktion).
Frage: Welche Computer haben diesen Performancecounter denn eigentlich nicht?
2) Beim Programmende wird die Funktion UnregisterClass() aufgerufen.
Frage: Ist es egal, ob ich diesen Aufruf weglasse?
3) Bevor eine Matrix z.B. für eine Rotation mithilfe der Funktion D3DXMatrixRotationX() verwendet wird, wird vorher immer die D3DXMatrixIdentity()-Funktion verwendet. Wenn ich diese Funktion auskommentiere, stelle ich bei der Ausführung keinen Unterschied fest.
Warum wird im Tutorial diese Funktion verwendet (und im Buch nicht)? |
|
Nach oben |
|
|
Jonathan_Klein Living Legend
Alter: 37 Anmeldedatum: 17.02.2003 Beiträge: 3433 Wohnort: Siegerland Medaillen: Keine
|
Verfasst am: 29.01.2006, 17:12 Titel: |
|
|
ob du Performance Counter oder timeGetTime benutzt ist glaub ich relativ egal, der einzige unterschied ist glaube ich das Performance Counter ein wenig genauer ist, aber dafür nicht überall verfügbar.
UnregisterClass ist quasi das gegenteil von RegisterClassEx. Ich weiß nciht in wie weit es beim Beenden nicht sowieso geschieht, also ob man es weglassen kann ode nicht, aber da es net schadet kann man das einfach imemr benutzen, und gut ist.
MatrixIdentitiy ist sowas ähnliches wie das man Variablen vorher auf 0 setzt. Kann in manchen Situaionen wichtig sein, da es zu Fehlern kommen könnte, aber normalerweise halt net, muss man halt selber entscheiden. Dann vielleich lieber auf Nummer sicher gehen und woanders optimeiren. _________________ https://jonathank.de/games/ |
|
Nach oben |
|
|
GreveN JLI Master
Alter: 38 Anmeldedatum: 08.01.2004 Beiträge: 901 Wohnort: Sachsen - Dresden Medaillen: Keine
|
Verfasst am: 29.01.2006, 17:21 Titel: |
|
|
Jonathan_Klein hat Folgendes geschrieben: | ob du Performance Counter oder timeGetTime benutzt ist glaub ich relativ egal, der einzige unterschied ist glaube ich das Performance Counter ein wenig genauer ist, aber dafür nicht überall verfügbar. |
Das ist ganz und gar nicht immer egal. Der Performance Counter ist i.d.R. mit 3,19Mhz getaktet, timeGetTime() arbeitet so gesehen mit 1000Hz.
Schreib dir mal 'nen anständigen Profiler, da zieh ich den Performance Counter aber 1000x vor. |
|
Nach oben |
|
|
Jonathan_Klein Living Legend
Alter: 37 Anmeldedatum: 17.02.2003 Beiträge: 3433 Wohnort: Siegerland Medaillen: Keine
|
Verfasst am: 29.01.2006, 19:00 Titel: |
|
|
joah Performance counter ist 3 mal so genau, aber für ne Spielshcleife ist 1000Hz auch ok, wie ich finde. Ich hatte noch nie Probleme damit. _________________ https://jonathank.de/games/ |
|
Nach oben |
|
|
OLiver Super JLI'ler
Alter: 33 Anmeldedatum: 29.06.2003 Beiträge: 306 Wohnort: Jena Medaillen: Keine
|
Verfasst am: 29.01.2006, 19:19 Titel: |
|
|
Ich hatte schon oft Probleme damit, besonders bei Bewegungen, wenn du also die Differnz zur letzten Zeit berechnest und dann entsprechend bewegst. Bei timeGetTime() ruckelt es da immer, weil es noch nicht mal auf die Millisekunde wirklich genau ist. _________________ http://www.sieder25.org/ (Siedler 2 - Remake) |
|
Nach oben |
|
|
Jonathan_Klein Living Legend
Alter: 37 Anmeldedatum: 17.02.2003 Beiträge: 3433 Wohnort: Siegerland Medaillen: Keine
|
Verfasst am: 29.01.2006, 19:49 Titel: |
|
|
Das kann ich mir eigentlich nicht vorstellen, das es ruckelt. Bei mir klappts eigentlich immer. Wenn man zum Beispiel ne Framerate von ca. 50 hat, wer merkt dann obs 49,95 oder 50,04 (die maximale Differenz zwischenden beiden Methoden, rechnerisch) ist?
Und ruckeln beduetet doch das es stock? Es dürfte höchstens eine minimal ungelichmäßige Bewegung sein. _________________ https://jonathank.de/games/ |
|
Nach oben |
|
|
OLiver Super JLI'ler
Alter: 33 Anmeldedatum: 29.06.2003 Beiträge: 306 Wohnort: Jena Medaillen: Keine
|
Verfasst am: 30.01.2006, 12:50 Titel: |
|
|
ja, eine ungleiche Bewegung mein ich ja. Es "vibriert" dann sozusagen. _________________ http://www.sieder25.org/ (Siedler 2 - Remake) |
|
Nach oben |
|
|
|