Keller-Dev
Docs
· Java & Hytale
Übersicht
Neuer Eintrag
Eintrag bearbeiten
Titel *
Kategorie *
Java Core
Java OOP
Java Advanced
Plugin-System
Event-System
UI-System
Sonstiges
Erklärung / Inhalt *
Zwei wichtige Grundlagen für ruckelfreie und faire Bewegung in Spielen: Floating-Point-Koordinaten: Positionen (x, y) müssen als double geführt werden, um bei kleinen Werten (Speed \times deltaTime) Rundungsfehler von int zu vermeiden. Vektornormalisierung: Bei gleichzeitiger Diagonaleingabe (dx = 1, dy = 1) wäre der Bewegungsvektor nach Pythagoras \sqrt{1^2 + 1^2} \approx 1,41 lang (der Spieler wäre diagonal ~41% schneller). Der Vektor muss durch seine Länge geteilt werden.
Code-Beispiel (optional)
// Diagonalbewegung normalisieren if (dx != 0 && dy != 0) { double length = Math.sqrt(dx * dx + dy * dy); dx /= length; dy /= length; } // Framerate-unabhängige Bewegung x += dx * speed * deltaTime; y += dy * speed * deltaTime;
Referenz-Datei / Projekt (optional)
Referenz-Klasse / Interface (optional)
Quellen-Link (optional)
Tags (durch Komma getrennt)
Änderungen speichern
Abbrechen