Vorheriges Thema anzeigen :: Nächstes Thema anzeigen |
Autor |
Nachricht |
nigs Super JLI'ler
Anmeldedatum: 19.12.2002 Beiträge: 359
Medaillen: Keine
|
Verfasst am: 23.03.2003, 15:28 Titel: DirectInput |
|
|
bin grad an nem kleinen spiel und versuche eingabe mit DI zu implementieren. ich hab so geprogt das wenn man eine bestimmte taste drückt ein Integer-wert um 1 inkrementiert wird. doch wenn ich diese taste auch nur kurz drücke inkrementiert sich der wert der variable um z.B. 10 oder 7. wenn ich die taste nur kurz "antippe" erhöht sich die variable nur um 3 oder 5. Muß ich da jetzt eine frame-bremse oder sowas implementieren oder geht das auch anderst. Denn als ich eingabe noch mit dem GDI verwirklicht hab ging das eigentlich ganz normal. |
|
Nach oben |
|
 |
The Lord of Programming Living Legend

Alter: 37 Anmeldedatum: 14.03.2003 Beiträge: 3122
Medaillen: Keine
|
Verfasst am: 23.03.2003, 15:33 Titel: |
|
|
Du must da eine Framebremse verwenden, da die Inputfunktion bei jedem Durchlauf der Hauptnachrichtenschleife gestartet wird.
In der Windows-Callback-Funktion ist diese Verzögerung schon dabei. _________________ www.visualgamesentertainment.net
Current projects: RDTDC(1), JLI-Vor-Projekt, Tetris(-Tutorial), JLI-Format
(1) Realtime Developer Testing and Debugging Console
Anschlag, Anleitung zum Atombombenbau, Sprengkörper...
Hilf Schäuble! Damit er auch was findet... |
|
Nach oben |
|
 |
AFE-GmdG JLI MVP


