1. Dashboard
  2. Forum
    1. Unerledigte Themen
  3. Mitglieder
    1. Letzte Aktivitäten
    2. Benutzer online
    3. Team-Mitglieder
    4. Trophäen
    5. Mitgliedersuche
  4. Tutorial Bereich
  • Anmelden
  • Registrieren
  • Suche
Dieses Thema
  • Alles
  • Dieses Thema
  • Dieses Forum
  • Seiten
  • Forum
  • Lexikon
  • Erweiterte Suche
  1. Informatik Forum
  2. Webmaster & Internet
  3. Entwicklung

Coin3D: Mouse abfragen und Keyboard-Delay ausschalten

  • JPSelter
  • 13. Juli 2005 um 19:51
  • Unerledigt
  • JPSelter
    2
    JPSelter
    Mitglied
    Punkte
    20
    Beiträge
    3
    • 13. Juli 2005 um 19:51
    • #1

    Ich habe ein kleines Breakout Spiel für ein Praktikum programmiert und die Abgabe nähert sich. Das Spiel ist soweit fast fertig, aber wir ärgern uns über das Paddle. Aktuell benutzen wir dafür die links/rechts Pfeiltasten über den KeyboardEvent. Aber damit bekommen wir die dumme Anschlagsverzögerung rein, das Paddle bewegt sich also erstmal einen Schritt nach rechts, wartet 500ms und rennt dann weiter. Für reaktionskritische Aktionen ist das natürlich unbrauchbar.

    Besser wäre eine Steuerung mit der Mouse, aber in Coin3D gibts wohl keine MouseEvents. Mein Kollege meinte, es müsste aber über Qt gehen, aber wir wissen bloss nicht wie das aussehen soll. Hat da jemand Erfahrung mit?

  • Wolfibolfi
    37
    Wolfibolfi
    Mitglied
    Reaktionen
    186
    Punkte
    14.936
    Beiträge
    2.942
    • 13. Juli 2005 um 21:47
    • #2

    Keine Ahnung, was Coin3D ist, aber normalerweise arbeitet man bei Spielen nicht mit "Zeichen einlesen", sondern mit "Keydown" und "Keyup", da gibts doch sicher was.
    Ansonsten vielleicht einfach die Tasten pollen..

    In einen FBO rendern ist wie eine Schachtel Pralinen - man weiß nie, was man kriegt.

  • JPSelter
    2
    JPSelter
    Mitglied
    Punkte
    20
    Beiträge
    3
    • 13. Juli 2005 um 23:49
    • #3

    Coin3D ist praktisch OpenInventor, also Szenengraphen-Verwaltung. Das mit dem Zeicheneinlesen hast Du gut gesagt, das bringt mich auf eine Idee. Denn die Anschlagsverzögerung resultiert ja aus dem "Zeicheneinlesen", wohingegen "KeyDown" ein diskreter Zustand ist, ohne Verzögerung. Danke, ich forsche mal in diese Richtung weiter...

  • JPSelter
    2
    JPSelter
    Mitglied
    Punkte
    20
    Beiträge
    3
    • 13. Juli 2005 um 23:56
    • #4

    Bleibt aber noch ein Problem: Selbst wenn ich KeyPress abfange, ich muss trotzdem wissen welche Taste gedrückt wurde. Ist dann diese Abfrage nicht wieder ein Zeichenauslesen (zusammen mit der Anschlagsverzögerung?) Wie wird das denn sonst bei der Spieleprogrammierung gemacht?

  • Irrlicht
    7
    Irrlicht
    Mitglied
    Reaktionen
    1
    Punkte
    421
    Beiträge
    82
    • 14. Juli 2005 um 08:14
    • #5
    Zitat von JPSelter

    Selbst wenn ich KeyPress abfange, ich muss trotzdem wissen welche Taste gedrückt wurde. Ist dann diese Abfrage nicht wieder ein Zeichenauslesen


    Taste != Zeichen. Also nein. Z.B.: Die Taste mit der 3 kann ja die Zeichen 3, § und ³ erzeugen. Wenn du das mit KeyPress machst, solltest du eigentlich immer '3' oder ein anderes Symbol für eben diese Taste wo auslesen können.

    das irrlicht

  • Wolfibolfi
    37
    Wolfibolfi
    Mitglied
    Reaktionen
    186
    Punkte
    14.936
    Beiträge
    2.942
    • 14. Juli 2005 um 09:08
    • #6

    Jop. Außerdem kannst du ja auch Funktionstasten, Pfeiltasten usw. einlesen, wie machst du das?

    In einen FBO rendern ist wie eine Schachtel Pralinen - man weiß nie, was man kriegt.

  • Maximilian Rupp 27. Dezember 2024 um 12:06

    Hat das Thema aus dem Forum Programmieren nach Entwicklung verschoben.

Jetzt mitmachen!

Sie haben noch kein Benutzerkonto auf unserer Seite? Registrieren Sie sich kostenlos und nehmen Sie an unserer Community teil!

Benutzerkonto erstellen Anmelden

Rechtliches

Impressum

Datenschutzerklärung