Einfaches Terrain-Rendering

11

Aus irgendeinem Grund kann ich kein gutes Beispiel für das Rendern von Gelände finden, wie in "nackten Knochen". Ich lese Einführung in die Spielprogrammierung mit DX10, und ich habe einige andere Tutorials gesehen ... aber alle sind komplizierte Klassen mit VIELEN Dingen, die unnötig sind, und tbh verwirrt nur einen Anfänger wie mich. Wie Raserteks Tutorials sind fantastisch, aber es ist so viel Code und Klassen, es ist sehr schwierig, den "3D" -Teil zu verstehen, wenn Sie so viele andere Klassen haben.

Ich bin nur auf der Suche nach dem grundlegendsten Terrain-Rendering (mit einer Höhenkarte ... oder was hast du).

Es muss nicht einmal eine Kamera oder Bewegungssteuerung haben, zum Teufel kann es nur eine Farbe haben. Ich versuche nur, zuerst alles zu verstehen. Weiß jemand, wo ich eine Probe davon finden könnte? oder zum Teufel, wenn jemand bereit wäre, eine einfache Probe seiner eigenen zu liefern, wäre ich mega dankbar.

Versteh mich nicht falsch, das Buch ist großartig ... und ich verstehe die Funktionen, aber die Art und Weise, wie die Klassen zusammengestellt sind ... es macht es verwirrend, "was wohin geht".

Bearbeiten: Ich habe einige Direct X 9-Geländedemos / -beispiele gesehen ... aber DX9 wie WAYYY unterscheidet sich nicht von DX10 (wenn ja, möchte ich deshalb keine Zeit damit verschwenden). Ich könnte mich jedoch irren.


quelle

Antworten:

9

D3D9 unterscheidet sich aus API-Sicht erheblich von D3D10, aber die zugrunde liegenden Konzepte sind sehr ähnlich. Jedes Terrain-Rendering-Beispiel in D3D9 ( wie dieses ) funktioniert in D3D10 einwandfrei. Sie müssen nur die API-Aufrufe übersetzen, was nicht so schwierig sein sollte. Da die Techniken zum Rendern von Terrain in keiner Weise API-spezifisch sind, können Sie sich auch ein Tutorial ansehen, das für einen OpenGL-Benutzer wie dieses gedacht ist .

Beide Artikel veranschaulichen sehr einfaches, auf Hieghtmaps basierendes Terrain mit einfachen Gittern.


quelle
2
Ich würde dieser Antwort auch dann zustimmen, wenn sie in OpenGL implementiert wäre. Das Konzept ist das, worüber Sie sich hier Sorgen machen müssen. Ich würde definitiv vermeiden, Code zu finden, über den Sie direkt kopieren können. Wenn Sie nicht verstehen, was der Code sagt, ist das ein guter Hinweis, dass Sie ihn nicht kopieren sollten! :) Wenn du das in DX9 hast, kommst du dir allerdings viel näher. Sobald Sie verstanden haben, was die Algorithmen in DX9 tun, ist die Übersetzung in DX10 eine gute Übung, da Sie dann wissen müssen, was los ist!
Brandon
Das ist der Grund, warum ich versuche, alles zu verstehen, bevor ich weitermache, aber Mann ... DX10 hat so viel Initialisierungsmaterial, dass es sehr verwirrend werden kann.
+1 für Chad Vernons Artikel, da er mir vor einiger Zeit wirklich geholfen hat, mein eigenes auf Höhenkarten basierendes Terrain zu verstehen und umzusetzen. Ein Wort der Warnung: Die Formatierung des Codes auf der Website ist manchmal zweifelhaft (für mich war es sowieso), da einige --xdavon als -xein ganz anderes Ergebnis angesehen werden.
Ray Dey