JLI Spieleprogrammierung Foren-Übersicht JLI Spieleprogrammierung

 
 FAQFAQ   SuchenSuchen   MitgliederlisteMitgliederliste   BenutzergruppenBenutzergruppen 
 medals.phpMedaillen   RegistrierenRegistrieren   ProfilProfil   Einloggen, um private Nachrichten zu lesenEinloggen, um private Nachrichten zu lesen   LoginLogin 

Direct Input probs =(

 
Neues Thema eröffnen   Neue Antwort erstellen    JLI Spieleprogrammierung Foren-Übersicht -> Fragen, Antworten und Kritik
Vorheriges Thema anzeigen :: Nächstes Thema anzeigen  
Autor Nachricht
FanBoy
Mini JLI'ler



Anmeldedatum: 21.07.2003
Beiträge: 33

Medaillen: Keine

BeitragVerfasst am: 27.07.2003, 16:03    Titel: Direct Input probs =( Antworten mit Zitat

Ich habe shcon wieder ein Problem =(

Diesmal mit Direct Input... ich komme irgendwie mit den ganzen Optionen von der Maus nicht klar.
Da kann man gebuffert, ungebuffert, polling oder event based auswählen...
bei den Eingaben hat man die Wahl zwischen GetDeviceState und GetDeviceData...
Warum das alles?
Ich wollte mich eigentlich auf ungebuffert und GetDeviceState beschränken, aber dann kriege ich Probleme wenn ich auf Mausklicks reagieren will, weil er die Methode dann immer wieder aufruft und nicht nur einmal
Code:

if(m_MouseState.rgbButtons[0] & 0x80)  //Mousetaste 1 gedrückt
   {
      tuWas();
      return 1;
   }


Wie kann ich das Verhindern? Ist es Sinnvoll ungebuffert eingaben zu benutzen...?
Ich finde das Kapitel ist etwas kurz gekommen in Christians Buch... zumindest so ein kleines beispielproggi, was einen Mauszeiger über DI malt wäre doch drinn gewesen...
außerdem sind die Beispielproggs nicht so gut gewählt, weil sie keinen Frameratelimiter drinn haben, und man deswegen auf schnelleren Rechnern die Ausgaben nicht lesen kann.
Ist aber dennoch ein geiles Buch Razz
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden
Sec
Junior JLI'ler



Anmeldedatum: 18.09.2002
Beiträge: 88

Medaillen: Keine

BeitragVerfasst am: 28.07.2003, 12:00    Titel: Antworten mit Zitat

mach es einfach so: Wink

Code:

if(m_MouseState.rgbButtons[0] & 0x80 && m_PressSameMouseButton01 == FALSE)
      {
         m_PressSameMouseButton01 = TRUE;
         return TRUE;
      }
      if(!(m_MouseState.rgbButtons[0] & 0x80))
      {
         m_PressSameMouseButton01 = FALSE;
      }


MFG Sec
_________________
MFG Sec
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden
FanBoy
Mini JLI'ler



Anmeldedatum: 21.07.2003
Beiträge: 33

Medaillen: Keine

BeitragVerfasst am: 28.07.2003, 16:30    Titel: Antworten mit Zitat

ah, jo, thx. =)

Eine Art LoadCursor Funktion, die ein Bild anstelle des WinMauszeiger lädt gibbet nicht, oder? Man muss also immer ein Bild an die aktuelle Mausposi packen? Es funzt zwar alles... aber irgendwie kommt mir das unoptimal vor
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden
AFE-GmdG
JLI MVP
JLI MVP


Alter: 45
Anmeldedatum: 19.07.2002
Beiträge: 1374
Wohnort: Irgendwo im Universum...
Medaillen: Keine

BeitragVerfasst am: 28.07.2003, 18:26    Titel: Antworten mit Zitat

Ich finde das nicht unoptimal - denke nur mal an Dungeon Keeper 2 oder Black&White zurück.
Dort waren die Mauszeiger gar ein komplett animierte 3D-Objekte, die sich je nach Untergrund verändert haben. Da dahinter jede Menge Programmlogik steckt, ist das mit Windowsfunktionen nicht möglich.
Du kannst natürlich auch normale Mauszeiger laden und diese mit den Windowsfunktionen anzeigen - sieht aber nicht so schön aus.
_________________
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
Benutzer-Profile anzeigen Private Nachricht senden E-Mail senden Website dieses Benutzers besuchen
Beiträge der letzten Zeit anzeigen:   
Neues Thema eröffnen   Neue Antwort erstellen    JLI Spieleprogrammierung Foren-Übersicht -> Fragen, Antworten und Kritik Alle Zeiten sind GMT
Seite 1 von 1

 
Gehe zu:  
Du kannst keine Beiträge in dieses Forum schreiben.
Du kannst auf Beiträge in diesem Forum nicht antworten.
Du kannst deine Beiträge in diesem Forum nicht bearbeiten.
Du kannst deine Beiträge in diesem Forum nicht löschen.
Du kannst an Umfragen in diesem Forum nicht mitmachen.


Powered by phpBB © 2001, 2005 phpBB Group
Deutsche Übersetzung von phpBB.de

Impressum