Isometrie-Engine
Eine Isometrie-Engine ist eine bestimmte Form einer Grafik-Engine. Sie unterstützt die Darstellung bei Computerspielen. Mit ihr wird versucht, durch Isometrie Dreidimensionalität zu simulieren, ohne dabei auf eine rechenintensive echte 3D-Engine zurückzugreifen.
Beschreibung
{{#if: Isometrische Perspektive in Computerspielen|{{#ifexist:Isometrische Perspektive in Computerspielen|
|{{#if: |{{#ifexist:{{{2}}}|
|{{#if: |{{#ifexist:{{{3}}}|
|}}|}}|}}|}}|}}|Einbindungsfehler: Die Vorlage Hauptartikel benötigt immer mindestens ein Argument.}}
Um den Eindruck von Dreidimensionalität zu erzeugen, werden die eigentlich quadratischen (manchmal auch sechseckigen) Felder einer Karte perspektivisch verzerrt dargestellt, allerdings ohne räumliche Verkürzung, so dass alle Felder unabhängig von der Entfernung zum Blickpunkt des Spielers dieselbe Form haben. (Siehe auch: Parallelprojektion) Somit können sie einfach durch zweidimensionale (Raster-)Grafiken dargestellt werden.
Eine Isometrie-Engine besteht meist aus vier Komponenten:
- Tile Plotter
- Übersetzung der Koordinaten der Isometrie-Karte in die Koordinaten des Bildschirms
- Mouse Mapper
- Übersetzung der Koordinaten des Bildschirms (screen space) in die Koordinaten der isometrischen Karte (game space)
- Tile Walker
- Ermöglicht die Bewegung auf der Isometrie-Karte
- Kacheln
- Texturen, die auf der Karte gezeichnet werden
Isometrie-Karte
Es gibt verschiedene Arten von Isometrie-Karten:
- Staggered Map
- Diamond Map
Sie unterscheiden sich in ihrer Form, d. h. der Anordnung und Nummerierung der Kacheln auf dem Bildschirm.
Grundsätzlich unterscheidet man auch zwischen 45°-Isometrie-Engines und 30°-Isometrie-Engines. Das hat allerdings keine Auswirkung auf die verschiedenen Arten der Karten, sondern nur auf die Darstellung.
Scrolling
Damit bezeichnet man die Möglichkeit, die virtuelle Kamera über die Karte bewegen zu können, d. h. Bereiche, die nicht auf dem Bildschirm dargestellt werden können, weil die Karte größer als der Bildschirm ist, können durch Verschieben des Kartenausschnittes dargestellt werden.
Wegfindung
Damit sich eine Spielfigur auf dieser Karte bewegen kann, muss sie ein gewisses Maß an künstlicher Intelligenz besitzen. Sie muss Gegenständen ausweichen können und den optimalen Weg von einem Start- zu einem Zielpunkt finden. Dafür gibt es spezielle Wegfindungsalgorithmen wie den A*-Algorithmus.
Anwendbarkeit
Die meisten Spiele der neueren Generation sind mit einer 3D-Engine ausgestattet, da sich damit neue und verbesserte grafische und spielerische Möglichkeiten ergeben. Im professionellen Bereich ist die Verwendung von Isometrie- und allgemein Tileengines zunehmend unüblich. Dennoch gibt es den Vorteil, dass die benötigte Rechenleistung bei Isometrie-Engines geringer ist als bei 3D-Engines.
Literatur
- Vogler, Benedikt: <templatestyles src="Webarchiv/styles.css" />{{#if:20160426003702
| {{#ifeq: 20160426003702 | *
| {{#if: Erstellung einer auf Blöcken aufbauenden Spiel-Engine in Java | {{#invoke:WLink|getEscapedTitle|Erstellung einer auf Blöcken aufbauenden Spiel-Engine in Java}} | {{#invoke:Webarchiv|getdomain|https://wurfelengine.net/downloads/Lernleistung.pdf}} }} (Archivversionen)
| {{#iferror: {{#time: j. F Y|20160426003702}}
| {{#if: || }}Der Wert des Parameters {{#if: wayback | wayback | Datum }} muss ein gültiger Zeitstempel der Form YYYYMMDDHHMMSS sein!
| {{#if: Erstellung einer auf Blöcken aufbauenden Spiel-Engine in Java | {{#invoke:WLink|getEscapedTitle|Erstellung einer auf Blöcken aufbauenden Spiel-Engine in Java}} | {{#invoke:Webarchiv|getdomain|https://wurfelengine.net/downloads/Lernleistung.pdf}} }} {{#ifeq: | [] | [ | ( }}{{#if: {{#if: | {{{archiv-bot}}} | }} | des Vorlage:Referrer }} vom {{#time: j. F Y|20160426003702}} im Internet Archive{{#if: PDF; 8,4 MB | ; PDF; 8,4 MB }}{{#ifeq: | [] | ] | ) }}
}}
}}
| {{#if:
| {{#iferror: {{#time: j. F Y|{{{webciteID}}}}}
| {{#switch: {{#invoke:Str|len|{{{webciteID}}}}}
| 16= {{#if: Erstellung einer auf Blöcken aufbauenden Spiel-Engine in Java | {{#invoke:WLink|getEscapedTitle|Erstellung einer auf Blöcken aufbauenden Spiel-Engine in Java}} | {{#invoke:Webarchiv|getdomain|https://wurfelengine.net/downloads/Lernleistung.pdf}} }} {{#ifeq: | [] | [ | ( }}{{#if: {{#if: | {{{archiv-bot}}} | }} | des Vorlage:Referrer }} vom {{#time: j. F Y| 19700101000000 + {{#expr: floor {{#expr: {{#invoke:Str|sub|{{{webciteID}}}|1|10}}/86400}} }} days}} auf WebCite{{#if: PDF; 8,4 MB | ; PDF; 8,4 MB }}{{#ifeq: | [] | ] | ) }}
| 9 = {{#if: Erstellung einer auf Blöcken aufbauenden Spiel-Engine in Java | {{#invoke:WLink|getEscapedTitle|Erstellung einer auf Blöcken aufbauenden Spiel-Engine in Java}} | {{#invoke:Webarchiv|getdomain|https://wurfelengine.net/downloads/Lernleistung.pdf}} }} {{#ifeq: | [] | [ | ( }}{{#if: {{#if: | {{{archiv-bot}}} | }} | des Vorlage:Referrer}} vom {{#time: j. F Y| 19700101000000 + {{#expr: floor {{#expr: {{#invoke:Str|sub|{{#invoke:Expr|base62|{{{webciteID}}}}}|1|10}}/86400}} }} days}} auf WebCite{{#if: PDF; 8,4 MB | ; PDF; 8,4 MB }}{{#ifeq: | [] | ] | ) }}
| #default= Der Wert des Parameters {{#if: webciteID | webciteID | ID }} muss entweder ein Zeitstempel der Form YYYYMMDDHHMMSS oder ein Schüsselwert mit 9 Zeichen oder eine 16-stellige Zahl sein!{{#if: || }}
}}
| c|{{{webciteID}}}}} {{#if: Erstellung einer auf Blöcken aufbauenden Spiel-Engine in Java | {{#invoke:WLink|getEscapedTitle|Erstellung einer auf Blöcken aufbauenden Spiel-Engine in Java}} | {{#invoke:Webarchiv|getdomain|https://wurfelengine.net/downloads/Lernleistung.pdf}} }} ({{#if: {{#if: | {{{archiv-bot}}} | }} | des Vorlage:Referrer}} vom {{#time: j. F Y|{{{webciteID}}}}} auf WebCite{{#if: PDF; 8,4 MB | ; PDF; 8,4 MB }}{{#ifeq: | [] | ] | ) }}
}}
| {{#if:
| Vorlage:Webarchiv/Today
| {{#if:
| Vorlage:Webarchiv/Generisch
| {{#if: Erstellung einer auf Blöcken aufbauenden Spiel-Engine in Java | {{#invoke:WLink|getEscapedTitle|Erstellung einer auf Blöcken aufbauenden Spiel-Engine in Java}} | {{#invoke:Webarchiv|getdomain|https://wurfelengine.net/downloads/Lernleistung.pdf}} }}
}}}}}}}}{{#if:
| Vorlage:Webarchiv/archiv-bot
}}{{#invoke:TemplatePar|check
|all = url=
|opt = text= wayback= webciteID= archive-is= archive-today= archiv-url= archiv-datum= ()= archiv-bot= format= original=
|cat = Wikipedia:Vorlagenfehler/Vorlage:Webarchiv
|errNS = 0
|template = Vorlage:Webarchiv
|format = *
|preview = 1
}}{{#ifexpr: {{#if:20160426003702|1|0}}{{#if:|+1}}{{#if:|+1}}{{#if:|+1}}{{#if:|+1}} <> 1
| {{#if: || }}{{#invoke:TemplUtl|failure| Fehler bei Vorlage:Webarchiv: Genau einer der Parameter 'wayback', 'webciteID', 'archive-today', 'archive-is' oder 'archiv-url' muss angegeben werden.|1}}
}}{{#if:
| {{#switch: {{#invoke:Webarchiv|getdomain|{{{archiv-url}}}}}
| web.archive.org =
{{#if: || }}{{#invoke:TemplUtl|failure| Fehler bei Vorlage:Webarchiv: Im Parameter 'archiv-url' wurde URL von Internet Archive erkannt, bitte Parameter 'wayback' benutzen.|1}}
| webcitation.org =
{{#if: || }}{{#invoke:TemplUtl|failure| Fehler bei Vorlage:Webarchiv: Im Parameter 'archiv-url' wurde URL von WebCite erkannt, bitte Parameter 'webciteID' benutzen.|1}}
| archive.today |archive.is |archive.ph |archive.fo |archive.li |archive.md |archive.vn =
{{#if: || }}{{#invoke:TemplUtl|failure| Fehler bei Vorlage:Webarchiv: Im Parameter 'archiv-url' wurde URL von archive.today erkannt, bitte Parameter 'archive-today' benutzen.|1}}
}}{{#if:
| {{#iferror: {{#iferror:{{#invoke:Vorlage:FormatDate|Execute}}|}}
| {{#if: || }}{{#invoke:TemplUtl|failure| Fehler bei Vorlage:Webarchiv: Der Wert des Parameter 'archiv-datum' ist ungültig oder hat ein ungültiges Format.|1}}
| }}
| {{#if: || }}{{#invoke:TemplUtl|failure| Fehler bei Vorlage:Webarchiv: Der Pflichtparameter 'archiv-datum' wurde nicht angegeben.|1}}
}}
| {{#if:
| {{#if: || }}{{#invoke:TemplUtl|failure| Fehler bei Vorlage:Webarchiv: Der Parameter 'archiv-datum' ist nur in Verbindung mit 'archiv-url' angebbar.|1}}
}}
}}{{#if:{{#invoke:URLutil|isHostPathResource|https://wurfelengine.net/downloads/Lernleistung.pdf}}
|| {{#if: || }}
}}{{#if: Erstellung einer auf Blöcken aufbauenden Spiel-Engine in Java
| {{#if: {{#invoke:WLink|isBracketedLink|Erstellung einer auf Blöcken aufbauenden Spiel-Engine in Java}}
| {{#if: || }}
}}
| {{#if: || }}
}}{{#switch: PDF; 8,4 MB
|addlarchives|addlpages= {{#if: || }}{{#if: 1 |}}{{#invoke:TemplUtl|failure| Fehler bei Vorlage:Webarchiv: enWP-Wert im Parameter 'format'.|1}}
}}{{#ifeq: {{#invoke:Str|find|https://wurfelengine.net/downloads/Lernleistung.pdf%7Carchiv}} |-1
|| {{#ifeq: {{#invoke:Str|find|{{#invoke:Str|cropleft|https://wurfelengine.net/downloads/Lernleistung.pdf%7C4}}%7Chttp}} |-1
|| {{#switch: {{#invoke:Webarchiv|getdomain|https://wurfelengine.net/downloads/Lernleistung.pdf }}
| abendblatt.de | daserste.ndr.de | inarchive.com | webcitation.org =
| #default = {{#if: || }}{{#if: 1 |}}{{#invoke:TemplUtl|failure| Fehler bei Vorlage:Webarchiv: Archiv-URL im Parameter 'url' anstatt URL der Originalquelle. Entferne den vor der Original-URL stehenden Mementobestandteil und setze den Archivierungszeitstempel in den Parameter 'wayback', 'webciteID', 'archive.today' oder 'archive-is' ein, sofern nicht bereits befüllt.|1}}
}}
}}
}}, 2013, Schriftlicher Arbeitsbericht über eine isometrische Game-Engine
- Seiten mit defekten Dateilinks
- Wikipedia:Vorlagenfehler/Vorlage:Webarchiv
- Wikipedia:Vorlagenfehler/Vorlage:Webarchiv/Archiv-URL
- Wikipedia:Vorlagenfehler/Parameter:URL
- Wikipedia:Vorlagenfehler/Parameter:Linktext
- Wikipedia:Vorlagenfehler/Vorlage:Webarchiv/Linktext fehlt
- Computerspiel-Entwicklungssystem
- Computergrafik
- 3D-Grafiksoftware
- Computerspielegrafik