Spielephysik: Unterschied zwischen den Versionen

aus GlossarWiki, der Glossar-Datenbank der Fachhochschule Augsburg
Keine Bearbeitungszusammenfassung
 
(10 dazwischenliegende Versionen desselben Benutzers werden nicht angezeigt)
Zeile 1: Zeile 1:
=Definition=
{{In Bearbeitung}}
{{Qualität
|correctness        = 1
|extent              = 1
|numberOfReferences  = 1
|qualityOfReferences = 3
|conformance        = 5
}}
 
==Definition==
Eine Spielephysik (Physik-Engine) wird zum Simulieren der physikalischen Eigenschaften von Objekten in einem Computerspiel genutzt. Dadurch wirkt das Spiel realistischer.
Eine Spielephysik (Physik-Engine) wird zum Simulieren der physikalischen Eigenschaften von Objekten in einem Computerspiel genutzt. Dadurch wirkt das Spiel realistischer.
Die Physik-Engine simuliert anhand physikalischer Gesetze und Regeln das Verhalten von Personen und Gegenständen in der Spielewelt. Zum Beispiel berechnet die Spielephysik Kollisionen von Gegenständen und deren Auswirkung. Um die Kollision zwischen zwei Gegenständen festzustellen werden meist komplexe Kollisions-Algorithmen verwendet.
Die Physik-Engine simuliert anhand physikalischer Gesetze das Verhalten von Gegenständen, Pesonen und anderen Objekte.  
Havok ist eine so genannte Physik-Engine. Jedoch ist sie keine Engine im eigentlichen Sinne, sondern vielmehr ein Software Development Kit, das Funktionen in die eigentliche Game Engine integriert. Havok unterstützt die Plattformen PC, PlayStation 2, GameCube und Xbox.
 
In folgenden Punkte unterscheidet sich die Spielephysik von realer Physik und physikalischen Simulationen realer pysikalischer Systeme:
 
* Die Simulation erfogt mittels diskreter Zeitschritte. Je kleiner die Zeitschritte sind, desto genauer und stabiler sind die Simulationsergebnisse. (Dies gilt meist auch für Simulationen realer pysikalischer Systeme).
* Die Simulationsergebnisse müssen natürlich oder zumindest glaubwürdig wirken, aber nicht real sein.
* Die Geschwindigkeit der Berechnungen ist wichtiger, als die Genauigkeit. Die negativen Auswirkungen einer geringen [[Framerate]] sind deutlich gravierender, als beispielsweise die ungenaue Platzierung von Objekte.  
* Die Stabilität der Berechnungsergebnisse ist dagegen wichtig. Beispielsweise muss in einer Weltraumsimulation ein Mond dauerhaft um seinen Planeten kreisen, solange keine äußere Kraft ihn zwingt, seine Bahn zu verlassen.
* Es können auch irreale physikalische Regeln simuliert werden. Beispielsweise können feste Körper in bestimmten Situatioen einander durchdringen oder es können bestimmte Gegenstände in bestimmten Situationen zu anderen Orten teleportiert werden.
* Falls feste Körper simuliert werden, muss allerdings verhindert werden, dass diese ineinander eindringen ([[Penetration]]) oder sich gar durchdringen ([[Tunneling]]) können.
 
==Grundannahmen für die Beispiele im GlossarWiki ==
 
Es sei ein geometrisches Objekt $g$ gegeben, das folgende Attribute habe:
 
* $r =  (r_x, r_y, r_z)$: Position im Raum (Längeneinheiten). Die Position bezieht sich immer auf einen bestimmten Punkt des Objektes $g$, {{zB}} den Schwerpunkt.
* $v = (v_x, v_y, v_z)$: Geschwindigkeit (''velocity'') in $x$-, $y$ und $z$-Richtung (Einheit: Längeneinheiten/s).
* $a = (a_x, a_y, a_z)$: Eigenbeschleunigung (''acceleration'') in $x$-, $y$ und $z$-Richtung wie beispielsweise durch einen Motor (Einheit: Längeneinheiten/s^2). Im Allgemeinen wirken Kräfte von außen auf ein Objekt, wie {{zB}} Anziehungskräfte. Diese werden nicht im Objekt gespeichert.
* $m$: Masse (Gewichtseinheiten)
 
Im Falle von zweidimensionalen Objekten entfällt jeweils die $z$-Koordinate.
 
Ein geometrisches Objekt kann auch rotieren. Dann hat es noch weitere Attribute, wie [[Winkelgeschwindigkeit]], [[Drehachse]] und [[Drehmatrix]].
In gewissen Situationen wird einem geometrischen Objekt auch eine Lebensdauer zugewiesen. Am Ende der Lebensdauer wird das zugehörige
Objekt automatisch gelöscht. Insbesondere im Fall von [[Partikelsystem]]en (Schnee, Regen, Nebel etc.) ist dieses Attribut wichtig. 
Die Neuberechnung Attribute aller im System vorhandener Objekte erfolgt in diskreten Schritten, {{dh}} die Attributwerte werden
nach jeweils einer gewissen, möglichst kurzen Zeitspanne neu berechnet.
 
==Physikalische Grundlagen==
 
Üblicherweise basiert eine Spielephysik auf den [[Bewegungsgesetzen von Newton]]<ref name="Kuchling (1976)">{{Quelle|Kuchling (1976)}}</ref>:
 
===Erstes Bewegungsgestz von Newton===
 