Alter: 45 Anmeldedatum: 19.07.2002 Beiträge: 1374 Wohnort: Irgendwo im Universum... Medaillen: Keine
|
Verfasst am: 23.03.2003, 16:10 Titel: |
|
|
Eine Framebremse ist vielleicht nicht der richtige Weg - teste lieber, ob du die taste drückst, setze dann einen Status und wenn du sie wieder loslässt lösche den Status und incrementiere...
AFE-GmdG _________________
CPP: | float o=0.075,h=1.5,T,r,O,l,I;int _,L=80,s=3200;main(){for(;s%L||
(h-=o,T= -2),s;4 -(r=O*O)<(l=I*I)|++ _==L&&write(1,(--s%L?_<(L)?--_
%6:6:7)+\"World! \\n\",1)&&(O=I=l=_=r=0,T+=o /2))O=I*2*O+h,I=l+T-r;} |
|
|
Nach oben |
|
 |
nigs Super JLI'ler
Anmeldedatum: 19.12.2002 Beiträge: 359
Medaillen: Keine
|
Verfasst am: 24.03.2003, 15:08 Titel: |
|
|
hmmmmmm... glaub ich nimm erst die Frame-Bremse wollt sowieso mal nen Framezähler ins spiel integrieren. dann kann ich mir auch die frames anzeigen laßen und bei anderen rechnern laufen lasen. somit hab ich auch gleich die systemanforderungen für mein spiel.... . und wenn es dann immer noch geht dann muß ich müßte ich es so versuchen wie AFE-GmdG vorgeschlagen hat. aber danke noch für die antworten  |
|
Nach oben |
|
 |
Hazel JLI MVP


Alter: 40 Anmeldedatum: 19.07.2002 Beiträge: 1761
Medaillen: Keine
|
Verfasst am: 24.03.2003, 15:24 Titel: |
|
|
Zitat: |
somit hab ich auch gleich die systemanforderungen für mein spiel
|
Nein, hast du nicht. Eine Framebremse ist keine Garantie für eine feste Framerate. Eine Bremse für die Lösung eines solchen Problems zu verwenden ist ziemlich unpassend und nicht gerade elegant. Außerdem müsstest du die Framerate auf 10 F/s oder so begrenzen damit man gut eingeben kann. _________________ *click* Dabuu!?
Twitter: http://twitter.com/Ollie_R
|
|
Nach oben |
|
 |
The Lord of Programming Living Legend

Alter: 37 Anmeldedatum: 14.03.2003 Beiträge: 3122
Medaillen: Keine
|
Verfasst am: 25.03.2003, 16:08 Titel: |
|
|
Hazel hat Folgendes geschrieben: | Eine Bremse für die Lösung eines solchen Problems zu verwenden ist ziemlich unpassend und nicht gerade elegant |
Das kommt ganz drauf an, was für ein Programm es ist.
Bei einem Programm, in dem man Strings eingeben kann, ist das mit dem Status am Besten(1). Wenn man aber z.B. eine Simulation oder ein Action-Game programmiert, dann ist es lästig, immer die Taste loszulassen und wieder zu drücken, bis das nächste mal die Taste abgefragt wird(2).
@nigs: aus deinem ersten post konnte ich nicht entnehmen, ob du die erste oder die zweite Variante proggen willst. _________________ www.visualgamesentertainment.net
Current projects: RDTDC(1), JLI-Vor-Projekt, Tetris(-Tutorial), JLI-Format
(1) Realtime Developer Testing and Debugging Console
Anschlag, Anleitung zum Atombombenbau, Sprengkörper...
Hilf Schäuble! Damit er auch was findet... |
|
Nach oben |
|
 |
Hazel JLI MVP


Alter: 40 Anmeldedatum: 19.07.2002 Beiträge: 1761
Medaillen: Keine
|
Verfasst am: 25.03.2003, 18:01 Titel: |
|
|
Wenn das Problem die Bewegung ist, sollte man sowieso nur den Tastenstatus abfragen und die Variable unabhängig von der Dauer des Gedrückthaltens manipulieren. _________________ *click* Dabuu!?
Twitter: http://twitter.com/Ollie_R
|
|
Nach oben |
|
 |
nigs Super JLI'ler
Anmeldedatum: 19.12.2002 Beiträge: 359
Medaillen: Keine
|
Verfasst am: 25.03.2003, 21:10 Titel: |
|
|
soll ein action-game werden. ich pobiers halt mal mit na Frame-Bremse aus, schaden kanns ja net und hab noch ne frage wenn ich die Befehle mit Query.. benutze findet sie mein compiler nicht. braucht man für diese Befehle Bibliotheken, Headers etc.  |
|
Nach oben |
|
 |
The Lord of Programming Living Legend

Alter: 37 Anmeldedatum: 14.03.2003 Beiträge: 3122
Medaillen: Keine
|
Verfasst am: 26.03.2003, 16:15 Titel: |
|
|
Es könnte sein, dass auf deinem Rechner der Queryzähler nich drauf is.
AFAIK braucht man dafür keine libs und header. _________________ www.visualgamesentertainment.net
Current projects: RDTDC(1), JLI-Vor-Projekt, Tetris(-Tutorial), JLI-Format
(1) Realtime Developer Testing and Debugging Console
Anschlag, Anleitung zum Atombombenbau, Sprengkörper...
Hilf Schäuble! Damit er auch was findet... |
|
Nach oben |
|
 |
nigs Super JLI'ler
Anmeldedatum: 19.12.2002 Beiträge: 359
Medaillen: Keine
|
Verfasst am: 27.03.2003, 14:02 Titel: |
|
|
warum sollte der da nich drauf sein. liegt das an der hardware oder software??? |
|
Nach oben |
|
 |
The Lord of Programming Living Legend

Alter: 37 Anmeldedatum: 14.03.2003 Beiträge: 3122
Medaillen: Keine
|
Verfasst am: 27.03.2003, 14:06 Titel: |
|
|
Zitat: | Es gibt aber noch einen besseren Weg: den Performance Counter. Der Performance Counter ist ein Hardwarebaustein, der mit 3,19 MHz läuft.
[...]Leider steht der Performance Counter auf manchen älteren Systemen nicht zur Verfügung. |
Steht auf Seite 313. _________________ www.visualgamesentertainment.net
Current projects: RDTDC(1), JLI-Vor-Projekt, Tetris(-Tutorial), JLI-Format
(1) Realtime Developer Testing and Debugging Console
Anschlag, Anleitung zum Atombombenbau, Sprengkörper...
Hilf Schäuble! Damit er auch was findet... |
|
Nach oben |
|
 |
nigs Super JLI'ler
Anmeldedatum: 19.12.2002 Beiträge: 359
Medaillen: Keine
|
Verfasst am: 27.03.2003, 16:14 Titel: |
|
|
das hatte ich schon gelesen aber das buch kam vor zwei Jahren raus.
und hier mal mein system:
AMD 1000 MHz
Geforce 2 MMX
256 MB SDRAM
und win xp. naja ist wohl auch vor zwei Jahren nicht das beste gewesen * * aber so veraltet war es dort noch nich  |
|
Nach oben |
|
 |
Cyianor Super JLI'ler

Anmeldedatum: 23.12.2002 Beiträge: 452
Medaillen: Keine
|
Verfasst am: 27.03.2003, 16:31 Titel: |
|
|
veraltet?? Sorry, das ich lachen muss, aber wenn du dich bei einem 1 GHZer schämen musst, dann möcht ich wissen was ich mit meinen 300 Mhz machen muss. 160 MB RAM ist auch nich soviel wie du hast. Also, warum schämst du dich für deinen PC??? |
|
Nach oben |
|
 |
The Lord of Programming Living Legend

Alter: 37 Anmeldedatum: 14.03.2003 Beiträge: 3122
Medaillen: Keine
|
Verfasst am: 27.03.2003, 16:32 Titel: |
|
|
nigs hat Folgendes geschrieben: | und win xp. naja ist wohl auch vor zwei Jahren nicht das beste gewesen * * aber so veraltet war es dort noch nich  |
An win xp liegts sicher nich, wenns ein Hardwarebaustein is.
Könnte höchstens sein, dass dein Rechner oder Gehäuse vielleicht alt is, oder der Performance Counter aus unerfindlichen Gründen nicht eingebaut worden is.
Sry, aber ich kann auch nur mutmaßen. Bin leider in Sachen Hardware nich so fit.  _________________ www.visualgamesentertainment.net
Current projects: RDTDC(1), JLI-Vor-Projekt, Tetris(-Tutorial), JLI-Format
(1) Realtime Developer Testing and Debugging Console
Anschlag, Anleitung zum Atombombenbau, Sprengkörper...
Hilf Schäuble! Damit er auch was findet... |
|
Nach oben |
|
 |
Christian Rousselle Site Admin

Alter: 48 Anmeldedatum: 19.07.2002 Beiträge: 1630
Medaillen: Keine
|
Verfasst am: 27.03.2003, 16:35 Titel: |
|
|
Hallo,
in jedem Rechner mit Pentium-/Athlon Prozessor ist das drin.
Christian |
|
Nach oben |
|
 |
|