Du bist nicht angemeldet.

Stilllegung des Forums
Das Forum wurde am 05.06.2023 nach über 20 Jahren stillgelegt (weitere Informationen und ein kleiner Rückblick).
Registrierungen, Anmeldungen und Postings sind nicht mehr möglich. Öffentliche Inhalte sind weiterhin zugänglich.
Das Team von spieleprogrammierer.de bedankt sich bei der Community für die vielen schönen Jahre.
Wenn du eine deutschsprachige Spieleentwickler-Community suchst, schau doch mal im Discord und auf ZFX vorbei!

Werbeanzeige

Pilzschaf

Frischling

  • »Pilzschaf« ist der Autor dieses Themas

Beiträge: 43

Wohnort: Freiburg

  • Private Nachricht senden

1

14.05.2013, 19:40

HeightMap Umsetzung

Hallo, ich plane, das Terrain meines Spiels in einer Heightmap zu speichern, habe aber 3 Fragen.
1.Wie viele verschiedene Grauabstufungen sind in einer Heightmap möglich (256 sind ja rgb, aber gibt es nicht eine Möglichkeit mehr Abstufungen zu erreichen (oder Kommazahlen???)).
2.Was eignet sich eher, dass die Texel der Heightmap die Höhe einzelner Quadrate auf dem Terrain symbolisieren oder, dass die Texel einzelne Vertizes repräsentieren und ich dann zwischen vier Vertizes ein Rechteck ( 2 Dreiecke) einfüge. Ich tendiere ja für die zweite Variante aber wollte trotzdem mal nachfragen ;)
3.Wie viele Zentimeter sollte ein Texel der Heightmap repräsentieren, also 10 cm oder mehr/weniger

Zitat

"Der Code ist schon schlecht."
"Ist doch Geschmackssache."
"Naja, es sind GOTOs drin."
"Oh."

BlueCobold

Community-Fossil

Beiträge: 10 738

Beruf: Teamleiter Mobile Applikationen & Senior Software Engineer

  • Private Nachricht senden

2

14.05.2013, 20:17

1) 256 sind nicht RGB, sondern Graustufen. RGB bietet 256³, also 16.7 Mio.
2) Die erste Variante macht keinen großen Sinn, außer es soll aussehen wie Minecraft
3) Das hängt wohl mal stark davon ab, was Dein Spiel sein soll, wie viele Details Du brauchst und wie viele Du rendern kannst und willst.
Teamleiter von Rickety Racquet (ehemals das "Foren-Projekt") und von Marble Theory

Willkommen auf SPPRO, auch dir wird man zu Unity oder zur Unreal-Engine raten, ganz bestimmt.[/Sarkasmus]

David_pb

Community-Fossil

Beiträge: 3 886

Beruf: 3D Graphics Programmer

  • Private Nachricht senden

3

14.05.2013, 20:17

1. Du kannst ja auch 16- oder 32-Bit Graustufendaten nehmen.
2. Vertices, liegt aber im Endeffekt bei dir
3. Auch das liegt ganz bei dir. Je nachdem wie viel Detail du benötigst.
@D13_Dreinig

Pilzschaf

Frischling

  • »Pilzschaf« ist der Autor dieses Themas

Beiträge: 43

Wohnort: Freiburg

  • Private Nachricht senden

4

14.05.2013, 20:51

Also ich hätte gerne eine Karte mit vielen details, sind 10 cm da dann gut? Es sollte natürlich noch renderbar sein, aber kann auch etwas anspruchsvoll sein, denn wenn das Spiel fertig ist sind die grafikkarten ja auch etwas besser ;)

Zitat

"Der Code ist schon schlecht."
"Ist doch Geschmackssache."
"Naja, es sind GOTOs drin."
"Oh."

BlueCobold

Community-Fossil

Beiträge: 10 738

Beruf: Teamleiter Mobile Applikationen & Senior Software Engineer

  • Private Nachricht senden

5

14.05.2013, 21:02

Es hängt noch immer von Deinem Spiel ab. Ist es nur 100x100 Meter groß? Dann wären das 1.000.000 Vertices und 2.000.000 Polygone. Schon nicht wenig für eine Größe, die man als normaler Mensch üblicherweise im Blickfeld hat.
Ich würde Dir raten, dass Du Dich erstmal generell mit dem Thema 3D und Spiele beschäftigst, denn ich kenne kein Spiel, wo man auf einem Quadratmeter Spielfläche 200 Polygone bräuchte, um Details darzustellen.
Teamleiter von Rickety Racquet (ehemals das "Foren-Projekt") und von Marble Theory

Willkommen auf SPPRO, auch dir wird man zu Unity oder zur Unreal-Engine raten, ganz bestimmt.[/Sarkasmus]

Beiträge: 1 223

Wohnort: Deutschland Bayern

Beruf: Schüler

  • Private Nachricht senden

6

15.05.2013, 16:13

Wenn man so hohe Auflösung erreichen willst, kommt man in der Regel nicht darum herum, nur nahe bei der Kamera mit einer solchen Auflösung zu arbeiten und mit steigender Entfernung zur Kameraposition die Auflösung zu verschlechtern. (LOD)
Bei Moderne Grafikkarten könnte da wahrscheinlich auch Tessellation sehr hilfreich sein.

Diese Paper welches ich gerade zufällig gefunden habe siehen zb. sehr interessant aus:
http://dice.se/publications/adaptive-har…n-tessellation/
http://vterrain.org/LOD/Papers/

Für eine einfachere Implementierung kannst du mal hier schauen:
http://wiki.delphigl.com/index.php/shader_Terrain_GPU4
http://wiki.delphigl.com/index.php/Tutorial_Terrain1

Pilzschaf

Frischling

  • »Pilzschaf« ist der Autor dieses Themas

Beiträge: 43

Wohnort: Freiburg

  • Private Nachricht senden

7

15.05.2013, 20:50

Textdokument anstatt Heightmap

Ich habe noch eine Idee, wäre es nicht schneller, anstatt einer Heightmap ein Textdokument zu schreiben. In jeder Zeile der Wert eines Vertex.
Meine eigentliche Frage: Was geht schneller, einen Wert aus einem Textdokument zu lesen oder die Farbe eines Pixels zu bestimmen.

Die Übersichtlichkeit ist mir dabei nicht so wichtig, da ich versuchen werde, dass mein Mapeditor die Heightmap selbst erstellen soll, ich diese also fast nicht zu Gesicht bekommen werde.

Zitat

"Der Code ist schon schlecht."
"Ist doch Geschmackssache."
"Naja, es sind GOTOs drin."
"Oh."

BlueCobold

Community-Fossil

Beiträge: 10 738

Beruf: Teamleiter Mobile Applikationen & Senior Software Engineer

  • Private Nachricht senden

8

15.05.2013, 21:32

Es ist völlig egal, ob Du ein Pixel liest oder ein Text-Zeichen. Beides sind einfache Bytes. Wenn Du aber meinst, dass es für Dich einfacher ist 1000x1000 Textzeilen zu schreiben statt einfach ein Bild zu malen... Deine Entscheidung ;)
Teamleiter von Rickety Racquet (ehemals das "Foren-Projekt") und von Marble Theory

Willkommen auf SPPRO, auch dir wird man zu Unity oder zur Unreal-Engine raten, ganz bestimmt.[/Sarkasmus]

Werbeanzeige