<i>Ein Körper verharrt in Ruhe oder in geradliniger, gleichförmiger Bewegung, solange er nicht durch einwikende Kräft gezungen wird,  
diesen Bewegungszustand zu ändern.</i><ref name="Kuchling (1976)"/>
 
==Quellen==
<references/>
#{{Quelle|Kowarschick (MMProg)}}


'''Hauptfunktionen:'''
[[Kategorie:Spielephysik]]
Charakter Animation mit so genannten Ragdoll-Animationen, Simulation von Fahrzeugbewegungen, Simulation von physikalischen Effekten in der Umwelt, wie z. B. umfallende Kisten.




[[Kategorie:Multimedia]]
[[Kategorie:Spielephysik]]

Aktuelle Version vom 6. November 2016, 12:23 Uhr

Dieser Artikel wird derzeit von einem Autor gründlich bearbeitet. Die Inhalte sind daher evtl. noch inkonsistent.

Dieser Artikel erfüllt die GlossarWiki-Qualitätsanforderungen nur teilweise:

Korrektheit: 1
(nur rudimäntär überprüft)
Umfang: 1
(zu gering)
Quellenangaben: 1
(fehlen großteils)
Quellenarten: 3
(gut)
Konformität: 5
(ausgezeichnet)

Definition

Eine Spielephysik (Physik-Engine) wird zum Simulieren der physikalischen Eigenschaften von Objekten in einem Computerspiel genutzt. Dadurch wirkt das Spiel realistischer. Die Physik-Engine simuliert anhand physikalischer Gesetze das Verhalten von Gegenständen, Pesonen und anderen Objekte.

In folgenden Punkte unterscheidet sich die Spielephysik von realer Physik und physikalischen Simulationen realer pysikalischer Systeme:

  • Die Simulation erfogt mittels diskreter Zeitschritte. Je kleiner die Zeitschritte sind, desto genauer und stabiler sind die Simulationsergebnisse. (Dies gilt meist auch für Simulationen realer pysikalischer Systeme).
  • Die Simulationsergebnisse müssen natürlich oder zumindest glaubwürdig wirken, aber nicht real sein.
  • Die Geschwindigkeit der Berechnungen ist wichtiger, als die Genauigkeit. Die negativen Auswirkungen einer geringen Framerate sind deutlich gravierender, als beispielsweise die ungenaue Platzierung von Objekte.
  • Die Stabilität der Berechnungsergebnisse ist dagegen wichtig. Beispielsweise muss in einer Weltraumsimulation ein Mond dauerhaft um seinen Planeten kreisen, solange keine äußere Kraft ihn zwingt, seine Bahn zu verlassen.
  • Es können auch irreale physikalische Regeln simuliert werden. Beispielsweise können feste Körper in bestimmten Situatioen einander durchdringen oder es können bestimmte Gegenstände in bestimmten Situationen zu anderen Orten teleportiert werden.
  • Falls feste Körper simuliert werden, muss allerdings verhindert werden, dass diese ineinander eindringen (Penetration) oder sich gar durchdringen (Tunneling) können.

Grundannahmen für die Beispiele im GlossarWiki

Es sei ein geometrisches Objekt $g$ gegeben, das folgende Attribute habe:

  • $r = (r_x, r_y, r_z)$: Position im Raum (Längeneinheiten). Die Position bezieht sich immer auf einen bestimmten Punkt des Objektes $g$, z. B. den Schwerpunkt.
  • $v = (v_x, v_y, v_z)$: Geschwindigkeit (velocity) in $x$-, $y$ und $z$-Richtung (Einheit: Längeneinheiten/s).
  • $a = (a_x, a_y, a_z)$: Eigenbeschleunigung (acceleration) in $x$-, $y$ und $z$-Richtung wie beispielsweise durch einen Motor (Einheit: Längeneinheiten/s^2). Im Allgemeinen wirken Kräfte von außen auf ein Objekt, wie z. B. Anziehungskräfte. Diese werden nicht im Objekt gespeichert.
  • $m$: Masse (Gewichtseinheiten)

Im Falle von zweidimensionalen Objekten entfällt jeweils die $z$-Koordinate.

Ein geometrisches Objekt kann auch rotieren. Dann hat es noch weitere Attribute, wie Winkelgeschwindigkeit, Drehachse und Drehmatrix. In gewissen Situationen wird einem geometrischen Objekt auch eine Lebensdauer zugewiesen. Am Ende der Lebensdauer wird das zugehörige Objekt automatisch gelöscht. Insbesondere im Fall von Partikelsystemen (Schnee, Regen, Nebel etc.) ist dieses Attribut wichtig.

Die Neuberechnung Attribute aller im System vorhandener Objekte erfolgt in diskreten Schritten, d. h. die Attributwerte werden nach jeweils einer gewissen, möglichst kurzen Zeitspanne neu berechnet.

Physikalische Grundlagen

Üblicherweise basiert eine Spielephysik auf den Bewegungsgesetzen von Newton[1]:

Erstes Bewegungsgestz von Newton

Ein Körper verharrt in Ruhe oder in geradliniger, gleichförmiger Bewegung, solange er nicht durch einwikende Kräft gezungen wird, diesen Bewegungszustand zu ändern.[1]

Quellen

  1. Kowarschick (WebProg): Wolfgang Kowarschick; Vorlesung „Web-Programmierung“; Hochschule: Hochschule Augsburg; Adresse: Augsburg; Web-Link; 2024; Quellengüte: 3 (Vorlesung)